Abstract-Dynamic uppgift diagram schemaläggare automatiskt balansera arbete över processorkärnor genom att schemalägga uppgifter bland tillgängliga trådar samtidigt bevara beroenden. I detta dokument designar vi NABBITC, en bevisligen effektiv dynamisk aktivitetsdiagram schemaläggare som står för datalokalisering på NUMA-system. NABBITC gör det möjligt för användare att tilldela en färg till varje uppgift som representerar platsen (t.ex. en processorkärna) som har den mest effektiva åtkomsten till data som behövs under nodens utförande. NABBITC justerar sedan automatiskt schemaläggningen så att helst köra varje nod på den plats som matchar dess färgledande till bättre lokalitet eftersom noden sannolikt kommer att göra lokala snarare än fjärråtkomst. Samtidigt försöker NABBITC optimera lastbalansen och inte lägga till för mycket overhead jämfört med vaniljen NABBIT schemaläggaren som inte tar hänsyn till lokalitet. Vi tillhandahåller en teoretisk analys som visar att NABBITC inte asymptotiskt påverkar skalbarheten hos NABBIT. Vi utvärderade prestandan hos NABBITC på en uppsättning riktmärken, inklusive både minne och beräkna intensiva applikationer. Våra experiment visar att öka lokal medvetenhet har en betydande prestanda fördel jämfört med vanilj NABBIT schemaläggaren. Dessutom jämförde vi NABBITC med både OpenMP-uppgifter och OpenMP-loopar. För vanliga applikationer kan OpenMP-loopar uppnå perfekt lokalitet och perfekt belastningsbalans statiskt. För dessa riktmärken har NABBITC en liten prestandapåföljd jämfört med OpenMP på grund av sin dynamiska schemaläggningsstrategi. På samma sätt ger OpenMP-uppgiftens centraliserade schemaläggare den bästa prestandan för att beräkna intensiva applikationer med kursgrundade uppgifter. Vi finner dock att NABBITC ger en bra avvägning mellan datalokalisering och belastningsbalans; när det gäller minnesintensiva jobb överträffar det konsekvent OpenMP-uppgifter medan det för oregelbundna jobb där belastningsbalansering är viktig överträffar det OpenMP-loopar. Därför kombinerar NABBITC fördelarna med lokal-medveten schemaläggning för regelbundna, minnesintensiva applikationer (fortet av statiska schemaläggare som de i OpenMP) och dynamiskt anpassa sig till belastningsobalans i oregelbundna applikationer (fortet av dynamiska schemaläggare som Cilk Plus, TBB och Nabbit).
Arbetet med REF föreslår ett schemaläggningsramverk för aktivitetsdiagram för lokal programvara, vilket ger en bevisligen god genomförandetid.
Locality-Aware Dynamic Task Graph Scheduling
{'venue': '2017 46th International Conference on Parallel Processing (ICPP)', 'journal': '2017 46th International Conference on Parallel Processing (ICPP)', 'mag_field_of_study': ['Computer Science']}