[Cbe-oss-dev] Improving performance of ps3disk block device driver

Geert Uytterhoeven geert at linux-m68k.org
Mon Feb 14 17:43:35 EST 2011


On Sun, Feb 13, 2011 at 16:26, graf_chokolo graf_chokolo
<grafchokolo at googlemail.com> wrote:
> i have a question reagrding ps3disk block device driver. I managed to add
> support to several regions.
> But i noticed that the driver accepts only one storage request at once,
> while a request is outstanding, it doesn't accept any further storage
> requests.
> As far as i know, storage devices of PS3 hypervisor can accept 16 requests
> simultaneously. So, theoretically, it would be possible to submit more than
> one request to PS3 hypervisor at once. Why doesn't ps3disk block device
> driver use it to improve performance ?

The reason is the lack of scatter/gather IOMMU support in the
hypervisor storage API.
Ps3disk uses a 64 KiB bounce buffer to work around this.
I tried not using a bounce buffer and submitting (up to 16) individual
(small) requests,
but the performance didn't improve, while it would have complicated
the driver a lot.

If you want to waste more memory on multiple bounce buffers, I guess you can
submit more than one (large) request and increase performance.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds


More information about the cbe-oss-dev mailing list