Monitorovanie

Pochopenie priemernej záťaže v systéme Linux

Pochopenie priemernej záťaže v systéme Linux
Priemer záťaže je meranie množstva práce v porovnaní s voľnými cyklami CPU, ktoré sú k dispozícii v systémovom procesore. V tomto článku definujem pojem, ukážem, ako Linux počíta túto hodnotu, a potom poskytnem prehľad o tom, ako interpretovať zaťaženie systému.

Rôzne metódy výpočtu zaťaženia

Predtým, ako sa ponoríme do priemerov zaťaženia systému Linux, musíme preskúmať rôzne spôsoby výpočtu zaťaženia a zaoberať sa najbežnejším meraním zaťaženia procesora - percento.

Systém Windows počíta zaťaženie odlišne od systému Linux a keďže systém Windows je v minulosti populárnejší na pracovnej ploche, definíciu zaťaženia v systéme Windows väčšina používateľov počítačov všeobecne chápe. Väčšina používateľov systému Windows videla, ako sa zaťaženie systému v správcovi úloh zobrazuje v rozmedzí od 0% do 100%.

Vo Windows je to odvodené skúmaním toho, ako „zaneprázdnený“ je Proces nečinnosti systému je a pomocou inverznej hodnoty predstavuje zaťaženie systému. Napríklad, ak nečinné vlákno vykonáva 99% času, zaťaženie procesora v systéme Windows by bolo 1%. Táto hodnota je ľahko pochopiteľná, ale poskytuje menej celkových podrobností o skutočnom stave systému.

V systéme Linux je priemer záťaže namiesto toho reprezentovaný desatinným číslom začínajúcim na 0.00. Hodnota môže byť zhruba definovaná ako počet procesov za poslednú minútu, ktoré museli čakať na svoje vykonanie. Na rozdiel od Windows priemer zaťaženia systému Linux nie je okamžitým meraním. Zaťaženie sa udáva v troch hodnotách - priemer jednej minúty, priemer päť minút a priemer pätnásť minút.

Pochopenie priemernej záťaže v systéme Linux

Spočiatku sa táto ďalšia vrstva podrobností javí ako zbytočná, ak chcete jednoducho zistiť aktuálny stav zaťaženia procesora vo vašom systéme. Ale keďže sú uvedené priemery troch časových období, nie okamžité meranie, môžete získať úplnejšiu predstavu o zmene zaťaženia systému v priebehu času jediným pohľadom na tri čísla

Zobrazenie priemeru záťaže je jednoduché. Na príkazovom riadku môžete použiť rôzne príkazy. Jednoducho použijem príkaz „w“:

root @ virgo [~] # ž
21:08:43 až 38 dní, 4:34, 4 používatelia, priemer zaťaženia: 3.11, 2.75, 2.70

Zvyšok príkazu zobrazí, kto je prihlásený a čo vykonáva, ale pre naše účely sú tieto informácie irelevantné, takže som ich orezal z vyššie uvedeného displeja.

V ideálnom systéme by žiadny proces nemal byť brzdený iným procesom (alebo vláknom), ale v jednom procesorovom systéme, k tomu dôjde, keď zaťaženie stúpne nad 1.00.

Slová „systém s jedným procesorom“ sú tu neuveriteľne dôležité. Pokiaľ nepoužívate starodávny počítač, váš počítač má pravdepodobne viac jadier CPU. V zapnutom stroji mám 16 jadier:

root @ virgo [~] # nproc
16

V tomto prípade je priemerná záťaž 3.11 nie je vôbec alarmujúca. Znamená to jednoducho, že na vykonanie boli pripravené o niečo viac ako tri procesy a boli prítomné jadrá CPU, ktoré ich vykonávanie zvládli. V tomto konkrétnom systéme by záťaž musela dosiahnuť 16, aby sa mohla považovať za „100%“.

Ak to chcete preložiť na percentuálnu záťaž systému, môžete použiť tento jednoduchý, ak nie tupý príkaz:

mačka / proc / loadavg | rez -c 1-4 | echo "scale = 2; ($ (Táto sekvencia príkazov izoluje priemer 1 minúty pomocou funkcie cut a echos ju vydelí počtom jadier procesora prostredníctvom kalkulátora príkazového riadku bc na odvodenie percenta.

Táto hodnota nie je nijako vedecká, ale poskytuje približnú približnú hodnotu zaťaženia procesora v percentách.

Minúta na učenie, celý život na zvládnutie

V predchádzajúcej časti som uviedol „100%“ príklad zaťaženia 16.0 na 16-jadrovom systéme CPU v úvodzovkách, pretože výpočet zaťaženia v systéme Linux je o niečo hmlistejší ako v systéme Windows. Správca systému musí mať na pamäti, že:

Z tohto dôvodu nie je zvládnutie zaťaženia procesora v systéme Linux úplne empirickou záležitosťou. Aj keby to bolo, samotné zaťaženie procesora nie je adekvátnym meraním celkového využitia systémových prostriedkov. Skúsený správca systému Linux ako taký zváži zaťaženie procesora v zhode s inými hodnotami, ako je napríklad čakanie I / O a percento jadra v porovnaní so systémovým časom.

I / O Počkajte

I / O čakanie je najľahšie viditeľné pomocou príkazu „top“:

Na snímke vyššie som zvýraznil hodnotu čakania I / O. Toto je percento času, ktoré CPU čakalo na dokončenie vstupných alebo výstupných príkazov. Toto zvyčajne naznačuje vysokú aktivitu disku. Aj keď samotné vysoké percento čakania nemusí výrazne degradovať úlohy spojené s procesorom, zníži výkon I / O pre ostatné úlohy a spôsobí, že sa systém bude cítiť pomalý.

Vysoké čakanie I / O bez zjavnej príčiny môže znamenať problém s diskom. Pomocou príkazu „dmesg“ skontrolujte, či sa nevyskytli nejaké chyby.

Jadro vs. Systémový čas

Vyššie uvedené hodnoty predstavujú čas používateľa a jadra (systému). Toto je rozpis celkovej spotreby času CPU používateľmi (t. J.e. aplikácie atď.) a jadro (i.e. interakcia so systémovými zariadeniami). Vyšší čas používateľa bude znamenať väčšie využitie procesora programami, zatiaľ čo vyšší čas jadra bude znamenať viac spracovania na úrovni systému.

Celkom priemerné zaťaženie

Naučiť sa vzťahu priemeru záťaže k skutočnému výkonu systému chvíľu trvá, ale čoskoro uvidíte zreteľnú koreláciu. Vyzbrojení zložitosťou metrík výkonu systému budete môcť robiť lepšie rozhodnutia o aktualizáciách hardvéru a využití programových prostriedkov.

Hry Najlepšie hry z príkazového riadku pre systém Linux
Najlepšie hry z príkazového riadku pre systém Linux
Príkazový riadok nie je pri použití systému Linux iba vaším najväčším spojencom - môže byť tiež zdrojom zábavy, pretože ho môžete použiť na hranie mno...
Hry Najlepšie aplikácie na mapovanie gamepadu pre Linux
Najlepšie aplikácie na mapovanie gamepadu pre Linux
Ak radi hráte hry v systéme Linux s gamepadom namiesto typického systému vstupu pre klávesnicu a myš, máte tu niekoľko užitočných aplikácií. Mnoho hie...
Hry Užitočné nástroje pre hráčov systému Linux
Užitočné nástroje pre hráčov systému Linux
Ak radi hráte hry v systéme Linux, je pravdepodobné, že ste na vylepšenie herného zážitku použili aplikácie a pomôcky ako Wine, Lutris a OBS Studio. O...