Betrakta ett multitrådat parallellt program som körs inuti en multicore virtuell maskin sammanhang som själv är värd på en multi-socket multicore fysisk maskin. Hur ska VMM karta virtuella kärnor till fysiska kärnor? Vi jämför en lokal kartläggning, som komprimerar virtuella kärnor till processoruttag, och en interleaved mappning, som sprider dem över uttagen. Att helt enkelt välja mellan dessa två kartläggningar avslöjar tydliga kompromisser mellan prestanda, energi och kraft. Därefter beskriver vi utformningen, genomförandet och utvärderingen av ett system som automatiskt och dynamiskt väljer mellan de två kartläggningarna. Systemet består av en uppsättning effektiva online VMM-baserade mekanismer och policyer som a) fångar relevanta egenskaper hos minne referensbeteende, b) tillhandahåller en policy och mekanism för att konfigurera kartläggningen av virtuella maskinkärnor till fysiska kärnor som optimerar för kraft, energi eller prestanda, och c) driver dynamiska migreringar av virtuella kärnor mellan lokala fysiska kärnor baserat på arbetsbelastningen och det för närvarande angivna målet. Med hjälp av dessa tekniker visar vi att prestandan hos SPEC- och PARSEC-riktmärken kan ökas med så mycket som 66%, energin minskas med så mycket som 31%, och effekten minskas med så mycket som 17%, beroende på optimeringsmålet.
Bae m.fl. överväga liknande trådtilldelningar och visa att trådtilldelning påverkar prestanda och effektförbrukning i ett multitrådat program och föreslå ett system som dynamiskt väljer mellan de två tilldelningarna enligt programmets egenskaper REF.
Dynamic adaptive virtual core mapping to improve power, energy, and performance in multi-socket multicores
{'venue': "HPDC '12", 'journal': None, 'mag_field_of_study': ['Computer Science']}