Messages in this thread | | | From | Stanislav Meduna <> | Subject | Re: [patch] nonempty pipe does not select for write | Date | Mon, 27 Dec 1999 13:06:23 +0100 (CET) |
| |
On Sun, 19 Dec 1999 kernel@kvack.org wrote:
> I'd strongly suggest making the pipe buffers remain the > size of 1 page and allocate them dynamically.
Is there some consensus on what the limit for a pipe buffer should be? Unrestricted dynamic allocation is certainly a bad idea, but I have no idea what the maximum should be.
> This goes towards another pipe optimization that has been > suggested: where possible, one could flip a full page into > the reader's address space rather than copying, making > for a substantial gain in pipe bandwidth.
Do you mean the situation, where the user buffer is page aligned and at least one page long as "where possible"? This is probably not a common situation in real programs (although it surely could be a proposed optimization for programs that really need the bandwidth).
The kernel certainly could try to have the data page-aligned - some kind of double-buffering could arrange for this (maybe this could also ensure that the reader and writer operate on different data most of the time - could be interesting for SMP).
If it was already discussed somewhere / someone works on it, could you give some reference / keywords?
Regards -- Stano
- 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/
| |