Portál AbcLinuxu, 11. května 2025 18:06

Dotaz: Load Average na Multi-processor(core) systeme

23.3.2011 08:42 xsustek | skóre: 6
Load Average na Multi-processor(core) systeme
Přečteno: 839×
Odpovědět | Admin
Caute,

chcel by som sa opytat ukazatel Load Average na multiprocessor systeme. Ak som spravne pochopil, ukazuje priemerny pocet procesov vo fronte na CPU vratane prave beziaceho. (Napr. Load Avg pre 1 proc. = 2 -> jeden bezi, druhy caka). Na multiprocesorovom systeme je to ale komplikovanejsie. Kazdy procesor ma vlastnu hodnotu load avg a navyse je tam celkovy priemer tychto hodnout. Nerozumiem ako mam rozumiet tomuto priemeru. Intuitivne by som z vypisu nizsie povedal, ze je to aritmeticky priemer hodnot pre kazdy procesor. Ale z clankov som sa dozvedel, ze priemerny load avg na multiprocesorovom systeme je pocet vsetkych procesov vo fronte (running, runable). Teda pre 4 procesorovy system by load avg pod 4 malo znamenat, ze procesory "nie su na plno vytazene". Mozete mi to niekto vysvetlit?

Cpu states: CPU LOAD USER NICE SYS IDLE BLOCK SWAIT INTR SSYS 0 1.95 45.5% 24.8% 28.7% 1.0% 0.0% 0.0% 0.0% 0.0% 1 1.97 43.6% 32.7% 23.8% 0.0% 0.0% 0.0% 0.0% 0.0% 2 1.95 70.3% 5.0% 22.8% 2.0% 0.0% 0.0% 0.0% 0.0% 3 1.86 82.2% 0.0% 17.8% 0.0% 0.0% 0.0% 0.0% 0.0% --- ---- ----- ----- ----- ----- ----- ----- ----- ----- avg 1.93 59.8% 15.7% 23.5% 1.0% 0.0% 0.0% 0.0% 0.0%

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Řešení 1× (methuz)
23.3.2011 08:51 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Odpovědět | | Sbalit | Link | Blokovat | Admin
ospravedlnujem sa za vypis, tu je este jeden
Cpu states:
CPU   LOAD   USER   NICE    SYS   IDLE  BLOCK  SWAIT   INTR   SSYS
 0    1.21  71.3%   0.0%  15.2%  13.6%   0.0%   0.0%   0.0%   0.0%
 1    1.21  62.1%   0.0%  15.6%  22.4%   0.0%   0.0%   0.0%   0.0%
 2    1.21  69.3%   0.2%  10.6%  20.0%   0.0%   0.0%   0.0%   0.0%
 3    1.22  75.4%   0.0%  11.2%  13.4%   0.0%   0.0%   0.0%   0.0%
---   ----  -----  -----  -----  -----  -----  -----  -----  -----
avg   1.21  69.6%   0.0%  13.0%  17.4%   0.0%   0.0%   0.0%   0.0%
23.3.2011 12:43 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Tohle ale není load average. To jsou procentuální podíly času strávené procesorem v jednotlivých stavech.
23.3.2011 12:44 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Mal som na mysli stlpec LOAD, a pod nim riadok AVG
23.3.2011 12:45 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Tak nic, přehlédl jsem sloupeček LOAD. Ale těžko říct, co u tohoto konkrétního nástroje znamená, když ani nevíme, o jaký nástroj jde.
23.3.2011 18:08 polymorf | skóre: 14 | blog: tar_zxpf
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Mne loadavg ukazuje bludy uz asi rok alebo dva. Odporucam pocitat kernel jiffies pre jednotlive jadra za nejaky jednotkovy cas (4. cislo za nazvom cpu /proc/stat, vysledok je (100-pocet) lebo to je akoze idle).
23.3.2011 12:40 Sten
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Odpovědět | | Sbalit | Link | Blokovat | Admin
S load average pro jednotlivé procesory se dost blbě počítá, protože fronta je sdílená, ale běžící proces je jenom pro ono CPU. Nevím ale, co vám vypisuje ty loady, v /proc/loadavg (a ve výpisech příkazů w a uptime) je jenom společný load average pro všechny procesory (tj. pro celou frontu) a tam platí to, že pokud jsou ta čísla menší než počet procesorů, tak se některé procesory flákají.
23.3.2011 12:50 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
prikladam vypisy vsetkych - top, w, uptime - load avg je identicky ( nie uplne, lebo vypisy su v mierne odlisnom case) ale je jasne ze to je ten isty ukazatel a tiez je vidiet, ze je pocitany ako priemer na ukazatela LOAD na jednotlivych procesoroch. Co potom ukazuju tie jednotlive LOAD ukazatele???

