Terrell, William
2008-Oct-24 14:52 UTC
[Lustre-discuss] Is the datapath from network to disk zero copy on OSS?
I am trying to size buses and memory controller performance and wanted to know if the datapath from network side to SCSI side is zero copy on the OSS? Are the same buffers used by the network interface passed along to the SCSI stack for reads and writes? -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.lustre.org/pipermail/lustre-discuss/attachments/20081024/3274d70b/attachment.html
Andreas Dilger
2008-Oct-26 08:48 UTC
[Lustre-discuss] Is the datapath from network to disk zero copy on OSS?
On Oct 24, 2008 08:52 -0600, Terrell, William wrote:> I am trying to size buses and memory controller performance and wanted > to know if the datapath from network side to SCSI side is zero copy on > the OSS? Are the same buffers used by the network interface passed along > to the SCSI stack for reads and writes?It is zero-copy if you have an RDMA network, but for TCP it is only zero-copy for buffer sending (i.e. no copy on server for reads, no copy on client for writes). Aside from that, the network buffers are filled directly via RDMA, and passed down to the IO layer with bio_submit(). We patched the RAID5/6 code to avoid an extra buffer copy on RHEL4/5, and other than this (AFAIK) there are no data copies in the IO stack except between the application and the client kernel (which allows the client to aggregate IO and do data read/writeback caching). Cheers, Andreas -- Andreas Dilger Sr. Staff Engineer, Lustre Group Sun Microsystems of Canada, Inc.