Praćenje

Razumijevanje prosjeka opterećenja na Linuxu

Razumijevanje prosjeka opterećenja na Linuxu
Prosjek opterećenja mjeri količinu posla u odnosu na besplatne procesorske cikluse dostupne na sistemskom procesoru. U ovom članku definirat ću pojam, pokazati kako Linux izračunava ovu vrijednost, a zatim pružiti uvid u to kako interpretirati opterećenje sustava.

Različite metode izračunavanja opterećenja

Prije nego što uđemo u prosjeke opterećenja Linuxa, moramo istražiti različite načine na koje se izračunava opterećenje i pozabaviti se najčešćim mjerenjem opterećenja procesora - postotak.

Windows računa opterećenje drugačije od Linuxa, a budući da je Windows u prošlosti bio popularniji na radnoj površini, Windows definicija učitavanja uglavnom razumije većinu korisnika računala. Većina korisnika Windowsa vidjela je kako se učitavanje sustava u upravitelju zadataka prikazuje kao postotak u rasponu od 0% do 100%.

U sustavu Windows to se dobiva ispitivanjem koliko su "zauzeti" Proces mirovanja sustava je i koristi inverzno za predstavljanje opterećenja sustava. Na primjer, ako se neaktivna nit izvršava 99% vremena, opterećenje procesora u sustavu Windows bilo bi 1%. Ovu je vrijednost lako razumjeti, ali pruža manje općenitih detalja o stvarnom statusu sustava.

U Linuxu je prosjek opterećenja umjesto toga predstavljen decimalnim brojem koji počinje s 0.00. Vrijednost se može približno definirati kao broj procesa tijekom protekle minute koji su morali čekati svoj red za izvršenje. Za razliku od Windowsa, prosjek učitavanja Linuxa nije trenutno mjerenje. Opterećenje se daje u tri vrijednosti - prosjek od jedne minute, prosjek od pet minuta i prosjek od petnaest minuta.

Razumijevanje prosjeka opterećenja u Linuxu

U početku se čini da je ovaj dodatni sloj detalja nepotreban ako jednostavno želite znati trenutno stanje opterećenja procesora u vašem sustavu. No budući da su dani prosjeci za tri vremenska razdoblja, a ne trenutno mjerenje, možete dobiti potpuniju predstavu o promjeni opterećenja sustava tijekom vremena jednim pogledom od tri broja

Prikaz prosjeka opterećenja je jednostavan. Na naredbenom retku možete koristiti razne naredbe. Jednostavno koristim naredbu "w":

korijen @ djevica [~] # w
21:08:43 gore 38 dana, 4:34, 4 korisnika, prosjek opterećenja: 3.11, 2.75, 2.70

U ostatku naredbe prikazat će se tko je prijavljen i što izvršavaju, ali za naše su potrebe ovi podaci nebitni, pa sam ih isjekao s gornjeg zaslona.

U idealnom sustavu nijedan proces ne bi trebao zadržavati drugi postupak (ili nit), već u jednom procesorskom sustavu, to se događa kada opterećenje prelazi 1.00.

Riječi "jednoprocesorski sustav" ovdje su nevjerojatno važne. Ako ne koristite drevno računalo, vaš stroj vjerojatno ima više procesorskih jezgri. U stroju na kojem sam, imam 16 jezgri:

korijen @ djevica [~] # nproc
16

U ovom slučaju, prosječno opterećenje 3.11 uopće nije alarmantan. To jednostavno znači da je nešto više od tri procesa bilo spremno za izvršenje i da su CPU jezgre bile prisutne za njihovo izvršavanje. Na ovom određenom sustavu, opterećenje bi trebalo doseći 16 da bi se uzelo u obzir pri "100%".

Da biste to preveli na opterećenje sustava temeljeno na postotku, mogli biste upotrijebiti ovu jednostavnu, ako ne i tupu naredbu:

mačka / proc / loadavg | izrezati -c 1-4 | odjek "ljestvica = 2; ($ (Ova sekvenca naredbi izolira 1-minutni prosjek rezanjem i odjekuje ga, podijeljeno s brojem CPU jezgri, kroz bc, kalkulator naredbenog retka, kako bi se izvukao postotak.

Ova vrijednost ni u kojem slučaju nije znanstvena, ali pruža grubu aproksimaciju opterećenja procesora u postocima.

Minuta za učenje, život za svladavanje

U prethodnom odjeljku stavio sam primjer "100%" opterećenja od 16.0 na 16 jezgri CPU-a u navodnicima, jer je izračun opterećenja u Linuxu malo nebulozniji od Windowsa. Administrator sustava mora imati na umu da:

Zbog toga rukovanje opterećenjem procesora na Linux sustavu nije u potpunosti empirijska stvar. Čak i da jest, samo opterećenje procesora nije adekvatno mjerenje ukupne iskorištenosti resursa sustava. Kao takav, iskusni Linux administrator razmotrit će opterećenje CPU-a zajedno s drugim vrijednostima kao što su I / O čekanje i postotak jezgre u odnosu na sistemsko vrijeme.

I / O Čekaj

Ulazno-izlazno čekanje najlakše se vidi putem naredbe "top":

Na gornjoj snimci zaslona istaknuo sam vrijednost I / O čekanja. Ovo je postotak vremena koje je CPU čekao da završi ulazne ili izlazne naredbe. To obično ukazuje na veliku aktivnost diska. Iako sam visok postotak čekanja možda neće značajno pogoršati zadatke vezane uz CPU, smanjit će I / O performanse za druge zadatke i učinit će da se sustav osjeća tromo.

Visoko I / O čekanje bez očitog uzroka može ukazivati ​​na problem s diskom. Upotrijebite naredbu "dmesg" da vidite jesu li se dogodile pogreške.

Kernel vs. Sistemsko vrijeme

Gore istaknute vrijednosti predstavljaju vrijeme korisnika i jezgre (sustava). Ovo je raščlamba ukupne potrošnje CPU vremena od strane korisnika (tj.e. aplikacije itd.) i jezgru (tj.e. interakcija sa sustavnim uređajima). Veće korisničko vrijeme ukazat će na veću upotrebu CPU-a kod programa gdje će veće vrijeme jezgre ukazivati ​​na više obrade na razini sustava.

Prilično prosječno opterećenje

Učenje odnosa prosjeka opterećenja sa stvarnim performansama sustava zahtijeva vrijeme, ali uskoro ćete vidjeti jasnu korelaciju. Naoružani zamršenošću metrike performansi sustava, moći ćete donijeti bolje odluke o nadogradnji hardvera i iskorištavanju programskih resursa.

Kako prikazati OSD prekrivač u aplikacijama i igrama na cijelom zaslonu za Linux
Igranje igara preko cijelog zaslona ili upotreba aplikacija u režimu preko cijelog zaslona bez ometanja može vas odsjeći od relevantnih informacija o ...
Top 5 karata za hvatanje igara
Svi smo vidjeli i voljeli streaming reprodukcije na YouTubeu. PewDiePie, Jakesepticye i Markiplier samo su neki od najboljih igrača koji su zaradili m...
Kako razviti igru ​​na Linuxu
Prije deset godina malo je Linux korisnika predviđalo da će njihov omiljeni operativni sustav jednog dana biti popularna platforma za igranje komercij...