top [dotaz na vyznam %]
Dan Lukes
dan at obluda.cz
Tue Jan 31 23:50:21 CET 2006
Divacky Roman napsal/wrote, On 01/31/06 16:18:
> navic... vite nekdo co ty cisla znamenaji? ja to zkousel zjistit a jedine na co
> jsem prisel je ze znamenaji "neco". vite nekdo vic?
V systemu se periodicky vola funkce statclock(). Ta pricita "jeden tik"
do prislusne kategorie. Logika je, zhruba takova:
============
IF USERPROCESS:
IF nice(process)>0:
CP_NICE++
ELSE
CP_USER++
ELSE /* SYSTEMPROCESS */
IF IDLEPROCESS:
CP_IDLE++
ELSE IF INTERRUPTROUTINE:
CP_INTR++
ELSE /* other kernell code */
CP_SYS++
==========
Rutina bezi na kazdem procesoru zvlast.
Aktualni hodnoty citacu najdete v sysctl kern.cp_time
Co se presnosti tyce, nezda se mi, ze by delici cara probihala podle
verze FreeBSD.
Onen "jeden tik" neni odvozen od taktovani procesoru, ale od druheho
kanalu programovatelneho timeru. Musel bych si zvlast nastudovat tuhle
cast hardware, ale mam dojem, ze naprogramovany takt by mel byt na taktu
procesoru nezavisly. Spolecna podminka je, ze dany hardware ma k
dispozici druhy programovatelny kanal casovace. Pokud k dispozici neni,
pak se 'stathz' odvozuje od hlavnich hodin a ty k tomuto ucelu nepresne
jsou.
Jedina podminka "navic" pro 4.x je ta, ze jadro je prelozeno s optionem
BETTER_CLOCK
Je, samozrejme, mozne, ze mi neco uniklo.
Presnost "mereni" zavisi take na hodnote HZ - stathz se na 6.x
nastavuje na hz*2/15 - tedy cca 133/s pro HZ=1000 resp 13/s pro
defaultnich HZ=100 (sysctl kern.clock). Toto vzorkovani interferuje s
pridelovanim kvant casu procesum - v nekterych kvantech muze pribehnout
statistika vicekrat, v jinych k ni nedojde vubec - je treba proste mit
na pameti, ze to je statistika a to, jak vsem (krome statistiku)
vseobecne znamo neni zadna exaktni veda.
============
Jeste mam kratky prispevek k problematice HTT. Naspodu mate pripojeny
vysledky mereni, ktere jsem behem chvile provedl. Jedno mereni ukazuje
vykon HTT o cca 15% vyssi, druhe o cca 40% nizsi. Nebudu se z toho
snazit vyvodit zadny konkretni zaver. Ja osobne vice-mene souhlasim s:
http://www.onlamp.com/pub/a/bsd/2005/01/20/smpng.html
(otazka "Does SMPng improve performance on Intel Hyper-Threading capable
CPUs?").
Podotykam, ze ULE scheduler stale jeste neni "produkcni" a i
6.0-RELEASE pouziva 4BSD. Ackoliv ten byl nekdy okolo 5.3-R mirne
upraven, pro ucely teto debaty se na nej onen rok stary rozhovor IMHO
vztahuje vice-mene beze zmeny.
Dan
CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (3043.36-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0xf34 Stepping = 4
Hyperthreading: 2 logical CPUs
Kernel: FreeBSD 6.0-STABLE #10: Sun Jan 22 13:29:57 CET 2006
Scheduler: 4BSD
prikaz - kompilace MySQL server 5.0.18 (opravdu jen cisty preklad)
optiony prikazu: BUILD_OPTIMIZED=yes -jX
casy jsou v sekundach, vyznamy jednotlivych casu viz "man time"
+-----+------+---------+---------+---------+---------+
| HTT | | -j1 | -j2 | -j3 | -j4 |
+-----+------+---------+---------+---------+---------+
| | real | 549.905 | 581.207 | 595.579 | 604.775 |
| NO | user | 427.852 | 451.824 | 460.456 | 469.968 |
| | sys | 84.056 | 86.130 | 88.372 | 89.071 |
+=====+======+=========+=========+=========+=========+
| | real | 535.538 | 476.571 | 487.218 | 492.613 |
| YES | user | 439.563 | 710.634 | 727.797 | 735.132 |
| | sys | 116.795 | 160.235 | 164.199 | 165.233 |
+-----+------+---------+---------+---------+---------+
===================
prikaz: "openssl speed blowfish & openssl speed blowfish &"
Vysledky jsou uvedeny pro kazdy z obou procesu zvlast a jsou v MB/s
(v tomto pripade 1MB=1000000B)
+-----+----+-------------------------------------------------+
| HTT | # | block size |
| | +---------+---------+---------+---------+---------+
| | | 16 B | 64 B | 256 B | 1024 B | 8192 B |
+-----+----+---------+---------+---------+---------+---------+
| NO | #0 | 102.77M | 109.65M | 110.81M | 111.80M | 111.19M |
| | #1 | 102.98M | 109.66M | 110.83M | 111.80M | 111.21M |
+-----+----+---------+---------+---------+---------+---------+
| YES | #0 | 63.50M | 70.63M | 72.42M | 73.15M | 72.13M |
| | #1 | 63.58M | 70.63M | 72.47M | 73.12M | 72.22M |
+-----+----+---------+---------+---------+---------+---------+
--
Dan Lukes SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz,dan at kolej.mff.cuni.cz
More information about the Users-l
mailing list