Ang Linux 6.9 ay mag-aalok ng mas mabilis na boot sa malalaking system na may maraming RAM

Tux, ang mascot ng Linux Kernel

Ang Linux kernel ay ang backbone ng Linux operating system (OS), at ang pangunahing interface sa pagitan ng hardware ng computer at ng mga proseso nito.

Ilang araw na ang nakakalipas Ibinabahagi namin dito sa blog ang balita ng isa sa mga pagbabago Ano ang makikita natin sa paglulunsad ng Linux kernel 6.9, na kasalukuyang nasa development at iba't ibang pagbabago na ang naipahayag at ang aming inanunsyo ay ang EXT2 ay pumasa na sa kategorya ng obsolete at pati na rin ang paggamit ng lumang NTFS driver ay maiiwan sa isang tabi pabor sa driver na binuo ng Paragon Software.

Ngayon, sa pinakabagong balita tungkol sa mga bagong feature na ipapakita sa amin ng Linux 6.9, ay iyon Ang bersyon na ito ng Kernel ay magdadala ng makabuluhang pagpapabuti sa oras ng pagsisimula para sa mga gumagamit na namamahala ng mga system na may malaking halaga ng RAM, lalo na ang mga iyon Ginagamit nila ang mga pahina ng HugeTLB. Nagreresulta ito sa isang malaking pagbawas sa oras na kinakailangan upang simulan ang mga pahinang ito sa panahon ng proseso ng pag-boot ng system.

Kaugnay na artikulo:
Inilabas ng Paragon ang isang pagpapatupad ng NTFS para sa kernel ng Linux

At idinagdag ang pagbabago sa Linux 6.9 ay magbibigay-daan sa mga system na may malaking bilang ng mga pahina ng HugeTLB na makaranas ng kapansin-pansing pagbawas sa oras ng pagsisimula. Halimbawa, sa mga 2TB system kung saan 1800 1GB na mga pahina ang sinisimulan, na kasalukuyang tumatagal sila sa pagitan ng 1 at 2 segundo sa kabuuang 10 segundo, na walang alinlangan na isang malaking pagpapabuti sa mga panahong ito. Katulad nito, sa 12TB Intel host kung saan 11 776GB na pahina ang nasimulan, na maaaring tumagal ng mahigit isang minuto, makakakita ka ng makabuluhang pagbawas sa mga oras ng startup na ito.

Ang mga pagsulong na ito ay naging posible sa pamamagitan ng dedikadong gawain ng Linux developer na si Gang Li ng Bytedance, na nagpatupad ng isang serye ng mga patch na dumaan sa maraming pagsusuri upang matiyak ang mahusay na pagpapatupad. Ang umiiral na imprastraktura ng kernel, tulad ng padata_do_multithreaded, ay ginamit na may kaunting mga pagbabago upang makamit ang mga resultang ito.

Dalawang update sa v6…

– Inayos ang potensyal na bug sa together_bootmem_prealloc_node
Tinitiyak ng padata_do_multithreaded na pagpapatupad na ang bawat isa
Ang together_bootmem_prealloc_node na gawain ay humahawak sa isang node. Gayunpaman, inilarawan ang API
sa komento padata_do_multithreaded ay nagpapahiwatig na ang padata_do_multithreaded din
Maaari kang magtalaga ng maraming node sa isang gawain together_bootmem_prealloc_node.

Upang maiwasan ang mga posibleng error mula sa mga pagbabago sa hinaharap sa padata_do_multithreaded,
together_bootmem_prealloc_parallel ay ipinakilala upang ibalot ang
together_bootmem_prealloc_node.

Ang mga benepisyo sa mga pagpapabuti na ito ay lalo na kapansin-pansin sa mga kapaligiran kung saan kritikal ang availability ng serbisyo at oras ng system, tulad ng sa kaso ng mga hyperscaler at malalaking organisasyon na namamahala ng napakalaking server. Malaking pakinabang ang pagbawas sa oras ng pagsisimula sa panahon ng mga pag-reboot upang matiyak ang mas mabilis at mas mahusay na oras ng pag-up.

Bukod diyan, Ito rin ay nagkakahalaga ng pagbanggit ng isa pang pagbabago na isinama sa Linux 6.9 na isang patch mula sa isang bihasang Linux engineer sa Intel, na nagpapakilala ng pinahusay na pamamaraan para sa paglilimita ng memory bandwidth sa x86 cache refresh, katulad ng ginamit ng Intel sa RDT at AMD EPYC na mga CPU na may resctrl code.

Binanggit ng may-akda ng patch na:

Pinapataas ng feedback loop ng MBA_mbps ang throttling kapag ang isang grupo ay gumagamit ng mas maraming bandwidth kaysa sa itinakda ng user sa schema file, at binabawasan ang throttling kapag ito ay mas mababa sa target.

Ito ay nagkakahalaga ng pagbanggit na ang bagong pamamaraan upang limitahan ang memory bandwidth ay idinisenyo upang mas mahusay na pangasiwaan ang mga workload na may hindi pare-parehong antas ng pagkargas, pag-iwas sa mga hindi kinakailangang parusa na naganap sa mga nakaraang bersyon ng kernel.

Upang maiwasan ang mga hindi kinakailangang pagbabago sa speedup sa bawat pag-ulit, ang "delta_comp" na flag ay ginagamit upang ipahiwatig ang mga aktwal na pagbabago sa bandwidth na itatala sa susunod na pag-ulit sa "delta_bw". Nababawasan lang ang throttling kung ang kasalukuyang bandwidth plus delta_bw ay mas mababa sa target ng user.

Tulad ng nabanggit na Gumagana nang maayos ang algorithm sa patuloy na pagkarga ng bandwidth, ngunit maaaring mabigo ito kung magbabago ang workload kapag nagbago lang ang throttling. Upang matugunan ito, ipinatupad ang isang mas simpleng pamamaraan na kinakalkula ang potensyal na pagtaas sa bandwidth kung ang throttling ay bawasan sa susunod na mas mataas na antas, na tinitiyak na ito ay nananatiling mas mababa sa target ng user bago bawasan ang throttling.

Kung ikaw interesadong malaman ang higit pa tungkol dito, maaari mong konsultahin ang mga detalye sa mga sumusunod na link: