Abstrakt. Vi beskriver utformningen och genomförandet av metoder för att stödja resonemang om dataraser i GPU-kärnor där andra konstruktioner än standardbarriärens primitiva används för synkronisering. Vid en ytterlighet anser vi att kärnor som utnyttjar implicit, grovkornig synkronisering mellan trådar i samma warp, en funktion som tillhandahålls av många arkitekturer. På den andra ytterligheten anser vi att kärnor som minskar eller undviker barriärsynkronisering genom användning av atomära operationer. Vi diskuterar designbeslut i samband med att tillhandahålla stöd för warps och atomer i GPUVerify, ett formellt verifieringsverktyg för OpenCL- och CUDA-kärnor. Vi utvärderar den praktiska effekten av dessa designbeslut med hjälp av en stor uppsättning riktmärken, som visar att varp kan stödjas på ett skalbart sätt, att en grov abstraktion räcker för ett effektivt resonemang om de flesta praktiska användningsområden för atomisk verksamhet, och att en ny, förfinad abstraktion fångar upp ett viktigt mönster där atomisk verksamhet används för att beräkna unika matrisindex. Vår utvärdering avslöjade två tidigare okända fel i allmänt tillgängliga referenssviter.
Bardsley m.fl. föreslå ytterligare stöd i GPUVerifiera för resonemang om GPU-kärnor där warps och atomoperationer används för synkronisering REF.
Warps and Atomics: Beyond Barrier Synchronization in the Verification of GPU Kernels
{'venue': 'NASA Formal Methods', 'journal': None, 'mag_field_of_study': ['Computer Science']}