tento vypis je na HP-UX v top
Load averages: 0.36, 0.41, 0.47
432 processes: 378 sleeping, 53 running, 1 zombie
Cpu states:
CPU   LOAD   USER   NICE    SYS   IDLE  BLOCK  SWAIT   INTR   SSYS
 0    0.33  10.9%   0.0%   4.0%  85.1%   0.0%   0.0%   0.0%   0.0%
 1    0.38   3.9%   0.0%   5.9%  90.2%   0.0%   0.0%   0.0%   0.0%
 2    0.39  13.7%   0.0%   4.9%  81.4%   0.0%   0.0%   0.0%   0.0%
 3    0.33   3.9%   0.0%   3.9%  92.2%   0.0%   0.0%   0.0%   0.0%
---   ----  -----  -----  -----  -----  -----  -----  -----  -----
avg   0.36   8.7%   0.0%   4.9%  86.4%   0.0%   0.0%   0.0%   0.0%
tu je uptime
$ uptime
7:46am  up 149 days, 20:37,  23 users,  load average: 0.31, 0.39, 0.46
toto je vo vypise 'w'
$ w
  7:47am  up 149 days, 20:38,  23 users,  load average: 0.33, 0.39, 0.46
23.3.2011 12:56 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Co je load average, to je jasné: průměrný počet aktivních procesů (přičemž je samozřejmě potřeba specifikovat, co znamená aktivní a jaký průměr máme na mysli). Tedy aspoň na Linuxu - na některých jiných systémech se to ještě dělí počtem procesorů (tak, aby kritická hodnota byla vždy 1); nevím, která varianta platí na HP-UX. Otázkou spíš je, co jsou ty hodnoty, které vám to ukazuje u jednotlivých procesorů; ale to by mělo být popsáno v dokumentaci toho topu.
23.3.2011 13:37 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
To je jasne, ale pre viac procesorove systemy je to trochu komplikovanejsie. Podla definicie, by to mali byt vsetky procesy ktore su 'aktivne' a v pripade ze, toto cislo je mensie ako pocet procesorov, malo by to znamenat, ze 'procesory nie su plne vytazene' v tom zmysle, ze procesy nemusia na ne cakat: Priklad 4 procesory Load Avg 3 = procesy necakaju.

