Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: CHIP-SPV/chipStar
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: CHIP-SPV/chipStar
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: syncQueues
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 9 commits
  • 11 files changed
  • 1 contributor

Commits on Dec 9, 2025

  1. Refactor queue synchronization to use in-order command lists and mark…

    …er events
    
    Replace LastEvent tracking with marker-based queue synchronization:
    - Remove LastEvent_ member and updateLastEvent() from Queue class
    - Add addDependenciesQueueSync() template that creates marker events in
      other queues for implicit synchronization between blocking/default streams
    - Make query() pure virtual, backends implement using native sync APIs
    
    Level Zero changes:
    - Use ZE_COMMAND_QUEUE_FLAG_IN_ORDER for command queues
    - Implement query() with zeCommandListHostSynchronize zero-timeout check
    - Move event maintenance from EventMonitor to on-demand in getEventFromPool()
    - Add createEventDedicated() for callback events (workaround for PVC driver
      issue with event reuse between immediate and regular command lists)
    - Get dependencies before locking CommandListMtx to avoid deadlock
    - Reduce event pool size from 1000 to 10
    
    OpenCL changes:
    - Track IsEmptyQueue_ to handle query() for never-used queues
    - Implement addDependenciesQueueSync() with cl_event markers
    - Rework callback mechanism to use marker enqueued from callback thread
      instead of user events (workaround for Intel driver bug)
    
    Other:
    - Add checkEvents() virtual method to Context for event processing
    - Fix Device destructor to avoid holding multiple locks simultaneously
    - Remove L0CollectEventsTimeout env var (no longer needed)
    - TestBufferDevAddr now conditional on OpenCL backend
    pvelesko committed Dec 9, 2025
    Configuration menu
    Copy the full SHA
    587b91a View commit details
    Browse the repository at this point in the history

Commits on Dec 10, 2025

  1. Configuration menu
    Copy the full SHA
    df1d8e0 View commit details
    Browse the repository at this point in the history

Commits on Dec 11, 2025

  1. ICL for callbacks

    pvelesko committed Dec 11, 2025
    Configuration menu
    Copy the full SHA
    592b95b View commit details
    Browse the repository at this point in the history
  2. use try_lock

    pvelesko committed Dec 11, 2025
    Configuration menu
    Copy the full SHA
    95c90c2 View commit details
    Browse the repository at this point in the history
  3. revert dedicated event pool

    pvelesko committed Dec 11, 2025
    Configuration menu
    Copy the full SHA
    44f3c5f View commit details
    Browse the repository at this point in the history
  4. Remove unused createEventDedicated function

    Callbacks now use shared event pool via createEventShared, so the
    dedicated event creation function is no longer needed.
    pvelesko committed Dec 11, 2025
    Configuration menu
    Copy the full SHA
    c9d9aa0 View commit details
    Browse the repository at this point in the history

Commits on Dec 14, 2025

  1. Add clFlush to ensure marker event submission for cross-queue synchro…

    …nization
    
    This change flushes the other queue before using the marker event as a dependency, addressing synchronization issues on certain OpenCL drivers (e.g., Arm Mali). This ensures that the marker event is properly submitted and can be utilized across different queues.
    pvelesko committed Dec 14, 2025
    Configuration menu
    Copy the full SHA
    239ef4b View commit details
    Browse the repository at this point in the history
  2. Add clFlush to ensure callback execution on ARM Mali drivers

    This update introduces a call to clFlush in the addCallback method to guarantee that callbacks are triggered correctly on drivers that require explicit flushing, such as ARM Mali. This change enhances the reliability of event callback execution in the OpenCL backend.
    pvelesko committed Dec 14, 2025
    Configuration menu
    Copy the full SHA
    5c8c8ce View commit details
    Browse the repository at this point in the history

Commits on Dec 15, 2025

  1. Fix callback failures by tracking GpuReady and using dedicated events

    Restore createEventDedicated() and use dedicated events for callbacks
    to avoid Intel driver bug. Track GpuReady event so event monitor can
    properly check completion status. Remove unused dedicated callback
    command list code.
    pvelesko committed Dec 15, 2025
    Configuration menu
    Copy the full SHA
    860665e View commit details
    Browse the repository at this point in the history
Loading