On Fri, 9 Dec 2005, Octavian Rasnita wrote:
Ok, atunci poate ca ma poti lamuri de ce totusi cand dau comanda:
ps aux | grep program
...imi afiseaza ceva de genul:
root 16217 30.6 0.7 10060 7432 ? Ss 10:00 0:47
/usr/bin/perl /dir/program
Nu inseamna ca acest program ocupa peste 30% din microprocesor?
Nu. Inseamna ca atit crede ps ca ia din CPU acel program. ps
ruleaza doar odata si trebuie sa ruleze rapid, astfel ca timpii
consumati din CPU sint raportati la niste timpi totali destul de mici.
Sa dau un exemplu. Premise:
1. top face acele statistici la 5 secunde by default, dar il
poti pune sa-si faca si mai des. Astfel ca daca in cele 5 secunde
procesul consuma puternic CPU astfel:
* de la 0.10 la 0.15;
* de la 0.75 la 1.00;
* de la 3.75 la 4.25;
* de la 4.90 la 5.00.
2. procesul a rulat deja de 10 minute iar el a cerut (si rulat)
in acest interval 50% din timpii de CPU.
Astfel, top va zice ca acel proces a rulat:
(0.05+0.25+0.5+0.1)/5.00 * 100 = 18% din timpul in care a calculat el
iar ps va spune ca a rulat 50% (timpul in care a rulat efectiv adica
timpii acordati de kernel acelui proces pentru a rula / timpul de cind a
fost pornit procesul).
Deci totul se reduce la timpul in care culegi esantioanele si la
numarul esantioanelor culese. E ca la probabilitati: daca din 6 bile de
culori diferite extragi tot timpul cite o bila vei vedea ca pe masura ce
inaintezi cu numarul extragerilor procentul in care ai nimerit cite una
dintre culori va fi egal cu 1/6 din numarul extragerilor. Asa si aici,
cu cit perioada de esantionare creste cu atit media este mai aproape de
valoarea ei reala (da, acel numar este o medie, nu asa simplu cum am
calculat-o eu ca depinde de multi parametri, insa e o medie).
Lamurit cit de cit? Ruleaza top succesiv, vei vedea ca odata
spune 30%, alteori 1% (cind ai dat tu CPU-ul era ocupat 0.6% cu procese
utilizator de exemplu, probabil era acest proces sau altul rulat de
useri), alteori 90%, alteori 10%. ps iti va spune media "mare", de cind
a rulat procesul si pina acum, adica pe intregul interval de esantionare
posibil pentru acel proces.
--
Any views or opinions presented within this e-mail are solely those of
the author and do not necessarily represent those of any company, unless
otherwise expressly stated.
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug