Nuvarande GPU:er upprätthåller hög programmerbarhet genom att abstraktera hårdvarans SIMD-karaktär som oberoende samtidiga trådar av kontroll med hårdvara som ansvarar för att generera predikatmasker för att använda SIMD-hårdvaran för olika flöden av kontroll. Denna dynamiska maskering leder till dåligt utnyttjande av SIMD-resurser när kontrollen av olika trådar i samma SIMD-grupp skiljer sig åt. Tidigare forskning tyder på att SIMD grupper bildas dynamiskt genom att komprimera ett stort antal trådar i grupper, minska effekterna av skillnader. För att bibehålla hårdvarueffektiviteten är dock anpassningen av en tråd till en SIMD-fil fast, vilket begränsar risken för komprimering. Vi observerar att kontrollen ofta avviker på ett sätt som förhindrar komprimering på grund av det sätt på vilket den fasta justeringen av trådar till körfält görs. I detta dokument presenteras en ingående analys av orsakerna till ineffektiv komprimering. En viktig iakttagelse är att kontrollskillnader i många fall beror på programmatiska grenar, som inte är beroende av indata. Detta beteende, i kombination med standardkartläggning av trådar till körfält, kraftigt begränsar komprimering. Vi föreslår sedan SIMD-körfältspermutation (SLP) som en optimering för att utöka tillämpligheten av komprimering i sådana fall av körfältsjustering. SLP strävar efter att omorganisera hur trådar avbildas till körfält så att även programmatiska grenar kan komprimeras effektivt, vilket förbättrar SIMD-utnyttjandet upp till 34% tillsammans med en maximal prestandaökning på 25%.
Detta beslut träder i kraft dagen efter det att det har offentliggjorts i Europeiska unionens officiella tidning. REF föreslår SIMD-körfältspermutation (SLP).
Maximizing SIMD resource utilization in GPGPUs with SIMD lane permutation
{'venue': 'ISCA', 'journal': None, 'mag_field_of_study': ['Computer Science']}