Do you have a question? Post it now! No Registration Necessary
- Posted on
- cache invalidate in user space
March 15, 2006, 3:57 pm
rate this thread
- Geronimo W. Christ Esq
March 16, 2006, 12:07 am
Re: cache invalidate in user space
Hmmm. Why it slows down execution? The PowerPC has separate I cache. Or do
you work with a large amount of data? So the next steps are slowed down due
to flushing old d cache content?
With the PowerPC architecture you have a bunch of cache control instructions
also in userspace. See the architecture manual and search for instructions
like "dcbz" (very powerfull to zero out memory areas), "dcbf" to flush
specific address spaces (that is what you need) and "dcbt" to preload data
before using. With "dcbt" and "dcbf" in a loop you can handle a huge amount
of data in a very efficient way (flush n, touch n+2, modify n+1, loop with
See the GNU libc string and memory functions in the PowerPC part how to use
these assembler instructions from "C" code...
Hope it helps.
- » can diagnostic sofware run as an application (not as kernal module)
- — Next thread in » Embedded Linux