Re: Merging fails reading /dev/uba1

From: Jens Axboe
Date: Mon Feb 21 2005 - 02:53:13 EST


On Sun, Feb 20 2005, Pete Zaitcev wrote:
> Hi, Jens:
>
> I think this question belongs to your domain, but please let me know
> if I'm mistaken, so I can pursue this elsewhere.
>
> I encountered a strange performance anomaly. I do the following:
>
> <----- Plug USB key
> [root@lembas ~]# time dd if=/dev/uba of=/dev/null bs=10k count=10240
> 10240+0 records in
> 10240+0 records out
>
> real 0m22.731s
> user 0m0.004s
> sys 0m0.345s
> [root@lembas ~]#
>
> <----- Remove and replug the USB key
> [root@lembas ~]# time dd if=/dev/uba1 of=/dev/null bs=10k count=10240
> 10240+0 records in
> 10240+0 records out
>
> real 1m42.622s
> user 0m0.005s
> sys 0m1.518s
> [root@lembas ~]#
>
> So, reading from a partition of the same device is 5 times slower than
> reading from the device itself. The question is, why?
>
> To the best of my knowledge, this does not occur with SCSI (usb-storage
> and sd or sr). This hints strongly that the ub is not doing something
> right, but what that can be?
>
> The ub takes the request processing machinery from Carmel exactly. I am
> wondering if Carmel (sx8) exhibits any similar performance anomalies
> (cc-ing to Jeff)

I can't explain why the replugging slows it down, maybe you were lucky
to get contigious pages in the first case? As far as I can see, ub
effectively disables merging by setting max hw/phys segment limit of 1.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/