Re: [PATCH] proposed scheduler enhancements and fixes

From: Linus Torvalds (torvalds@transmeta.com)
Date: Sun Feb 27 2000 - 11:42:19 EST


On Sun, 27 Feb 2000, Andrea Arcangeli wrote:
>
> Am I right assuming lat_ctx -s 0 2 spawns two threads that only ping pong
> all the time at maximal rate on a pipe to benchmark the speed of
> schedule() (not the behaviour of the SMP scheduler!)? Such bench is single
> threaded, the pipe don't even use the normal wakeup but it only calls
> schedule() strightforward so I don't think my changes can affect such a
> benchark. Maybe I am missing something...

It is not really single-threaded. In fact, in theory it could use 2 CPU*s
pretty much 100%, bouncing between one reading and the other writing.

It is threaded to a large degree by the pipe semaphore, though. Even so,
there's a wakeup event when a writer has added more data and wakes up the
reader.

And no, the wake_p_sync() case does not get invoced by the pipe latency
case: it only matters for the throughput case where the pipe _does_ turn
completely synchronous because it's in kernel space all the time. For the
"send a single byte back and forth" case, we can't use the synchronous
version, because the sender is not going to sleep immediately afterwards
(it's going to return to user mode).

                Linus

-
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/



This archive was generated by hypermail 2b29 : Tue Feb 29 2000 - 21:00:17 EST