Related articles |
---|
performance measurement and caches boehm@parc.xerox.com (1996-02-14) |
Re: performance measurement and caches Terje.Mathisen@hda.hydro.com (Terje Mathisen) (1996-02-16) |
Re: performance measurement and caches chase@centerline.com (1996-02-16) |
Re: performance measurement and caches romer@cs.washington.edu (1996-02-16) |
Re: performance measurement and caches jgj@ssd.hcsc.com (1996-02-16) |
Re: performance measurement and caches alms@pesqueira.di.ufpe.br (1996-02-16) |
Re: performance measurement and caches mff@research.att.com (Mary Fernandez) (1996-02-16) |
Re: performance measurement and caches grunwald@foobar.cs.colorado.edu (1996-02-17) |
Re: performance measurement and caches Terje.Mathisen@hda.hydro.com (Terje Mathisen) (1996-02-18) |
Re: performance measurement and caches cdg@nullstone.com (1996-02-19) |
Re: performance measurement and caches mschmit@ix.netcom.com (1996-02-21) |
From: | jgj@ssd.hcsc.com (Jeff Jackson) |
Newsgroups: | comp.compilers,comp.arch |
Date: | 16 Feb 1996 01:30:33 -0500 |
Organization: | I would rather be windsurfing. |
References: | 96-02-165 |
Keywords: | architecture, experiment, performance |
> I repeatedly time two exeutables, getting approximately
> repeatable times for each:
> ...
> real 10.5
> ...
> real 5.5
> ...
> So what's wrong? Slowtest and fasttest were bitwise identical executables!
>
> Based on conversations with Marvin Theimer and Tim Diebert, we even
> managed to come up with a likely explanation. (Corrections
> appreciated.) The machine in question was a SPARCstation 10, with an
> L2 cache. Apparently the L2 cache is physically indexed, and direct
> mapped. The executable files were read once and loaded into the file
> system cache. Thus their location in physical memory did not change
> across runs. (The performance did change when I repeated the test a
> day later.) Apparently slowtest was loaded in an unfortunate
> position, so that two very frequently accessed code sections collided
> in the cache.
I've seen this sort of phenonoma before too. This can be a
particularly nasty problem for us since we do hard real time. Our OS
goes through great lengths to do something that I think they call
"page coloring" to minimize the non-determinism. It does a fairly
good job.
We also have two-tiered memory. Although I may set my process to
prefer local memory. If that's gone, I might get some pages of the
slower global memory too, or worse, it some other processors local
memory. Performance critical stuff gets run restricted to local
memory (The 'run' command can set these sorts of parameters).
--
Jeffrey Glen Jackson
jgj@ssd.csd.harris.com
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.