gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gcl-devel] Re: m68k cacheflushing


From: Richard Zidlicky
Subject: Re: [Gcl-devel] Re: m68k cacheflushing
Date: Fri, 20 Dec 2002 10:24:29 +0100
User-agent: Mutt/1.2.5i

On Thu, Dec 19, 2002 at 11:52:52AM -0500, Camm Maguire wrote:
> Greetings!
> 
> Richard Zidlicky <address@hidden> writes:
> 
> > On Mon, Dec 16, 2002 at 03:05:37PM -0500, Camm Maguire wrote:
> > 
> > Hi,
> >  
> > > > Which kernel version was that? Can you see if the failed flushes
> > > > were cornercases like address near page-boundaries? What kind
> > > > of ranges need to be flushed?
> > > > 
> > > 
> > > 2.2.20.  Don't know anything special about the flushed ranges except
> > >          that they are roughly the size of typical .o files (e.g. a few
> > >          k to a few hundred k), and that they are allocated from the
> > >          end of a 32k page memory block attached via sbrk.
> > 
> > in that case FLUSH_SCOPE_PAGE is certainly better. It would be still
> 
> Interesting -- why is this?

SCOPE_LINE uses the 'cpushl' instruction which only flushes 12 bytes
at a time, for bigger ranges the overhead of looping that insn can 
get very big.
The kernel has some logic to use page instead of line flushes for
very big ranges but this has to be a little conservative so it 
currently kicks in only when size is 3 or more pages.. which
could well be the case with the average gcl flush.

Richard



reply via email to

[Prev in Thread] Current Thread [Next in Thread]