Re: [patch] SMP scheduler improvements

Rik van Riel (riel@humbolt.nl.linux.org)
Sat, 21 Aug 1999 10:12:00 +0200 (CEST)


On Thu, 19 Aug 1999, Andrea Arcangeli wrote:

> -#define related(p1,p2) (((p1)->lock_depth >= 0) && (p2)->lock_depth >= 0) && \
> - (((p2)->policy == SCHED_OTHER) && ((p1)->avg_slice < cacheflush_time))

> + if (target_tsk && p->avg_slice > cacheflush_time)
> + goto send_now;

I really don't think this "inversion" of the test makes any sense.

The cacheflush_time value is the time it takes to fully reload
the cache -- something that takes too much overhead if the task
only runs for a very short time.

The way you interpret it here, in contrast to the more narrow
related(p1,p2) condition, looks like you're promoting tasks to
spend a relatively large portion of their time reloading stuff
into the cache, as opposed to doing real work.

It might make more sense to test for (cacheflush_time * 3)
or some other slighly larger value in order to make sure that
we keep the overhead down...

Rik

--
The Internet is not a network of computers. It is a network
of people. That is its real strength.
--
work at:	http://www.reseau.nl/
home at:	http://www.nl.linux.org/~riel/

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