Messages in this thread | | | Date | Thu, 3 Jun 1999 17:41:33 +0200 (MET DST) | From | Bjorn Wesen <> | Subject | Re: zero-copy TCP fileserving |
| |
On Thu, 3 Jun 1999, Alan Cox wrote: > If the CPU can queue posted writes for the data and is still able to feed > itself without stalling, and there is enough bandwidth left for any other > bus masters _in the unlikely event it hits main memory_ then the write is > pretty cheap. Since we are going to want the data again for the actual > I/O transaction in most cases its extremely close to zero cost.
But in the case of a heavy filetransfer, the data will need to hit main memory, especially if the NIC can bus-master DMA from main memory. The thing is, in a good system, the HD controller will do BM DMA to main memory and there should be no need at all for the CPU to touch the data. DMA in, DMA out. Checksum can be handled by the NIC. Now I'm not mad enough to claim that direct device<->device I/O is the way to go (which was discussed here recently :).
I fully agree that a meagre 10 MByte/s (for filling a 100 MBit/s net) is a tiny load on a massive P2/400 with main memory bandwidths of hundreds of MB/s. But the issue was scalability mainly.
/Bjorn
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |