Den massiva parallella arkitekturen gör det möjligt för grafikbearbetningsenheter (GPU) att öka prestandan för ett brett spektrum av applikationer. Inledningsvis använder GPU bara scratchpad minne som on-chip minne. Nyligen, för att bredda omfattningen av applikationer som kan påskyndas av GPU:er, har GPU-leverantörer använt caches i kombination med scratchpad minne som on-chip minne i de nya generationerna av GPU:er. Tyvärr, GPU caches står inför många prestandautmaningar som uppstår på grund av överdriven tråd strid för cache resurs. Cache bypassing, där minnesförfrågningar selektivt kan kringgå cache, är en lösning som kan bidra till att minska problemet med cacheresursinnehåll. I detta dokument föreslår vi samordnade statiska och dynamiska cache förbikopplingar för att förbättra applikationens prestanda. Vid kompileringstid identifierar vi de globala belastningar som indikerar starka preferenser för cachelagring eller förbikoppling genom profilering. För resten globala laster, har vår dynamiska cache förbikoppling flexibiliteten att cache bara en bråkdel av trådar. I CUDA-programmeringsmodellen är trådarna uppdelade i arbetsenheter som kallas trådblock. Vår dynamiska förbifartsteknik modulerar förhållandet mellan trådblock som cache eller bypass vid körtid. Vi väljer att modulera på trådblocksnivå för att undvika problem med minnesskillnader. Vår strategi kombinerar kompilerings-tidsanalys som bestämmer cache- eller bypassinställningarna för globala laster med run-time-hantering som justerar förhållandet mellan trådblock som cache eller bypass. Vår samordnade statiska och dynamiska cache förbifartsteknik uppnår upp till 2,28X (genomsnittlig 1,32X) prestandaupphastighet för en mängd olika GPU-applikationer.
Xie och Al. I REF föreslås en förbikopplingsmekanism på trådblocksnivån.
Coordinated static and dynamic cache bypassing for GPUs
{'venue': '2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA)', 'journal': '2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA)', 'mag_field_of_study': ['Computer Science']}