On Tue, Jun 19, 2007 at 07:18:38PM +0200, Bastian Blank wrote: > But it is slow. I can write at most 15MiB/s to the disks, regardless of > the count of the initiators and disks. I did another round of tests with 2.6.22 and a corresponsing patchset and an uptodate tgtd with disabled controller lun (it breaks my setup which needs the boot disk on lun 0). Writing on an exported device shows weird behaviour. iostat shows many write _and_ read requests, even if the initiator only emits write requests: | Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util | sdb 3733.90 4177.60 525.80 72.70 34138.40 34002.40 113.85 19.94 33.32 1.38 82.76 If the initiator emits read requests, it is okay: | Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util | sdb 13798.50 0.40 1955.31 0.20 126057.72 4.81 64.47 1.18 0.60 0.43 83.21 There is only lvm between it. This looks like some sort of read-ahead for the data, which should not happen for write requests. I tried to dig a little bit in the block code but was not able to found the cause. Bonnie shows the following: | Version 1.03 ------Sequential Output------ --Sequential Input- --Random- | -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- | Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP | test.track.rz.un 2G 21914 10 15207 4 59795 6 305.8 0 Bastian -- Emotions are alien to me. I'm a scientist. -- Spock, "This Side of Paradise", stardate 3417.3 |