speeding up thread-creation

From: David Mosberger <davidm_at_napali.hpl.hp.com>
Date: 2003-11-21 19:19:59
It occurred to me that at present, we're copying lots of state on a
clone2() for absolutely no reason.  Not only that, but the large size
of the "thread_struct" probably also causes poor cache-locality since
the task-structure is effectively split in two, with a large unused
gap in between.  I think it might make sense to move all the large
thread_struct-state (IA-32 registers, pmcs[], pmds[], dbr[], ibr[],
and fph[]) into a separate "thread_lazy" structure and then put that
structure at a place where it doesn't hurt (perhaps above the
thread_info structure).  If I counted right, this state accounts for
2KB so not copying it in copy_process() ought to speed up
thread-creation significantly and avoid stomping needlessly on the L1
d-cache.

Anyone interested in playing with this idea?

	--david
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Fri Nov 21 03:20:24 2003

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:20 EST