> 2GB memset is very slow

Mulyadi Santosa mulyadi.santosa at gmail.com
Tue Feb 1 11:57:05 EST 2011


Hi Jason...

On Tue, Feb 1, 2011 at 20:23, Jason Nymble <jason.nymble at gmail.com> wrote:
> The machine has 48GB of physical memory, and I reserve a chunk as a kernel
> param with the memmap=nn[KMG]$ss[KMG] syntax (see
> Documentation/kernel-parameters.txt), e.g. memmap=8G$4G to reserve an 8GB
> chunk of mem starting at offset 4GB. Then in the driver I simply use
> ioremap_cache() with the physical base offset and size I require to get a
> kernel virtual address. If I do that across any 4GB physical boundary, then
> access to that memory via that kernel virtual address pointer is extremely
> slow.

I think somehow somewhere the kernel repeatedly do kmap() / kunmap()
when you do memory access...and since it's x86_64 (not true 64 bit
like Itanium), it's not really 64 bit...

-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com



More information about the Kernelnewbies mailing list