När multicoreprocessorer blir standard letar forskarna aggressivt efter programutförandemodeller som gör det lättare att använda tillgängliga resurser. Multitrådade programmeringsmodeller som förlitar sig på statiskt parallella program har vunnit prevalens. Merparten av den befintliga forskningen syftar till att anpassa och förbättra sådana modeller, lindra deras nackdelar och förenkla användningen av dem. Detta dokument tar ett annat tillvägagångssätt och föreslår en ny utförandemodell för att uppnå parallellt utförande av statiskt-sekvensprogram. Den parallelliserar dynamiskt utförandet av lämpligt skrivna sekventiella program, på ett dataflöde sätt, på flera processkärnor. Det är betecknande att avrättningen är rasfri och beslutsam. Modellen underlättar alltså programutvecklingen och utnyttjar ändå tillgänglig parallellism. Detta dokument beskriver genomförandet av ett programruntime-bibliotek som implementerar den föreslagna exekveringsmodellen på befintliga kommersiella multicore-maskiner. Vi presenterar resultat från experiment som kör referensprogram, med både den föreslagna tekniken och traditionell parallellprogrammering, på tre olika system. Vi finner att utöver att underlätta utvecklingen av riktmärken, metoden är resurseffektiv och uppnår prestanda som liknar den traditionella metoden, med hjälp av lager kompilatorer, operativsystem och hårdvara, trots overheads av en all-programvara genomförande av modellen.
REF har också producerat ett programvarusystem som implementerat dataflöde exekvering av sekventiella tvingande program på flerkärniga system.
Dataflow execution of sequential imperative programs on multicore architectures
{'venue': 'MICRO-44', 'journal': None, 'mag_field_of_study': ['Computer Science']}