Videnskab
 science >> Videnskab >  >> Elektronik

AI-system fordeler optimalt arbejdsbelastninger på tværs af tusindvis af servere for at reducere omkostningerne, Spar energi

Et nyt system fra MIT-forskere "lærer" automatisk, hvordan man allokerer databehandlingsoperationer på tværs af tusindvis af servere.

Et nyt system udviklet af MIT-forskere "lærer" automatisk, hvordan man planlægger databehandlingsoperationer på tværs af tusindvis af servere - en opgave, der traditionelt er forbeholdt upræcise, menneskeskabte algoritmer. Hvis du gør det, kan det hjælpe nutidens strømkrævende datacentre med at køre langt mere effektivt.

Datacentre kan indeholde titusindvis af servere, som konstant kører databehandlingsopgaver fra udviklere og brugere. Klyngeplanlægningsalgoritmer allokerer de indgående opgaver på tværs af serverne, i realtid, til effektivt at udnytte alle tilgængelige computerressourcer og få opgaver udført hurtigt.

Traditionelt, imidlertid, mennesker finjusterer disse planlægningsalgoritmer, baseret på nogle grundlæggende retningslinjer ("politikker") og forskellige afvejninger. De må, for eksempel, kode algoritmen for at få bestemte opgaver udført hurtigt eller del ressourcer ligeligt mellem opgaver. Men arbejdsbyrder – hvilket betyder grupper af kombinerede opgaver – findes i alle størrelser. Derfor, det er praktisk talt umuligt for mennesker at optimere deres planlægningsalgoritmer til specifikke arbejdsbelastninger og, som resultat, de mangler ofte deres sande effektivitetspotentiale.

MIT-forskerne overlod i stedet al den manuelle kodning til maskiner. I et papir, der præsenteres på SIGCOMM, de beskriver et system, der udnytter "forstærkningslæring" (RL), en trial-and-error maskinlæringsteknik, at skræddersy planlægningsbeslutninger til specifikke arbejdsbelastninger i specifikke serverklynger.

For at gøre det, de byggede nye RL-teknikker, der kunne træne på komplekse arbejdsbelastninger. I træning, systemet prøver mange mulige måder at allokere indgående arbejdsbelastninger på tværs af serverne, til sidst at finde en optimal afvejning i at udnytte beregningsressourcer og hurtige behandlingshastigheder. Ingen menneskelig indgriben er påkrævet ud over en simpel instruktion, såsom, "minimere jobafslutningstiden."

Sammenlignet med de bedste håndskrevne planlægningsalgoritmer, forskernes system fuldfører opgaver omkring 20 til 30 procent hurtigere, og dobbelt så hurtigt i tider med høj trafik. For det meste, imidlertid, systemet lærer at komprimere arbejdsbelastninger effektivt for at efterlade lidt affald. Resultater indikerer, at systemet kunne gøre det muligt for datacentre at håndtere den samme arbejdsbyrde ved højere hastigheder, bruger færre ressourcer.

"Hvis du har en måde at prøve og fejle ved hjælp af maskiner, de kan prøve forskellige måder at planlægge job og automatisk finde ud af, hvilken strategi der er bedre end andre, " siger Hongzi Mao, en ph.d. studerende ved Institut for Elektroteknik og Datalogi (EECS). "Det kan forbedre systemets ydeevne automatisk. Og enhver lille forbedring i udnyttelsen, endda 1 procent, kan spare millioner af dollars og en masse energi i datacentre."

"Der er ingen ensartet egnethed til at træffe planlægningsbeslutninger, " tilføjer medforfatter Mohammad Alizadeh, en EECS-professor og forsker i Computer Science and Artificial Intelligence Laboratory (CSAIL). "I eksisterende systemer, disse er hårdkodede parametre, som du skal bestemme på forhånd. Vores system lærer i stedet at justere dets tidsplanpolitikkarakteristika, afhængigt af datacenteret og arbejdsbyrden."

Med Mao og Alizadeh på papiret er:postdocs Malte Schwarzkopf og Shaileshh Bojja Venkatakrishnan, og færdiguddannet forskningsassistent Zili Meng, hele CSAIL.

RL for skemalægning

Typisk, databehandlingsjob kommer ind i datacentre repræsenteret som grafer over "knuder" og "kanter". Hver node repræsenterer en eller anden beregningsopgave, der skal udføres, hvor jo større knudepunkt, jo mere regnekraft er der brug for. Kanterne, der forbinder noderne, forbinder forbundne opgaver sammen. Planlægningsalgoritmer tildeler noder til servere, baseret på forskellige politikker.

Men traditionelle RL-systemer er ikke vant til at behandle sådanne dynamiske grafer. Disse systemer bruger en software-"agent", der træffer beslutninger og modtager et feedbacksignal som belønning. I det væsentlige, den forsøger at maksimere sine belønninger for enhver given handling for at lære en ideel adfærd i en bestemt kontekst. De kan, for eksempel, hjælpe robotter med at lære at udføre en opgave som at samle et objekt op ved at interagere med omgivelserne, men det involverer behandling af video eller billeder gennem et lettere sæt gitter af pixels.

