KernelAbstractions.jl
  • Home
  • Quickstart
  • Writing kernels
  • Examples
    • Memcopy
    • Memcopy with static NDRange
    • Naive Transpose
    • Measuring performance
    • Matmul
    • NUMA-aware SAXPY
    • Atomic operations with Atomix.jl
  • API
  • Extras
    • Unroll macro
    • Debugging POCL compilation
  • Notes for implementations
    • Semantics of KernelAbstractions.synchronize
Version
  • Notes for implementations
  • Notes for implementations


Notes for backend implementations

Semantics of KernelAbstractions.synchronize

KernelAbstractions.synchronize is required to be cooperative, with that we mean it can not block inside an external library, but instead must implement a cooperative wait that will yield the current task and return the scheduling slice to the Julia runtime.

This is of particular import to allow for overlapping of communication and computation with MPI.

« Debugging POCL compilation

Powered by Documenter.jl and the Julia Programming Language.

Settings


This document was generated with Documenter.jl version 1.17.0 on Friday 17 July 2026. Using Julia version 1.12.6.