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
  • 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.

« Unroll macro

Powered by Documenter.jl and the Julia Programming Language.

Settings


This document was generated with Documenter.jl version 1.8.1 on Friday 14 February 2025. Using Julia version 1.11.3.