Operativsystemets (OS) roll i hanteringen av delade resurser som CPU-tid, minne, kringutrustning och även energi är väl motiverad och förstådd [23]. Tyvärr är en viktig resurs-lägre-nivå delad cache i chip multi-processorer- vanligen hanteras enbart i hårdvara genom rudimentära ersättningspolicyer såsom minst nyanvända (LRU). Hårdvarucachehanteringspolitikens stelbenta karaktär utgör ett allvarligt problem eftersom det inte finns någon enda bästa policy för hantering av cache i alla delningsscenarier. Till exempel, cache management policy för ett scenario där applikationer från en enda organisation kör under "bästa ansträngning" prestanda förväntningar kommer sannolikt att skilja sig från policyn för ett scenario där tillämpningar från konkurrerande företag enheter (t.ex. vid en tredje parts datacenter) kör under en lägsta servicenivå förväntningar. När det gäller att hantera delade cacheminnen finns det en inneboende spänning mellan flexibilitet och prestanda. Å ena sidan, att hantera den delade cache i OS ger enorm politisk flexibilitet eftersom det kan genomföras i programvara. Tyvärr är det oöverkomligt dyrt i fråga om prestanda för OS att delta i hanteringen av temporärt finkorniga händelser såsom cache allokering. Å andra sidan har sofistikerade hårdvaru-endast cachehantering tekniker för att uppnå rättvis delning eller throughput maximization föreslagits. Men de erbjuder ingen politisk flexibilitet. Detta dokument tar upp detta problem genom att utforma arkitektoniskt stöd för OS för att effektivt hantera delade cacheminnen med en mängd olika policyer. Vårt system består av en mekanism för hantering av cachekvoter, ett OS-gränssnitt och en uppsättning policyer för kvotering av OS-nivåer. Hårdvarumekanismen garanterar att OS-specificerade kvoter tillämpas i delade caches, vilket eliminerar behovet av (och prestandastraffet för) tidsmässigt finkorniga OS-intervention. OS behåller den politiska flexibiliteten eftersom den kan justera kvoterna vid regelbundet schemalagda OS-interventioner. Vi visar att vårt program kan stödja ett brett spektrum av politiska åtgärder, inklusive politik som ger a) passiv per-
REF föreslog ett arkitekturstöd och operativsystem (OS) gränssnitt som tillåter OS-nivå cache partitionering, där ett program hindras från att ockupera mer än en viss fraktion (kvot) av cache.
Architectural support for operating system-driven CMP cache management
{'venue': "PACT '06", 'journal': None, 'mag_field_of_study': ['Computer Science']}