Nije CPU load balancer fan MIT

It Shenango-systeem is pland om te brûken yn datasintra.

Nije CPU load balancer fan MIT
/ foto Marco verch CC BY

Neffens ien fan 'e oanbieders, datacenters brûke mar 20–40% fan beskikbere kompjûterkrêft. By hege loads dizze yndikator kin 60% berikke. Dizze ferdieling fan boarnen liedt ta it ûntstean fan saneamde "zombie-tsjinners". Dit binne masines dy't it measte fan 'e tiid idle sitte, enerzjy fergrieme. Hjoed 30% fan servers yn 'e wrâld binne sûnder wurk, konsumearje $ 30 miljard wearde fan elektrisiteit per jier.

MIT besleat it ineffisjint gebrûk fan komputerboarnen te bestriden.

Engineering team hat ûntwikkele prosessor load balancing systeem neamd Shenango. It doel is om de tastân fan 'e taakbuffer te kontrolearjen en fêste prosessen (dy't gjin CPU-tiid kinne ûntfange) opnij te fersprieden nei fergese masines.

Hoe Shenango wurket

Shenango is in Linux-bibleteek yn C mei Rust- en C++-bindingen. De projektkoade en testapplikaasjes wurde publisearre yn repositories op GitHub.

De oplossing is basearre op it IOKernel algoritme, dat rint op in tawijd kearn fan in multiprocessor systeem. It beheart CPU-oanfragen mei in ramt DPDK, wêrtroch applikaasjes direkt kinne kommunisearje mei netwurkapparaten.

De IOKernel beslút oan hokker kernels in spesifike taak delegearje moat. It algoritme beslút ek hoefolle kearnen nedich binne. Foar elk proses wurde de wichtichste kearnen (garandearre) en oanfoljende (burstable) bepaald - de lêste wurde lansearre yn gefal fan in skerpe tanimming fan it oantal oanfragen oan 'e CPU.

De IOKernel fersyk wachtrige wurdt organisearre as ring buffer. Elke fiif mikrosekonden kontrolearret it algoritme om te sjen oft alle taken dy't oan 'e kearn binne tawiisd binne foltôge. Om dit te dwaan, fergeliket de hjoeddeistige lokaasje fan 'e holle fan' e buffer mei de foarige posysje fan syn sturt. As bliken docht dat de sturt al yn 'e wachtrige wie op' e tiid fan 'e foarige kontrôle, notearret it systeem de bufferoverload en jout in ekstra kearn foar it proses.

By it fersprieden fan de lading wurdt prioriteit jûn oan kearnen dêr't itselde proses earder útfierd is en foar in part yn 'e cache bleaun is, of oan elke idle kearnen.

Nije CPU load balancer fan MIT

Shenango nimt boppedat de oanpak wurk stellen. De kearnen dy't tawiisd binne om ien applikaasje út te fieren, kontrolearje it oantal taken dy't elkoar hawwe. As ien kearn syn list mei taken foar de oaren beëiniget, dan "ferljochtet" it in diel fan 'e lading fan syn buorlju.

Striid en swakkens

By neffens yngenieurs fan MIT, Shenango is yn steat om fiif miljoen oanfragen per sekonde te ferwurkjen en in gemiddelde reaksjetiid fan 37 mikrosekonden te behâlden. Eksperts sizze dat yn guon gefallen de technology it brûken fan processors yn datasintra kin ferheegje nei 100%. As resultaat kinne datacenteroperators besparje op 'e oankeap en ûnderhâld fan servers.

Solution Potential fiere en spesjalisten fan oare universiteiten. Neffens in heechlearaar fan in Koreaansk ynstitút sil it MIT-systeem helpe om fertragingen yn webtsjinsten te ferminderjen. Bygelyks, it sil nuttich wêze yn online winkels. Op ferkeapdagen is d'r sels in twadde fertraging yn it laden fan siden приводит ta in fermindering fan it oantal side views mei 11%. Snelle ferdieling fan lading sil helpe om mear kliïnten te tsjinjen.

De technology hat noch neidielen - it stipet gjin multiprocessor YN-systemen wêryn chips binne ferbûn mei ferskate ûnthâld modules en net "kommunisearje" mei elkoar. Yn dit gefal kin IOKernel regelje de wurking fan in aparte groep fan processors, mar net alle tsjinner chips.

Nije CPU load balancer fan MIT
/ foto Tim Rekkeman CC BY

Similar technologyen

Oare processor load balancing systemen befetsje Arachne. It berekkent hoefolle kearnen in applikaasje sil nedich as it begjint, en distribúsje prosessen neffens dizze yndikator. Neffens de auteurs is de maksimale latency fan in applikaasje yn Arachne sawat 10 tûzen mikrosekonden.

De technology wurdt ymplementearre as in C ++ biblioteek foar Linux, en syn boarne koade is beskikber by GitHub.

In oar balansearjend ark is ZygOS. Lykas Shenango brûkt de technology de metoade foar wurkstelle om prosessen te fersprieden. Neffens de auteurs fan ZygOS is de gemiddelde tapassingslatinsje by it brûken fan it ark sawat 150 mikrosekonden, en it maksimum is sawat 450 mikrosekonden. De projektkoade is ek is yn it publike domein.

befinings

Moderne datacenters bliuwe útwreidzje De tanimmende trend is benammen te fernimmen yn 'e merk fan hyperscale datacenters: no yn 'e wrâld der is 430 hyperscale datasintra, mar yn 'e kommende jierren kin har oantal mei 30% tanimme. Om dizze reden sille technologyen foar load balancing foar prosessor yn grutte fraach wêze. Systemen lykas Shenango binne al beskikber útfiere grutte bedriuwen, en it oantal sokke ark sil allinnich groeie yn 'e takomst.

Berjochten fan it First Enterprise IaaS Blog:

Boarne: www.habr.com

Add a comment