Allteftersom flerkärniga och mångkärniga arkitekturer utvecklas blir deras minnessystem allt mer komplexa. För att överbrygga latens- och bandbreddsgapet mellan processorn och minnet använder de ofta en blandning av privata/delade cacheminnen på flera nivåer som antingen blockerar eller inte blockerar och är anslutna med höghastighetsnätverk-på-chip. Dessutom innehåller de även hård- och programvaruförhämtning och samtidig multitrådning (SMT) för att dölja minneslatens. På sådana multi-och mångkärniga system, för att införliva olika minnesoptimeringssystem med hjälp av kompilatoroptimering och prestanda tuning tekniker, är det viktigt att ha mikroarkitekturala detaljer i målminnessystemet. Tyvärr är sådana uppgifter ofta otillgängliga från leverantörer, särskilt för nysläppta processorer. I den här artikeln föreslår vi en ny mikrobenchmarking metod baserad på kort förfluten tid händelser (SETE) för att få omfattande minne mikroarchitectural detaljer i multi-och många core processorer. Detta tillvägagångssätt kräver detaljerad analys av potentiella störande faktorer som kan påverka det avsedda beteendet hos sådana minnessystem. Vi lägger fram effektiva riktlinjer för att kontrollera och mildra dessa störande faktorer. Med tanke på effekterna av SMT, vår föreslagna metod inte bara kan mäta traditionell cache / minnes latens och off-chip bandbredd men också kan avslöja detaljer om programvara och hårdvara prefetching enheter inte försök i tidigare studier. Med hjälp av den nyutgivna Intel Xeon Phi många-kärn processor (med i ordning kärnor) som exempel, visar vi hur vi kan använda en uppsättning av mikrobenchmarks för att bestämma olika mikroarchitecturala funktioner i sitt minne system (många är odokumenterade från leverantörer). För att demonstrera portabiliteten och validera riktigheten av en sådan metod, använder vi den väldokumenterade Intel Sandy Bridge multicore processor (med out-of-order kärnor) som ett annat exempel, där de flesta data är tillgängliga och kan valideras. Dessutom, för att illustrera nyttan av de uppmätta data, gör vi en flerstegs samordnad data prefetching fallstudie på både Xeon Phi och Sandy Bridge och visar att genom att använda de uppmätta data, kan vi uppnå 1,3X respektive 1.08X prestanda speedup, jämfört med den senaste Intel ICC kompilatorn. Vi tror att dessa mätningar också ger användbara insikter i minnesoptimering, analys och modellering av sådana multicore- och mångkärniga arkitekturer. greensky@intel.com, öl0092@umn.edu; B. Zang, Institutionen för programvara, Shanghai Jiao Tong University; e-post: binyu.zang@gmail.com. Tillstånd att göra digitala eller hårda kopior av delar eller allt detta arbete för personligt bruk eller klassrum beviljas utan avgift under förutsättning att kopior inte görs eller distribueras för vinst eller kommersiella fördelar och att kopior visar detta meddelande på första sidan eller första skärmen av en skärm tillsammans med den fullständiga citering. Upphovsrätt till delar av detta verk som ägs av andra än ACM måste hedras. Abstraktering med kredit är tillåten. För att kopiera på annat sätt, för att återpublicera, för att posta på servrar, för att omfördela till listor, eller för att använda någon komponent i detta verk i andra verk krävs förhandsgodkännande och/eller avgift. Tillstånd kan begäras från publikationsavdelningen, ACM, Inc., 2 Penn Plaza, Suite 701, New York, NY 10121-0701 USA, fax +1 (
Till exempel Fang et al. REF utvärderade minnet systemmicroarchitectures på varor multicore och många-core processorer.
Measuring Microarchitectural Details of Multi- and Many-Core Memory Systems through Microbenchmarking
{'venue': 'TACO', 'journal': None, 'mag_field_of_study': ['Computer Science']}