Roman Gushchin () nga kompanĂa Facebook nĂ« listĂ«n e shpĂ«rndarjes sĂ« zhvilluesve tĂ« kernelit Linux njĂ« set patches me implementimin e njĂ« kontrolluesi tĂ« ri pĂ«r shpĂ«rndarjen e memories (kontrolluesi i memories slab). Kontrolluesi i ri Ă«shtĂ« i veçantĂ« pĂ«r transferimin e llogarisĂ« slab nga niveli i faqeve tĂ« memories nĂ« nivelin e objekteve tĂ« kernelit, qĂ« lejon ndarjen e faqeve slab nĂ« grupet e kontrollit (cgroup), nĂ« vend qĂ« tĂ« alokojĂ« caches tĂ« veçanta slab pĂ«r çdo cgroup.
Qasja e propozuar lejon rritjen e efikasitetit të përdorimit të slab, duke reduktuar madhësinë e memories së përdorur për slab me 30-45% dhe duke ulur ndjeshëm konsumin total të memories nga kernel. Duke reduktuar numrin e slab-ve që nuk mund të zhvendosen, gjithashtu vërehet një efekt pozitiv në reduktimin e fragmentimeve të memories. Kontrolluesi i ri i memories ndjeshëm e thjeshton kodin për llogaritjen e slab dhe nuk kërkon përdorimin e algoritmeve të komplikuara për krijimin dhe fshirjen dinamike të caches slab për çdo cgroup. Të gjitha cgroup për memories në implementimin e ri përdorin një grup të përbashkët caches slab, dhe koha e jetës së caches slab nuk është më e lidhur me jetën e cgroup-eve të vendosura. për përdorimin e memories.
Llogaritja mĂ« e saktĂ« e burimeve nĂ« kontrolluesin e ri tĂ« slab teorikisht duhet tĂ« ngarkojĂ« mĂ« shumĂ« CPU, por nĂ« praktikĂ«, diferencat janĂ« treguar tĂ« jenĂ« tĂ« konsiderueshme. NĂ« veçanti, kontrolluesi i ri i slab Ă«shtĂ« pĂ«rdorur pĂ«r disa muaj nĂ« serverat e Facebook qĂ« trajtojnĂ« lloje tĂ« ndryshme ngarkesash, dhe deri tani nuk janĂ« zbuluar regresione tĂ« dukshme. NĂ« tĂ« njĂ«jtĂ«n kohĂ«, Ă«shtĂ« vĂ«rejtur njĂ« ulje e konsiderueshme e shpenzimeve tĂ« memories â nĂ« disa hoste Ă«shtĂ« arritur tĂ« kursehet deri nĂ« 1GB memory, por ky tregues ndikon shumĂ« nga natyra e ngarkesĂ«s, madhĂ«sia totale e RAM-it, numri i CPU-ve dhe karakteristikat e punĂ«s me memories. Testet e mĂ«parshme kanĂ« treguar njĂ« ulje tĂ« shpenzimeve tĂ« memories me 650-700 MB (42% e memories slab) nĂ« frontin web, 750-800 MB (35%) nĂ« serverin me cache tĂ« DBMS dhe 700 MB (36%) nĂ« serverin DNS.
Burimi: opennet.ru
