velke zatazenie CPU pri sietovom prenose
Vladimír Třebický
guru.list na xhost.cz
Pondělí Listopad 14 19:34:46 CET 2005
Jan Kasprzak wrote:
> Vladimír Třebický wrote:
> : kam tlačíte na cílovém počítači data? Pokud na disk, tak zkontrolujte,
> : zda je na něm zaplé DMA (hdparm -d /dev/(h|s)d.). Pokud do /dev/null
> : (což pro otestování doporučuji), tak ho zkuste profilovat (zkompilovat s
> : -pg + výsledek pomocí gprof).
>
> Nejprve pripominka:
>
> : A: Because it messes up the order in which people normally read text.
> : Q: Why is top-posting such a bad thing?
> : A: Top-posting.
> : Q: What is the most annoying thing on usenet and in e-mail?
>
Ok :-) I když... Ale jo ;-)
> A ted k veci (gprof a dalsi):
>
> Jste vedle - z prilozeneho topu vidite, ze je spotrebovavan hlavne
> systemovy cas, cili uvnitr jadra. Z gprof user-space programu tedy nic
> nezjistite.
Jo, správně, chybka. V tom případě se bude hodit "strace -c netcat ...".
>
> Samozrjeme je otazka co se uvnitr jadra deje - neni tam nejake
> jadro pro jinou architekturu nebo tak neco? Nebo nedela ten nc neco
> co zpusobuje, ze treba SELinux nebo iptables nekam zoufale loguji velke
> mnozstvi dat? Nenapada me duvod, proc by neco takoveho bylo zpusobeno
> driverem sitove karty. Ano, BCM5721 ma bus mastering a dalsi vymozenosti.
>
> : > mam pocitac s procesorom Intel(R) Xeon(TM) CPU 3.00GHz, sietovka
> : > Broadcom Corporation NetXtreme BCM5721 Gigabit Ethernet PCI Express
> : > pripojenu na 100mb/s siet. Je tam CentOS 4, kernel 2.6.9-22.0.1.ELsmp.
> : > Tlacim do neho data cez nc (netcat) a ide to strasne pomaly, okolo 2,8
> : > MB/s. Proces nc pritom zere skoro 100% procesora. Na pocitaci odkial to
> : > tlacim (P4 1,8GHz, sietovka Intel Corporation 82801DB PRO/100 VE) je
> : > zatazenie skoro 0%.
> : >
> : > preco je tam take velke zatazenie? prikladam este vypis top:
> : > top - 15:11:44 up 12 days, 23:08, 6 users, load average: 1.27, 1.31, 1.04
> : > Tasks: 109 total, 3 running, 106 sleeping, 0 stopped, 0 zombie
> : > Cpu(s): 0.0% us, 44.6% sy, 0.0% ni, 54.5% id, 0.0% wa, 0.8% hi, 0.0% si
> : > Mem: 1034040k total, 1019256k used, 14784k free, 7552k buffers
> : > Swap: 2031608k total, 675072k used, 1356536k free, 908168k cached
> : >
> : > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
> : >
> : > 21558 uzivatel 20 0 3012 544 456 R 89.8 0.1 20:58.79 nc
>
> Ja nevim, co treba zkusit jine jadro (ne-SMP, jinou verzi,
> vami zkompilovane). Pripadne zkuste strace na ten nc, jestli treba neposila
> packety do jadra po bajtech nebo nejakych podobne malych jednotkach.
> Ale prijde mi to nepravdepodobne.
>
> Taky zkuste jine prenosy nez jen nc - treba ftp nebo scp -c blowfish.
>
> -Y.
>
Další informace o konferenci Linux