Tidigare forskning har visat att Staged Execution (SE), dvs., dela ett program i segment och utföra varje segment i kärnan som har data och / eller funktionalitet för att bäst köra det segmentet, kan förbättra prestanda och spara kraft. SE:s fördelar är dock begränsade eftersom de flesta segment har tillgång till intersegmentsdata, dvs. data som genererats av det tidigare segmentet. När på varandra följande segment kör på olika kärnor, åtkomst till inter-segment data medför cache missar, vilket minskar prestanda. I detta dokument föreslås Data Marshalsing (DM), en ny teknik för att eliminera cache missar till inter-segment data. DM använder profilering för att identifiera instruktioner som genererar inter-segment data, och lägger bara 96 bytes / kärna av lagring overhead. Vi visar att DM avsevärt förbättrar prestandan hos två lovande stegvisa utförandemodeller, Accelererade kritiska sektioner och produktions-konsument pipeline parallellism, på både homogena och heterogena flerkärniga system. I båda modellerna, DM kan uppnå nästan alla möjligheter att helst eliminera cache missar till inter-segment data. DM: s prestanda nytta ökar med antalet kärnor.
Data Marshalsing REF minskar inter-core data missar i Staged Execution modeller.
Data marshaling for multi-core architectures
{'venue': "ISCA '10", 'journal': None, 'mag_field_of_study': ['Computer Science']}