zeroing pages in the idle task?

Gabriel Paubert paubert at iram.es
Tue Sep 26 21:38:59 EST 2000


On Thu, 14 Sep 2000, Paul Mackerras wrote:

>
> Michel Lanners writes:
>
> > > - if not, would it be a good idea to enable it by default?
> >
> > What do you think, Paul, Cort?
>
> As I recall, it was necessary to disable the cache in the idle task so
> that the idle task's clearing of pages didn't trash the cache for
> other tasks.

why ? When you are sleeping, the next task to run may or may not be the
same.

If it is the same, you loose, but any task sleeping should not expect
the caches to be hot when it restarts....

It it is not the same and you take care of cleaning the cache (with dcbst,
not dcbf to opimize the case where you need a new allocation just after
the switch to an active task), then you will end up with less dirty cache
line pushes when the new task is started, effectively speeding up the task
switch.

On SMP bus utlilization may be an issue, but dcbz+dcbst is not that
expensive after all (2 address cycles and one data burst).

	Regards,
	Gabriel.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-dev mailing list