• Home
  • Kemi
  • Astronomien
  • Energi
  • Naturen
  • Biologi
  • Fysik
  • Elektronik
  • Analytisk modell förutsäger exakt hur mycket en hårdvara kommer att påskynda datacenter

    Accelerometer-uppskattad hastighetsökning för viktiga omkostnader som identifierats av forskarna. Kredit:University of Michigan

    Storskaliga mjukvarutjänster utkämpar effektivitetsstriden på två fronter – effektiv mjukvara som är flexibel för förändrade konsumentkrav, och effektiv hårdvara som kan hålla dessa enorma tjänster igång snabbt även inför minskande avkastning från processorer. Tillsammans, dessa faktorer avgör både kvaliteten på användarupplevelsen och prestandan, kosta, och energieffektivitet i moderna datacenter.

    En förändring på en front kräver justeringar på den andra, och en ny mjukvaruarkitektur som växer i popularitet har utgjort en utmaning för de hårdvarulösningar som finns i de flesta datacenter. Kallas mikrotjänster, detta modulära tillvägagångssätt för att designa programvara för stora företag har lämnat något övrigt att önska i sin interaktion med en annan stor växande kraft inom datacentereffektivitet, hårdvaruacceleratorer.

    För att sammanföra dessa två lovande tekniker mer effektivt, CSE Ph.D. student Akshitha Sriraman, arbeta med forskare från Facebook, har designat ett sätt att mäta exakt hur mycket en hårdvaruaccelerator skulle påskynda ett datacenter. Passande namnet Accelerometer, den analytiska modellen kan tillämpas i de tidiga stadierna av en accelerators design för att förutsäga dess effektivitet innan den någonsin installeras.

    Fortfarande en något ny teknik inom allmän datoranvändning, effektiviteten hos hårdvaruacceleratorer är inte lika lätt att förutsäga som processorer, som har decennier av erfarenhet bakom sig. Att investera i den här sortens olika anpassade hårdvara utgör en risk i stor skala, eftersom det kanske inte lever upp till förväntningarna.

    Men potentialen för stor påverkan finns. Designad för att utföra en typ av funktion extremt snabbt, acceleratorer skulle teoretiskt kunna användas för alla överflödiga, repetitiva uppgifter som används gemensamt av större applikationer.

    Det inkluderar mikrotjänster. Detta tillvägagångssätt för mjukvaruarkitektur uppfattar en större applikation som en samling av modulära, uppgiftsspecifika tjänster som var och en kan förbättras isolerat. Detta gör det möjligt att göra ändringar i den större applikationen utan att behöva ändra en stor, central kodbas. Det gör det också lättare att lägga till fler tjänster.

    Sriraman visade att så få som 18 % av de flesta mikrotjänsters CPU-cykler går åt till att utföra instruktioner som är kärnan i deras funktionalitet. Resterande 82 % spenderas på gemensamma operationer som är mogna att accelerera.

    "Att accelerera dessa omkostnader som vi identifierat kan verkligen förbättra hastigheten i betydande utsträckning, " säger Sriraman. Över hastighet, det skulle göra alla datacenters funktioner billigare och mer energieffektiva. "Acceleration kommer att tillåta oss att packa mer arbete för samma strömbegränsningar och förbättra resursutnyttjandet i stor skala, så datacenterenergi och kostnadsbesparingar kommer att förbättras avsevärt."

    Akshitha Sriramans presentation till ASPLOS 2020 levererades virtuellt. Kredit:University of Michigan

    Problemet med mikrotjänster är att deras design kan visa sig vara ganska olika, särskilt med hänsyn till hur de interagerar med hårdvara. Till exempel, en mikrotjänst kan kommunicera med en accelerator samtidigt som den fortsätter att köra andra instruktioner på en CPU, eller så kan den stoppa alla dess funktioner medan den laddar av till gaspedalen. Båda dessa fall möter olika "avlastningskostnader" (den tid som går åt till att skicka en uppgift från en processor till en annan), vilket blir förlorad tid för datacentret om det inte tas med i beräkningen.

    "Var och en av dessa val av mjukvarudesign kan resultera i olika omkostnader som påverkar den totala hastigheten från acceleration, " säger Sriraman. Denna overhead har utelämnats i bilden i tidigare arbete, fortsätter hon, likaså effekten av de olika mikrotjänstdesignerna på prestanda.

    Dessutom, själva acceleratorerna måste användas med omtanke för att ha en positiv nettoeffekt.

    "Att kasta en gaspedalen vid varje problem är löjligt eftersom det tar mycket tid, kosta, och ansträngning att bygga, testa, och distribuera var och en, " avslutar hon. "Det finns ett verkligt behov av att exakt förstå vad och hur man ska accelerera."

    Accelerometer är en analytisk modell som mäter exakt hur mycket prestanda som skulle förbättras genom att installera en given processor, Om överhuvudtaget, med alla dessa nyanser beaktade. Det betyder att den mäter den positiva effekten av acceleration såväl som den negativa effekten av att lägga tid på att blanda runt instruktioner mellan datorkomponenter. Och dess möjligheter är inte begränsade till nya acceleratorer – modellen kan appliceras på alla typer av hårdvara, allt från en enkel CPU-optimering till en extremt specialiserad fjärrstyrd ASIC.

    Verktyget validerades i Facebooks produktionsmiljö med hjälp av tre retrospektiva fallstudier, visar att dess verkliga hastighetsberäkningar har mindre än 3,7 % fel.

    Modellen är tillräckligt exakt för att redan kunna användas av Facebook, med tidigt intresse från andra företag.

    "Vi har fått besked om att flera av de stora molnaktörerna har börjat använda Accelerometer för att snabbt förkasta dåliga acceleratorval och identifiera de bra, att göra välinformerade hårdvaruinvesteringar, "Sriraman säger. Facebook använder modellen för att utforska nya acceleratorer, införliva det som ett första steg för att snabbt reda ut bra och dåliga hårdvaruval.

    Det här projektet, med titeln "Accelerometer:Understanding Acceleration Opportunities for Data Center Overheads at Hyperscale, " accepterades av 2020 Architectural Support for Programming Languages ​​and Operating Systems (ASPLOS)-konferensen och presenterades virtuellt.


    © Vetenskap https://sv.scienceaq.com