spew (I/O performance tool)

SL / CentOS rendszerhez Epel repo-ban megtalálható cucc (~50 kb), Debian / Ubuntu-n is megtalálható csomagban. Ha nem akarunk a bonnie++-val szívni, akkor még jó is lehet egy gyors disk sebesség teszthez:


# write test
spew --write -b 16k 1000m testfile
WTR:   460834.89 KiB/s   Transfer time: 00:00:02    IOPS:    28802.18

# clear disk cache
su -c "echo 1 > /proc/sys/vm/drop_caches"

# read test
spew --read  -b 16k 1000m testfile
RTR:   195574.33 KiB/s   Transfer time: 00:00:05    IOPS:    12223.40

Érdekes lehet még ez a kapcsoló:
[code]
-r, --random (Read/Write buffers to random offsets)

spew -r --write -b 16k 1000m testfile
WTR: 430331.30 KiB/s Transfer time: 00:00:02 IOPS: 26895.71
[/code]

http://spew.berlios.de

Hozzászólások

Ajanlom az iozone nevezetu progit. :)

---------------------------------------------------
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"

Nekem a bonnie teljesen bejott az iozone-hoz kepest. Letisztult, egyszeru kimenet, konnyen ertheto reporttal.
Az iozone is baromi jo, akkor kell, ha szep latvanyos grafikonokat kell gyartani egy elmelet alatamasztasara.
--

Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal 

Iozone így köpi ki az eredményt, nincs itt semmiféle grafikon, meg egyéb felesleges hülyeség :) :

"Throughput report Y-axis is type of test X-axis is number of processes"
"Record size = 4096 Kbytes "
"Output is in Kbytes/sec"

" Initial write " 172681.05

" Rewrite " 166729.10

" Read " 203286.65

" Re-read " 212903.38

" Random read " 149117.04

" Random write " 86566.48

iozone test complete.

---------------------------------------------------
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"

Hmm... akkor keverem valamelyik masik, io-val kezdodo cuccal. Van egy, ami CSV-t meg gnuplot file-t is kepes magabol kitolni, ez utobbit pl. eleg sokat kell masszirozni hogy grafikon legyen belole, de ez most mindegy.

Nekem mindenesetre csak valami hulye tablazatos tortenet remlik belole, amit mocskosul nem tudtam attekinteni. A bonnie ehhez kepest maga a letisztult dizajn.
--

Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal 

Nekem erre ez szokott a megoldásom lenni: linuxinsight.com/files/seeker.c
Illetve, ha írást kell mérni, akkor manuálisan átírom, hogy írjon. :)

SSD-kre pár %-on belül ugyanazokat az értékeket szokta adni, amit a windows-os crystaldisk és hasonló toolok.
---
Régóta vágyok én, az androidok mezonkincsére már!

Szep. 4G file irasa, elvileg 85 M/s sebesseggel. Viszont 8-as load-ot generalt, a proci iowait folyamatosan 60% felett :)

Update: 1m buffer megadasaval kicsit hosszabb lett (par sec), viszont a load csak 4-es lett legmagassabb szinten es az iowait is villamgyorsan visszaesett 50%-rol minimumra.

Persze nem "tiszta" rendszer, mennek kozben folyamatok rendesen.

--
http://www.micros~1

Gondolom a writeback miatt lehet talán, érdemes a RAM méretének duplájára venni a test file méretét. Mert néha nagyon gyorsan lefut, gondolom simán memória pufferbe tolja ki az adatot, sync meg csak később lesz.

Zavar még spew-val kapcsolatban, hogy sima nullákat tol. Ez bizonyos helyzetekben nem szerencsés az adat nagy fokú tömöríthetősége miatt. Szóval nem az igazi.

Mivel az I/O sebessége sok paramétertől függ, ezért nem igazán lehet 1 számmal megfeleltetni ezt, de én mégis szerettem volna egy olyan tool-t találni, ahol tudok dobatni live CD-ről egy értéket, amely nekem megfelel viszonyszámnak, és nem kell fél órákat szórakozni a méréssel. De minél többet játszok spew-val, sajnos annál szarabb. Ugye random bemenetet hiába adnék meg, a /dev/urandom is túl lassú. Nem értem miért nem írtak hozzá egy gyors pseudo random generátort a kiírt byte-okat feed-elni.

Lehet marad a bonnie.

iozone meg sajna csak rpmforge repo-ban van, ezért nem tudom (akarom) automatizálva feltenni a live image-eimbe, és ezért kényelmetlen lenne minden alkalommal forrást tölteni vagy repo-t hozzáadni stb stb. Repo-ból elérhető cuccot szerettem volna találni. Bonnie nem rossz, csak azt hittem spew kényelmesebb a fenti okokból, de úgy látom nem. Cache-t sem töröl ugye ha --raw (read after write) módban futtatjuk, és valótlan sok gigabyte per sec-es sebességes jönnek ki azért, mert a kitolt adat (ami csupa nulla) már cache-ben van.

Es ha bemenetnek egy nagydarab filet adok meg?

Hulyeseg, ahoyg leirtam, rogton ra is jottem, bocs :)

Update: gondolkodtam. Ha a memoria a bemenet? Igaz, az fix meret. de a /proc/kmem (mondjuk, ha jol latom, az a kernel memoria, de regebben a teljes memoria elerheto volt igy, asszem a /dev alol)
De az eleg veletlenszeru, viszont gyors....

Naja, asszem megis urandom vagy hasonlo lesz.

--
http://www.micros~1

Nem jó urandom, mert lassó (~ 5 MB/sec). /dev/shm -ben tárolt random adat jó lehet viszont akár.

Csak annyira macera hogy ilyen szarul írták meg, pont az lenne a jó, hogy akár paraméterek nélkül a parancsra ütni egy entert, és dobjon egy viszonylagos írás / olvasás teljesítmény értéket, hogy másik géphez lehessen viszonyítani.