Messages in this thread | | | Subject | Re: lmbench lat_mmap slowdown with CONFIG_PARAVIRT | From | Zachary Amsden <> | Date | Thu, 22 Jan 2009 14:28:31 -0800 |
| |
On Wed, 2009-01-21 at 14:23 -0800, Jeremy Fitzhardinge wrote: > Nick Piggin wrote: > > Oh, _llc_ references/misses? Ouch. > > > > You have, what 32K L1I, 32K L1D, and 4MB L2? And even this microbenchmark > > is seeing increased L2 misses by nearly 3%. Hmm, I wonder where that is > > coming from? Instruction fetches? > > > > I assume so. There should be no extra data accesses with > CONFIG_PARAVIRT (hm, there's probably some extra stack/spill traffic, > but I surely hope that's not falling out of cache).
These fragments, from native_pgd_val, certainly don't help:
c0120f60: 55 push %ebp c0120f61: 89 e5 mov %esp,%ebp c0120f63: 5d pop %ebp c0120f64: c3 ret c0120f65: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi c0120f69: 8d bc 27 00 00 00 00 lea 0x0(%edi,%eiz,1),%edi
That is really disgusting. We absolutely should be patching away the function calls here in the native case.. not sure we do that today.
Zach
| |