Abstract-Massive datauppsättningar som är vanliga i utskalning, företag och högpresterande datorer driver en trend mot allt större minneskapacitet per nod. För att tillfredsställa minneskraven och maximera prestanda per enhet kostnad, dagens vara HPC och servernoder tenderar att ha multi-socket delat minne NUMA organisationer. Ett viktigt problem i dessa konstruktioner är den höga latensen att få tillgång till minne på ett fjärruttag som resulterar i försämrad prestanda i arbetsbelastning med stora delade dataarbetsuppsättningar. Detta arbete visar att framväxande DRAM-cache kan bidra till att minska NUMA-flaskan genom att filtrera upp till 98 % av fjärrminnet. För att vara effektiva måste dessa DRAM-cacher vara privata till varje uttag för att tillåta cachelagring av fjärrminne, vilket innebär utmaningen att säkerställa samstämmighet mellan flera uttag och GBs DRAM-cachekapacitet. Dessutom kan DRAM-cachens höga latens, i kombination med höga latenser för inter-socketkommunikation, göra träffar på fjärr-DRAM-cacher långsammare än de huvudsakliga minnesåtkomsterna. Dessa funktioner utmanar befintliga koherensprotokoll optimerade för on-chip caches med snabba träffar och blygsam lagringskapacitet. Vår lösning på dessa utmaningar bygger på två insikter. För det första, att hålla DRAM caches rena undviker behovet av att någonsin komma åt en fjärr DRAM cache på en läsning. För det andra möjliggör en icke-inclusive on-chip-katalog som undviker spårningsblock i DRAM-cachen ett lättviktsprotokoll för att garantera enhetlighet utan de svindlande katalogkostnaderna. Vår design, som kallas Clean Coherent DRAM Caches (C 3 D), utnyttjar dessa insikter för att förbättra prestandan med 6,4-50,7% i ett quad-socket-system jämfört med en baslinje utan DRAM-cache.
C 3 D REF angriper samma problem som CANDY genom att hålla DRAM caches rena för att undvika behovet av att någonsin komma åt fjärr-DRAM caches på avläsningar och genom att använda en icke-inclusive on-chip katalog.
C3D: Mitigating the NUMA bottleneck via coherent DRAM caches
{'venue': '2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)', 'journal': '2016 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)', 'mag_field_of_study': ['Computer Science']}