What portable OpenCL mechanisms exist for measuring kernel-internal memory bandwidth saturation across heterogeneous devices?
Goal Identify a vendor‑agnostic way to detect when a kernel saturates global or local memory bandwidth, using only standard OpenCL APIs or widely supported extensions. Constraints and uncertainty The core OpenCL profiling API ( clGetEventProfilingInfo ) reports only queue‑level command timestamps, not internal pipeline stalls or memory‑subsystem contention.