Re: Performance of packet writing: Blocksize matters
Johannes Niess <[email protected]> Wed, 13 Dec 2006 21:38:16 +0100
| Newsgroups | gmane.linux.suse.packet-writing |
|---|---|
| Message-ID | <[email protected]> |
--nextPart2471280.2udM5l20yA Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Am Mittwoch 13 Dezember 2006 16:42 schrieb Phillip Susi: > Johannes Niess wrote: > > stingray ~ # dd if=3D/dev/zero of=3D/dev/pktcdvd/dvdrw bs=3D32768 count= =3D25000 > > 25000+0 records in > > 25000+0 records out > > 819200000 bytes (819 MB) copied, 86.3305 seconds, 9.5 MB/s > > > > stingray ~ # dd if=3D/dev/zero of=3D/dev/pktcdvd/dvdrw bs=3D32769 count= =3D25000 > > 25000+0 records in > > 25000+0 records out > > 819225000 bytes (819 MB) copied, 1312.45 seconds, 624 kB/s > > These two commands appear to be exactly the same, yet have different > results. Can you explain this? I went for a minimal difference. The second experiment is with block size=20 increased by 1 byte (32k + 1) =3D 32769. Sorry for not making that obvious.= The=20 change was intended to force reblocking. I agree that it is not a real worl= d=20 test. > Also make sure /dev/hdc is using the noop io scheduler. My data was generated with cfq, settings as below (execpt changing io=20 scheduler), but no other process was accessing the DVD drive. Will this work? echo noop > /sys/block/hdc/queue/scheduler stingray ~ # ls /sys/block/hdc/queue/* /sys/block/hdc/queue/max_hw_sectors_kb /sys/block/hdc/queue/nr_requests = /sys/block/hdc/queue/scheduler /sys/block/hdc/queue/max_sectors_kb /sys/block/hdc/queue/read_ahead_kb /sys/block/hdc/queue/iosched: stingray ~ # cat /sys/block/hdc/queue/* cat: /sys/block/hdc/queue/iosched: Is a directory 128 128 128 128 [noop] cfq Is there anything else I should log besides the write speeds? Would outputs= =20 from /proc/diskstats help? I could do the differences before and after each= =20 experiment or even log it every couple of seconds. I'm also willing to try= =20 experimental module patches based on 2.6.19 vanilla or mm. I'd like to provide a maximum of required debugging data from the next=20 experiments. Thank you for trying to understand my problem. Johannes Nie=DF --nextPart2471280.2udM5l20yA Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) iD8DBQBFgGTBZ86b9aw2E+0RAvxFAKCAbABj9vucBO0bK0tJDKkOVkEvCgCgxbf3 2ibF6NndUadGKU81faBygfM= =7bzJ -----END PGP SIGNATURE----- --nextPart2471280.2udM5l20yA--