Grace or Hopper? A Case Study of Wait-Free Concurrent Queues on the NVIDIA Grace Hopper GH200 Superchip
Abstract
The NVIDIA GH200 Grace Hopper Superchip combines a Grace CPU and a Hopper GPU in a coherent CPU–GPU system whose architectural differences can expose different bottlenecks for device-local concurrent queues. Thus, this work leverages the CPU-based wait-free queue by Yang and Mellor-Crummey (YMC) as the basis for a case study comparing their CPU implementation, executed by Grace CPU threads, with our GPU adaptation of the same algorithm, executed by Hopper GPU threads using a pre-allocated segment pool before kernel launch. The implementations are evaluated separately; no queue is shared between Grace and Hopper. Overall, the evaluated configurations exhibit complementary tradeoffs. CPU-YMC provides lower aggregate throughput but requires no fixed pool size, whereas GPU-YMC provides higher throughput with sufficient GPU parallelism and pool capacity. At the maximum evaluated parallelism and with sufficient pool capacity, GPU-YMC achieves approximately 100 × the aggregate throughput of CPU-YMC, counting only operations that return ok. These measurements provide device-local baselines for future inter-device queue evaluations.