For at bygge deres RL-baserede skemalægger, kaldet Decima, forskerne skulle udvikle en model, der kunne behandle grafstrukturerede job, og skalere til et stort antal job og servere. Deres systems "agent" er en planlægningsalgoritme, der udnytter et grafisk neuralt netværk, almindeligvis brugt til at behandle grafstrukturerede data. For at komme op med et grafisk neuralt netværk, der er egnet til planlægning, de implementerede en tilpasset komponent, der samler information på tværs af stier i grafen – såsom hurtigt at estimere, hvor meget beregning der skal til for at fuldføre en given del af grafen. Det er vigtigt for jobplanlægning, fordi "underordnede" (nedre) noder ikke kan begynde at udføre, før deres "overordnede" (øvre) noder er færdige, så foregribelse af fremtidigt arbejde langs forskellige veje i grafen er centralt for at træffe gode planlægningsbeslutninger.

For at træne deres RL-system, forskerne simulerede mange forskellige grafsekvenser, der efterligner arbejdsbelastninger, der kommer ind i datacentre. Agenten træffer derefter beslutninger om, hvordan hver enkelt node langs grafen skal allokeres til hver server. For hver beslutning, en komponent beregner en belønning baseret på, hvor godt den klarede sig ved en specifik opgave – såsom at minimere den gennemsnitlige tid, det tog at behandle et enkelt job. Agenten fortsætter, forbedre sine beslutninger, indtil den får den højest mulige belønning.

Grundlæggende arbejdsbyrder

En bekymring, imidlertid, er, at nogle arbejdsbelastningssekvenser er sværere end andre at behandle, fordi de har større opgaver eller mere komplicerede strukturer. Disse vil altid tage længere tid at behandle - og, derfor, belønningssignalet vil altid være lavere - end de simplere. Men det betyder ikke nødvendigvis, at systemet fungerede dårligt:​​Det kunne give god tid på en udfordrende arbejdsbyrde, men stadig være langsommere end en lettere arbejdsbyrde. Denne variation i sværhedsgrad gør det udfordrende for modellen at afgøre, hvilke handlinger der er gode eller ej.

For at adressere det, forskerne tilpassede en teknik kaldet "baselining" i denne sammenhæng. Denne teknik tager gennemsnit af scenarier med et stort antal variabler og bruger disse gennemsnit som en baseline til at sammenligne fremtidige resultater. Under træning, de beregnede en basislinje for hver inputsekvens. Derefter, de lader skemalæggeren træne på hver arbejdsbelastningssekvens flere gange. Næste, systemet tog den gennemsnitlige ydeevne på tværs af alle de beslutninger, der blev truffet for den samme input-arbejdsbyrde. Dette gennemsnit er den basislinje, som modellen så kan sammenligne sine fremtidige beslutninger med for at afgøre, om dens beslutninger er gode eller dårlige. De omtaler denne nye teknik som "input-afhængig baselining."

Den innovation, siger forskerne, er anvendelig til mange forskellige computersystemer. "Dette er en generel måde at lave forstærkende læring på i miljøer, hvor der er denne inputproces, der påvirker miljøet, og du ønsker, at hver træningsevent skal overveje et eksempel på den inputproces, " siger han. "Næsten alle computersystemer håndterer miljøer, hvor tingene hele tiden ændrer sig."

Aditya Akella, en professor i datalogi ved University of Wisconsin i Madison, hvis gruppe har designet adskillige højtydende planlæggere, fandt ud af, at MIT-systemet kunne hjælpe med at forbedre deres egne politikker yderligere. "Decima kan gå et skridt videre og finde muligheder for [planlægning] optimering, der simpelthen er for besværlige at realisere via manuelle design/tuning processer, " siger Akella. "De planlæggere, vi designede, opnåede betydelige forbedringer i forhold til de teknikker, der bruges i produktionen med hensyn til applikationsydelse og klyngeeffektivitet, men der var stadig et hul med de ideelle forbedringer, vi kunne opnå. Decima viser, at en RL-baseret tilgang kan opdage [politikker], der hjælper med at bygge bro over kløften yderligere. Decima forbedrede vores teknikker med [omtrent] 30 procent, hvilket kom som en kæmpe overraskelse."

Lige nu, deres model er trænet på simuleringer, der forsøger at genskabe indgående onlinetrafik i realtid. Næste, forskerne håber at træne modellen i realtidstrafik, hvilket potentielt kan crashe serverne. Så, de er i øjeblikket ved at udvikle et "sikkerhedsnet", der vil stoppe deres system, når det er ved at forårsage et nedbrud. "Vi tænker på det som træningshjul, " siger Alizadeh. "Vi ønsker, at dette system kontinuerligt træner, men det har visse træningshjul, som hvis det går for langt, kan vi sikre, at det ikke vælter."

Denne historie er genudgivet med tilladelse fra MIT News (web.mit.edu/newsoffice/), et populært websted, der dækker nyheder om MIT-forskning, innovation og undervisning.




Varme artikler