Raws li ib tug ntawm cov chaw muab kev pab, cov ntaub ntawv chaw siv tsuas yog 20-40% ntawm cov khoom siv suav nrog. Thaum siab loads qhov ntsuas no tuaj yeem ncav cuag 60%. Qhov kev faib tawm ntawm cov peev txheej no ua rau qhov tshwm sim ntawm qhov hu ua "zombie servers". Cov no yog cov tshuab uas zaum tsis ua haujlwm feem ntau ntawm lub sijhawm, nkim zog. Niaj hnub no 30% ntawm cov servers hauv ntiaj teb tsis muaj haujlwm, siv $ 30 billion tus nqi hluav taws xob hauv ib xyoos.
MIT tau txiav txim siab los tawm tsam qhov tsis muaj txiaj ntsig ntawm kev siv cov khoom siv suav.
Pab neeg engineering tau tsim processor load ntsuas qhov system hu ua Shenango. Nws lub hom phiaj yog los saib xyuas lub xeev ntawm cov haujlwm tsis ua haujlwm thiab rov faib cov txheej txheem daig (uas tsis tuaj yeem tau txais CPU sijhawm) rau cov tshuab dawb.
Shenango ua haujlwm li cas
Shenango yog lub tsev qiv ntawv Linux hauv C nrog Rust thiab C ++ bindings. Txoj haujlwm code thiab daim ntawv thov xeem tau luam tawm hauv chaw khaws cia ntawm GitHub.
Cov kev daws teeb meem yog ua raws li IOKernel algorithm, uas khiav ntawm ib qho tseem ceeb ntawm cov txheej txheem multiprocessor. Nws tswj CPU thov siv lub moj khaum DPDK, uas tso cai rau cov ntawv thov sib txuas lus ncaj qha nrog cov khoom siv network.
Lub IOKernel txiav txim siab cov kernels twg los xaiv ib txoj haujlwm tshwj xeeb rau. Lub algorithm kuj txiav txim siab seb yuav xav tau pes tsawg cores. Rau txhua tus txheej txheem, lub ntsiab cores (ua pov thawj) thiab cov ntxiv (burstable) yog txiav txim siab - lub tom kawg yog launched nyob rau hauv cov kev tshwm sim ntawm ib tug ntse nce nyob rau hauv tus naj npawb ntawm kev thov mus rau lub CPU.
Lub IOKernel thov queue yog npaj raws li lub nplhaib tsis muaj. Txhua tsib microseconds, lub algorithm kuaj xyuas seb txhua yam haujlwm uas tau muab rau cov tub ntxhais tau ua tiav. Ua li no, nws muab piv rau qhov chaw tam sim no ntawm qhov tsis muaj lub taub hau nrog rau yav dhau los txoj hauj lwm ntawm nws tus Tsov tus tw. Yog hais tias nws hloov tawm hais tias tus Tsov tus tw twb nyob rau hauv lub queue nyob rau hauv lub sij hawm ntawm lub yav dhau los xyuas, lub kaw lus sau cov tsis overload thiab faib ib tug ntxiv core rau cov txheej txheem.
Thaum faib cov khoom thauj, qhov tseem ceeb yog muab rau cov cores uas cov txheej txheem tib yam tau ua tiav ua ntej thiab ib feem tseem nyob hauv lub cache, lossis rau ib qho idle cores.
Shenango tseem siv txoj hauv kev ua hauj lwm nyiag. Cov cores faib los khiav ib daim ntawv thov saib xyuas cov haujlwm uas ib leeg muaj. Yog tias ib qho tseem ceeb ua tiav nws cov npe ntawm cov haujlwm ua ntej lwm tus, ces nws "relieves" ib feem ntawm cov khoom thauj los ntawm nws cov neeg nyob ze.
Qhov zoo thiab qhov tsis zoo
Los ntawm raws li engineers los ntawm MIT, Shenango muaj peev xwm ua tau tsib lab thov ib ob thiab tuav lub sij hawm teb nruab nrab ntawm 37 microseconds. Cov kws tshaj lij hais tias qee qhov kev siv thev naus laus zis tuaj yeem nce kev siv tus nqi ntawm cov txheej txheem hauv cov chaw khaws ntaub ntawv mus txog 100%. Yog li ntawd, cov neeg ua haujlwm hauv cov chaw zov me nyuam yuav tuaj yeem txuag tau ntawm kev yuav khoom thiab kev saib xyuas cov servers.
Kev daws teeb meem noj peb caug thiab cov kws tshaj lij los ntawm lwm lub tebchaws. Raws li tus kws tshaj lij los ntawm lub koom haum Kaus Lim Kauslim, MIT system yuav pab txo qis cov kev pabcuam hauv web. Piv txwv li, nws yuav muaj txiaj ntsig zoo hauv khw hauv online. Nyob rau hnub muag khoom muaj txawm tias ncua sij hawm thib ob hauv nplooj ntawv thauj khoom ntsiab lus kom txo tus naj npawb ntawm qhov chaw saib los ntawm 11%. Kev xa khoom sai sai yuav pab tau ntau tus neeg siv khoom.