aio_read template.
David Collier-Brown
David.Collier-Brown at Sun.COM
Wed Jun 8 12:49:49 GMT 2005
Interesting!
I had a similar problem about a year ago with I/O from a large
array, where either misordering or reads of ridiculous sizes coming
from NT Media Server (of all the things that should try to stream reads!)
would result in pessimal throughput.
I found that a simple buffered read of the stripe width would
make it optimal, and that had the side-effect of improving
normal I/O from Solaris UFS and QFS.
--dave
Volker Lendecke wrote:
> On Wed, Jun 08, 2005 at 11:20:37AM +1000, James Peach wrote:
>
>>Jeremy, do you have a specific workload where using aio would help?
>
>
> The specific workload is an application reading multiple large data streams
> simultaneously. The application itself reads sequentially, but the Win32 layer
> of XPSP2 messes that up, so the Samba server sees nonsequential reads. The
> Samba server has a cluster file system in the backend which depends on read
> prediction that only hits when it sees sequential reads. With a pure unix
> program for sequential reads I get about 350MB/sec out of this box, with the
> pattern XPSP2 gives me it drops to about 60-80MB/sec, but sort of
> varying. Feeding the kernel with the same pattern (multiple data streams) in
> an AIO fashion I can bump that back to 140MB/sec. This is probably enough to
> again saturate a gigabit link if you take the win32/smb/samba overhead into
> account.
>
> Volker
--
David Collier-Brown, | Always do right. This will gratify
Sun Microsystems, Toronto | some people and astonish the rest
davecb at canada.sun.com | -- Mark Twain
(416) 263-5733 (x65733) |
More information about the samba-technical
mailing list