> Linus wrote:
>
> * Linux with forked processes is around 30%slower than NT. I don't
> know why, I didn't investigate that.
> * Linux with processes and NT get faster as I add additional processes.
> * with 64 processes, the IO performance has increased by around 50%
> compared to the single process case.(both NT and Linux-fork)
> * Linux with multiple threads cannot reorder the read operations, and
> 1 thread is as fast as 64 threads, ie. we loose around 50% possible
> performance due to the mmap semaphore.
Uh, thats bad! (see below)
> > That said, I don't think this can/will be fixed for a 2.4 timeframe,
> I didn't expect that. It's something for 2.5
>
> > especially as I haven't heard of any real-life usage where it would be an
> > issue..
> IMHO that's obvious: "normal" programs are single-threaded or use fork, and
> they use read/write for io.
> --> the problem only affects multi-threaded, mmap based programs, and they
> are rare. (perhaps Apache 2?)
We are implementing a real-time audio-processing tool which will
support tree-like filter-chains, each filter beeing a thread
and mmaping parts of a global swap-file (the filters passing
data (as pointers to a mmapped area) via sockets).
So is there any way to fix this for 2.4? I dont see how we can
use processes and not loose performace at other places.
Btw, I saw patches floating around which add madvise() - will they
be included before 2.4? They would be really useful.
Richard.
-- Richard Guenther <richard.guenther@student.uni-tuebingen.de> PGP: 2E829319 - 2F 83 FC 93 E9 E4 19 E2 93 7A 32 42 45 37 23 57 WWW: http://www.anatom.uni-tuebingen.de/~richi/
- 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/