Potrebujem ale vysvetlit co znamenaju jednotlive polozky z tohoto TOP vypisu:
top - 19:23:35 up 6 days, 22:18, 2 users, load average: 4.22, 4.39, 4.37 Tasks: 86 total, 4 running, 82 sleeping, 0 stopped, 0 zombie Cpu(s): 30.5% us, 5.8% sy, 0.0% ni, 60.5% id, 0.0% wa, 0.8% hi, 2.3% si Mem: 3893292k total, 3718708k used, 174584k free, 95528k buffers Swap: 1124508k total, 2600k used, 1121908k free, 2382272k cached
uptime 19:23:35 up 6 days, 22:18
2 users - prihlaseny 2 uzivatelia
load average: 4.22, 4.39, 4.37 - ukazuje cpu utilization (nieco ako zatazenie) za poslednych 1, 5 a 15 minut, cislo samotne znamena kolkokrat vykonejsi procesor by si potreboval aby bolo zatazenie 100% a ziaden proces nemusel cakat na pridelenie procesoroveho casu. Tvoje je 4 takze by si potreboval 4x vykonejsi procesor ako mas. To znamena ze momentalne ti procesy bezia pomalsie ako by bezali keby bezali samostatne na tvojom pc (t.j. ziadne ine procesy). Ak je zatazene mensie ako 1 tak to znamena ze PC este stale stiha. Ale nie je to nic kriticke, ak by to bol webserver tak klient dostane html stranku namiesto za 10ms za 40ms.
>> Tasks: 86 total, 4 running, 82 sleeping, 0 stopped, 0 zombie
85 procesov,
4 bezia,
82 spi (napr. caka na stlacenie klavesy, atd...),
0 je zastavenych (signalom 15 mozes zastavit proces, v konzole napr. ctrl+Z, obnovis cez fg)
0 zombie - nic zvlastne, vyskytuje sa to u child procesov ktore vznikly forkom ineho procesu (typicky servre, desktopove aplikacie moc nie), viac na http://en.wikipedia.org/wiki/Zombie_process
>> Cpu(s): 30.5% us, 5.8% sy, 0.0% ni, 60.5% id, 0.0% wa, 0.8% hi, 2.3% si
skutocne zatazenie procesora, t.j. aka cinnost kolko zabera procesoru, sucet je 100% (okrem ni)
30.5% us - kod vykonavany v user mode (bezne procesy)
5.8% sy - kod vykonavany v kernel mode (drivre, sprava pamate, etc)
0.0% ni - percento procesov ktorym uzivatel zvysil prioritu
60.5% id - idle. vsetky i/o operacie, disk, siet - dost vysoke cislo, znamena to kolko percent casu procesy nic nerobia len cakaju na napr. nacitanie dat z disku alebo siete, ked das napr. kopirovat pomocou cp 100GB z 1 disku na druhy, zatazenie procesora bude minimalne ale idle bude vysoke lebo sa vacsinou bude cakat na disk
0.0% wa - nieco ako idle ale len ciste i/o operacie, neviem preco ti to ukazuje 0, asi to mas rozbyte
0.8% hi - hw prerusenia
2.3% si - sw prerusenia
>> Mem: 3893292k total, 3718708k used, 174584k free, 95528k buffers
pamat
3893292k total - spolu 4GB
3718708k used - pouzite skoro 4GB (newbs su z tohoto casto zmateny ale toto je uplne normalne! ak chces aby pouzival menej pamate tak ju vyber a predaj ju, nepouzita pamat sa pouziva ako diskova cache)
174584k free - volna 175 MB
95528k buffers - buffre pouzite kernelom 95 MB
>> Swap: 1124508k total, 2600k used, 1121908k free, 2382272k cached
vyuzitie swapu, pocita sa vsetko co je primontovane (grep swap /etc/fstab) ako swap
1124508k total - 1GB swap
2600k used - 3 MB pouzite
1121908k free - 1 GB volne
2382272k cached - 2.3 GB v cachi (v pamati)
pocitanie obsadenej pamate ale vobec nieje take jednoduche ako A+B-C, pre viac info o pamati pozri /proc/meminfo, cize nieco ako tvrdenie Program X zabera Y pamate na linuxe a Z pamate na windows je ako porovnavat hrusky a jablka.
TO znamena ze mam vytazeny procak na 100% a potreboval by som 5x rychlejsi procak. Omg. :)
Posledna otazka na teba alebo Vas da sa nejak uvolnit zatazenie procesoora (nejak obmedzit tie lddle spiace procesyyy?
Nevieme ktore procesy ti zeru tolko vykonu, hod sem vypis tohoto: ps aux
Tieto herne servre (procesy) su casto sirene ako binarky a su neoptimalne skompilovane, v takom pripade treba prekompilovat (ak je to closed source tak sa to neda) alebo stiahnut novsiu verziu atd... Ak by to nebolo ani jedno z toho, je treba zistit kde to caka (iotop, latencytop), je mozne ze niektory proces intenzivne vyzuiva /tmp alebo /var alebo iny adresar na docasne subory, mozno by pomohlo primontovat ten adresar ako ramdisk. Ak ani to nepomoze, treba rychlejsi disk a sietovu kartu. Najprv by som ale poprosil vypis toho ps aux
http://www.pastebin.sk/10082/
NO dalsia vec ktoru som sa dozvedel ze mam kernely pracujuce na frekvencii 250hz a ze sa daju prekompilovat na 1000hz.
Tym padom by som vylacil zo servera stalych 1000FPS, lebo teraz mi to dropuje z 1000 na 200FPS
btw napisem menuconfig a:
[root@server4 ~]# menuconfig
bash: menuconfig: command not found
(myslim cez SSH)
Cpu(s): 30.5% us, 5.8% sy, 0.0% ni, 60.5% id, 0.0% wa, 0.8% hi, 2.3% si
kolko je celkové zaťaženie CPU v tomto momente???
Je to 30.5%???
ale mas 60% idle a to vyrazne spomaluje ostatne procesy, takze zatazenie je defakto 100%
Priklad, Keby si mal zatazenie cpu 1% a idle 99%, a spustis firefox, aj tak sa bude otvarat celu vecnost (napr. 30s namiesto 5s).
Idle je percentualna necinnost CPU. Ak by bol nejaky problem, napriklad disk prepnuty do PIO modu, tak by to asi nevyskocilo v idle.
Ale simulovat to nebudem :)