Avsak v tych vypisoch to skor vypada, ze hodnota 1, nejak reprezentuje plne zatazenie. Pre jeden konkretny procesor to dava zmysel, ale IMHO si myslim, ze ten priemerny load average na tomto systeme, ak je vacsie ako 1 znamena 'pretazenie'- a teda v priemere je na 1 procesor viac aktivnych procesorov. I ked toto vysvetlenie nekoresponduje s definiciou. Ak ma niekto namietky tam ma opravte prosim.
23.3.2011 13:42 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Přečtěte si, prosím, ještě jednou příspěvek, na který jste reagoval (zejména druhou větu).
23.3.2011 13:47 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Prepacte, som prehliadol, ze ste pisali o procesoroch a nie o procesoch. To by davalo zmyslel. Napada vas este co by mohli znamenat hodnoty Load pre jednotlive procesy? Je mozne ze ma kazdy procesor vlasnu frontu? Ak nie, ako je mozne ze sa hodnoty lisia?
23.3.2011 13:52 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Nemám tušení. Zkuste se podívat, jestli to není vysvětleno v dokumentaci.
23.3.2011 13:56 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
OK. Praveze nieje. Mam vedla seba velku 1000 stranovu knihu HP-UX tuning and performance, ale nieje to tam :(. Aj tak diky.
AraxoN avatar 23.3.2011 15:52 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
K tomu loadu pre jednotlivé procesory - niečo sa mi marí, že je možné priradiť konkrétnym procesom, aby sa vykonávali len na konkrétnom procesore (resp. procesorovom jadre). Z toho asi môže vzniknúť rôzny load pre rôzne procesory. Hovorí sa tomu "Affinity".
23.3.2011 17:51 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Teoreticky to možné je, ale moc bych na to nesázel. CPUAffinity se používá spíš výjimečně, např. když chci oddělit zvlášť procesor(y) pro klíčového démona (databáze, virtualizace apod.) a pro zbytek systému.
23.3.2011 18:23 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Nemate niekto SMP stroj? Chcel by som vidiet ten vypis z topu pre iny UNIX. Ci su hodnoty LOAD pre vsetky procesory rovnake, alebo nie. Na stroji o ktorom som pisal, bezi pravdepodobne optimalizovany na SMP Oracle, takze teoreticky by tam spominane CPU Affinity mohlo byt pouzite, ale mozno aj nie.
23.3.2011 18:54 mato
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
11.23ka pri top -Ps1 (v tomto pripade nie su zadefinovany psety):

Cpu states:
PSET  CPU   LOAD   USER   NICE    SYS   IDLE  BLOCK  SWAIT   INTR   SSYS
   0    0   0.01   0.0%   0.0%   0.0% 100.0%   0.0%   0.0%   0.0%   0.0%
   0    1   0.02   0.0%   0.0%   0.0% 100.0%   0.0%   0.0%   0.0%   0.0%
   0    2   0.02   0.0%   0.0%   0.0% 100.0%   0.0%   0.0%   0.0%   0.0%
   0    3   0.01   0.0%   0.0%   0.0% 100.0%   0.0%   0.0%   0.0%   0.0%
   0    4   0.01   0.0%   0.0%   0.0% 100.0%   0.0%   0.0%   0.0%   0.0%
   0    5   0.01   0.0%   0.0%   0.0% 100.0%   0.0%   0.0%   0.0%   0.0%
   0    6   0.02   1.0%   0.0%   1.0%  98.1%   0.0%   0.0%   0.0%   0.0%
   0    7   0.01   1.0%   0.0%   1.9%  97.1%   0.0%   0.0%   0.0%   0.0%
----        ----  -----  -----  -----  -----  -----  -----  -----  -----
avg         0.01   0.0%   0.0%   1.0%  99.0%   0.0%   0.0%   0.0%   0.0%
Pre HPUX by som sa skor obratil na HPUX fora. Pozri sa napriklad sem
AraxoN avatar 23.3.2011 19:00 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Takto to vyzerá na SMP serveri pod linuxom 2.6.34:
top - 18:57:50 up 202 days,  9:20,  3 users,  load average: 0.50, 0.39, 0.28
Tasks: 147 total,   2 running, 145 sleeping,   0 stopped,   0 zombie
Cpu0  :  1.6%us,  0.3%sy,  0.0%ni, 98.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  : 20.1%us,  1.6%sy,  0.0%ni, 78.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  0.0%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu4  :  2.0%us,  0.3%sy,  0.0%ni, 97.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  : 10.2%us,  1.0%sy,  0.0%ni, 88.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  :  5.3%us,  0.3%sy,  0.0%ni, 94.4%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  10244536k total, 10017576k used,   226960k free,   599768k buffers
Swap:  4000180k total,        0k used,  4000180k free,  8321308k cached
Pre jednotlivé procesory ráta len percentá v akom stave trávia svoj čas, ale loadavg je spoločný.
24.3.2011 07:34 faha
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme

Linux sl01.XXX.cz 2.6.32-71.18.2.el6.x86_64 #1 SMP Tue Mar 8 15:00:52 CST 2011 x86_64 x86_64 x86_64 GNU/Linux

---

top - 08:29:01 up 1 day, 15:05,  1 user,  load average: 0.32, 0.48, 0.41
Tasks: 311 total,   1 running, 310 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.7%us,  3.0%sy,  0.0%ni, 87.4%id,  8.9%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  1.3%us,  3.5%sy,  0.0%ni, 95.2%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  0.3%us,  0.3%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.3%us,  0.7%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu4  :  1.3%us,  2.6%sy,  0.0%ni, 91.9%id,  3.9%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu5  :  3.7%us,  0.5%sy,  0.0%ni, 95.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  :  0.8%us,  1.2%sy,  0.0%ni, 98.1%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  :  2.0%us,  1.7%sy,  0.0%ni, 96.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu8  :  1.3%us,  1.0%sy,  0.0%ni, 81.5%id, 16.2%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu9  :  0.3%us,  0.3%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu10 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu11 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu12 :  0.7%us,  1.6%sy,  0.0%ni, 38.6%id, 59.2%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu13 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu14 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu15 :  2.2%us,  1.4%sy,  0.0%ni, 96.5%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  12320100k total,  9079716k used,  3240384k free,    41276k buffers
Swap: 25165816k total,        0k used, 25165816k free,   108200k cached

25.3.2011 06:58 xsustek | skóre: 6
Rozbalit Rozbalit vše Re: Load Average na Multi-processor(core) systeme
Tak nakoniec ma skutocne kazdy procesor (jadro) vlastnu frontu. Len pre zaujimavost tu je odpoved :

http://docs.hp.com/en/5965-4643/ch01s13.html

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.