Kisawazisha kipya cha upakiaji wa CPU kutoka MIT

Mfumo wa Shenango umepangwa kutumika katika vituo vya data.

Kisawazisha kipya cha upakiaji wa CPU kutoka MIT
/ picha Kitovu cha Marco CC BY

Kulingana na mmoja wa watoa huduma, vituo vya data kutumia 20-40% tu ya uwezo wa kompyuta unaopatikana. Chini ya mizigo nzito, takwimu hii inaweza kufikia 60%Usambazaji huu wa rasilimali husababisha kuibuka kwa kinachojulikana kama "seva za zombie." Hizi ni mashine ambazo hukaa bila kufanya kazi mara nyingi, na kupoteza nishati. Leo, 30% ya seva za ulimwengu ni seva za zombie. wako nje ya kazi, hutumia umeme wa dola bilioni 30 kwa mwaka.

MIT iliamua kupambana na utumiaji duni wa rasilimali za kompyuta.

Timu ya uhandisi imeendelea Mfumo wa kusawazisha upakiaji wa kichakataji uitwao Shenango. Madhumuni yake ni kufuatilia hali ya bafa ya kazi na kusambaza upya michakato "iliyokwama" (zile ambazo haziwezi kupata muda wa CPU) kwa mashine za bure.

Jinsi Shenango Inavyofanya Kazi

Shenango представляет собой Linux-библиотеку на языке C с байндингами Rust и C++. Код проекта и тестовые приложения опубликованы в hazina kwenye GitHub.

Suluhisho linategemea algorithm ya IOKernel, ambayo inaendesha msingi wa kujitolea wa mfumo wa multiprocessor. Inasimamia maombi ya CPU kwa kutumia mfumo. DPDK, ambayo inaruhusu programu kuingiliana moja kwa moja na vifaa vya mtandao.

IOKernel huamua ni viini vya kukabidhi kazi mahususi. Algorithm pia huamua ni cores ngapi zinahitajika. Kwa kila mchakato, cores zilizohakikishiwa na cores zinazoweza kupasuka hufafanuliwa-cores zinazoweza kupasuka huzinduliwa katika tukio la ongezeko kubwa la maombi ya CPU.

Foleni ya ombi la IOKernel imepangwa kama ifuatavyo: bafa ya peteKila sekunde tano, algoriti hukagua ikiwa kazi zote zilizopewa msingi zimekamilika. Ili kufanya hivyo, inalinganisha nafasi ya sasa ya "kichwa" cha buffer na nafasi ya awali ya "mkia" wake. Ikiwa mkia ulikuwa tayari kwenye foleni wakati wa ukaguzi wa awali, mfumo hualamisha bafa kuwa imejaa kupita kiasi na kutenga msingi wa ziada kwa mchakato.

Wakati wa kusambaza mzigo, kipaumbele kinapewa cores ambayo mchakato huo huo umetekelezwa hapo awali na sehemu inabaki kwenye cache, au kwa cores yoyote ya uvivu.

Kisawazisha kipya cha upakiaji wa CPU kutoka MIT

Shenango pia hutumia mbinu hiyo kazi ya kuibaMisingi iliyojitolea kuendesha programu moja hufuatilia mzigo wa kazi wa kila mmoja. Msingi mmoja ukimaliza orodha yake ya kazi kabla ya nyingine, hupakua baadhi ya mzigo wa kazi kutoka kwa majirani zake.

Faida na hasara

Cha kulingana na Kulingana na wahandisi wa MIT, Shenango ina uwezo wa kushughulikia maombi milioni tano kwa sekunde na kudumisha wakati wa majibu wa wastani wa sekunde 37. Wataalamu wanadai kwamba katika baadhi ya matukio, teknolojia inaweza kuongeza matumizi ya processor katika vituo vya data hadi 100%. Hii itaruhusu waendeshaji wa kituo cha data kuokoa kwenye ununuzi na matengenezo ya seva.

Uwezo wa Suluhisho kusherehekea na wataalamu kutoka vyuo vikuu vingine. Kulingana na profesa kutoka taasisi ya Kikorea, mfumo wa MIT utasaidia kupunguza latency katika huduma za wavuti. Kwa mfano, itakuwa muhimu kwa maduka ya mtandaoni. Wakati wa mauzo, hata kuchelewa kwa sekunde moja katika upakiaji wa ukurasa приводит Kupungua kwa 11% kwa maoni ya tovuti. Usawazishaji wa haraka wa mzigo utasaidia kuhudumia wateja zaidi.

Teknolojia bado ina vikwazo - haiunga mkono wasindikaji wengi NUMA- mifumo ambayo chips zimeunganishwa na modules tofauti za kumbukumbu na haziwasiliani na kila mmoja. Katika kesi hii, IOKernel inaweza kudhibiti uendeshaji wa kikundi maalum cha wasindikaji, lakini sio chips zote kwenye seva.

Kisawazisha kipya cha upakiaji wa CPU kutoka MIT
/ picha Tim Reckmann CC BY

Teknolojia zinazofanana

Arachne inasimama kati ya mifumo mingine ya kusawazisha mzigo wa processor. Huhesabu ni cores ngapi programu itahitaji wakati wa uzinduzi na inasambaza michakato ipasavyo. Kulingana na waandishi, kiwango cha juu cha latency ya maombi katika Arachne ni takriban 10 microseconds.

Технология реализована в виде библиотеки C++ для Linux, а её исходный код есть на GitHub.

Chombo kingine cha kusawazisha mzigo ni ZygOS. Kama Shenango, teknolojia hutumia wizi wa kazini ili kusambaza upya michakato. Kulingana na waandishi wa ZygOS, muda wa wastani wa kusubiri wakati wa kutumia chombo ni karibu na microseconds 150, na upeo wa karibu 450 microseconds. Msimbo wa mradi pia ni iko kwenye uwanja wa umma.

Matokeo

Vituo vya kisasa vya data vinaendelea kupanua, hasa katika soko la kituo cha data cha hyperscale: sasa duniani ipo Vituo vya data vya hyperscale 430, lakini idadi hii inaweza kuongezeka kwa 30% katika miaka ijayo. Kwa sababu hii, teknolojia za kusawazisha mzigo wa processor zitakuwa na mahitaji makubwa. Mifumo kama Shenango tayari iko yanatekelezwa makampuni makubwa, na idadi ya zana hizo itakua tu katika siku zijazo.

Machapisho kutoka kwa blogu ya Kwanza kuhusu IaaS ya shirika:

Chanzo: mapenzi.com

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS 🔥 Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster