A terhelési átlag a UNIX rendszereken a rendszer terhelési átlaga , annak a munkának a mértéke, amelyet a rendszer az adott időszakban végez. Ez elérhető a felső vagy uptime parancsot , vagy azon keresztül a rendszer file / proc / loadavg.
Az első szám, az 1,27, egy perc alatt kiszámított átlagos terhelés, amely 5 másodpercenként frissül. A második számot öt perc alatt, a harmadikat tizenöt perc alatt számoljuk. Nagyon jó mutatója a rendszer (túl) terhelésének, de nem azonosítja az okot.
A betöltés a processzort használó vagy arra váró folyamatok száma, valamint a legtöbb rendszerben az elakadt folyamatok száma. Ez megnehezíti a szám értelmezését.
A ténylegesen futó folyamatok maximális száma a processzorok számától függ: 1 egy processzorhoz, 2 kettős processzorhoz stb.
A 2-es terhelés azt jelzi, hogy egyetlen folyamatnak folyamatban van egyetlen processzor, de lehet, hogy csak két folyamat fut kettős processzoron.
Egyetlen processzor esete és rendszeroptimalizálás (az alkalmazások optimalizálásával szemben, soha nem szabad elhanyagolni)
<1 terhelés azt jelzi, hogy nincs elég folyamat a gép teljes elfoglalására. Nincs tehát „verseny” a processzorért; ez utóbbi gyorsan végrehajtja az utasításokat és felszabadul. Teljesítményprobléma tehát minden bizonnyal abból adódik, hogy feldolgozzuk azokat a kérelmeket, amelyek nem jutnak el elég gyorsan a géphez.
→ A teljesítmény javítása érdekében: hajtson végre több egyidejű feladatot, növelje a kérések áteresztőképességét stb.
Az 1-es állandó terhelés azt jelenti, hogy mindig csak egy folyamat volt működő állapotban. Ezért egyetlen folyamat sem "várta meg a sorát", hogy a processzor feldolgozza.
Ha azonban egyetlen folyamat létezik, amely folyamatosan foglalkoztatja a processzort, az potenciálisan gyorsabban futhat egy erősebb processzoron. Sőt, még ha a sor üres is, a "folyamatban lévő" folyamatnak nagyobb sebességre lehet szüksége .
→ A teljesítmény javítása érdekében: ha csak egy folyamat van, adjon hozzá többet és figyelje meg a terhelést. Ellenkező esetben az egyensúly megteremtődik, és még sok tennivaló a processzor, a memória és / vagy az I / O fejlesztésével jár.
Ez nem feltétlenül jelenti azt, hogy egy gyorsabb processzor megoldaná a problémát. Valójában a terhelés általában magában foglalja a bemenet-kimenetre váró folyamatokat . Ebben az esetben tehát egy folyamatot megszámlálunk, de azért "blokkoljuk", mert I / O eszközre "vár", és nem a processzorra.
Ezért figyelnünk kell a parancsok más megjelenítésére, például a top ; ahol a CPU teljes felhasználása is megjelenik. Ha a processzor 90% -ban tétlen, de a terhelés nagy, akkor a gyorsabb processzor ezen nem változtat. Ha 100% -os felhasználásnál "beragad", akkor bizonyosan ez az oka.
(Más szavakkal: a> 1 terhelés csak akkor jelzi a processzor vitáját, és csak akkor, ha az alapjárat = 0.0.)
→ A teljesítmény javítása érdekében: vizsgálja meg a CPU teljes kihasználtsági arányát. Ha lehetséges, minimalizálja az I / O-t (elegendő a RAM mennyisége?). Ezután cselekedjen az azonosított gyenge pontokon.
A megjelenített átlag súlyozással kerül kiszámításra: minél újabb a mérés, annál fontosabb. A súlycsökkenés exponenciális. Ez a finomság az esetek többségében figyelmen kívül hagyható.
A Ferrari és Zhou összehasonlító vizsgálata a különböző terhelési indexekről azt mutatja, hogy a folyamatsor várakozási idő hosszán alapuló terhelési információk hatékonyabban ismerik a rendszer teljes terhelését, valószínűleg azért, mert ha egy gazdagépet erősen terhelnek, a CPU-használat folyamatosan csúcsra jut 100% -on, mivel a várakozási sor pontosabb és méretezhetőbb értékelést adhat a rendszer torlódásairól. Például két 100% -os CPU-kihasználtságú rendszer, az egyik három függőben lévő, a másik hat függőben lévő folyamat mellett nyilvánvalóan nagyon eltérő módon van betöltve.