Den senaste tidens designskifte mot flerkärniga processorer har gett upphov till en betydande mängd forskning inom området programparallalisering. Den framtida förekomsten av kärnor på ett enda chip kräver programmerare och kompilator intervention för att öka mängden parallella arbete möjligt. Mycket av det senaste arbetet har fallit in i områden av grov-korn parallellisering: nya programmeringsmodeller och olika sätt att utnyttja trådar och data nivå parallellism. Detta arbete fokuserar på en kompletterande riktning, förbättra prestanda genom automatiserad finkornig parallellisering. Den största svårigheten för att uppnå en prestanda dra nytta av finkornig parallellism är distributionen av dataminnesåtkomst över datacache för varje kärna. Dåliga val i placeringen av dataåtkomster kan leda till ökade minnesstånd och lågt resursutnyttjande. Vi föreslår en profilstyrd metod för att partitionera minnesåtkomst över distribuerade datacaches. För det första bestämmer en profil affinitetsrelationer mellan minnesåtkomst och arbetsuppsättningsegenskaper för enskilda minnesoperationer i programmet. Därefter utförs en partitionering av minnesoperationerna på programnivå för att dela upp minnesåtkomsterna mellan datacacherna. Som ett resultat, dataåtkomsten är proaktivt utspridda för att minska minnesstånd och förbättra beräkning parallellisering. En slutlig detaljerad partitionering av beräkningsinstruktionerna utförs med kunskap om cacheplatsen för deras tillhörande data. Sammantaget minskar vår datapartitionering stallcykler med upp till 51% jämfört med datainkognizant partitionering, och har en total hastighetsökning genomsnitt på 30% över en enda kärna processor.
Chu och al. REF föreslog en profilriktad metod för att partitionera minnesåtkomst över distribuerade datacache.
Data Access Partitioning for Fine-grain Parallelism on Multicore Architectures
{'venue': '40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007)', 'journal': '40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007)', 'mag_field_of_study': ['Computer Science']}