Boost.Interprocess
Boost.Interprocess provides portable inter-process communication (IPC) primitives: shared
Boost.Interprocess provides portable inter-process communication (IPC) primitives: shared
Overview
Global memory is fast in aggregate but every access still pays a round trip through the memory system; when several threads in a block need the same piece of data, or a thread needs to hand a value to another thread in the same block, routing through global memory to do it wastes bandwidth on traffic that never needed to leave the chip. Shared memory exists for exactly that: a small, explicitly-managed, on-chip scratchpad that every thread in a block can read and write, fast enough to use as a staging area rather than just a cache.