Although Ruby ignore software prefetches, they are counted in the dump file. See makeRequest() in SimicsDriver.C for details.
Rgs, lori zhuang
Message: 5
Date: Wed, 30 Jun 2010 15:02:56 +0800
From: Jerry Lin <cosjerry@xxxxxxxxx>
To: Gems Users <gems-users@xxxxxxxxxxx>
Subject: Re: [Gems-users] prefetch in opal
Message-ID:
<AANLkTil0BBiwVbSIZzfZ4w-WyI6eh89cURK80wjFY8QR@xxxxxxxxxxxxxx>
Content-Type: text/plain; charset="iso-8859-1"
Hi,
So the software prefetch implemented in opal means opal supports the
prefetch instruction, like PREFETCH, PREFETCHA.
The prefetch instructions are inserted totally depends on the compiler, like
gcc.
If I set the flag to disable the software prefetch in gcc when compiling an
application, and running with simics+Ruby+Opal.
Will the software prefetch count in ruby dump stats be zero?
Regards.
2010/6/30 Muhammad abid Mughal <mabidm_pieas@xxxxxxxxx>
> hi,
> Software prefetches implemented via instructions ,which depend on
> microprocessor.For example in Sparc processor(Opal based on sparc)
> these are PREFETCH & PREFETCHA
> Software prefetches inserted by compiler when it detects some patterns
> and software prefetch policy depends on prefetch instructions[see docs of
> above prefetch insts]
>
> When I using MOSI_SMP_bcast protocol to run simulation, there are both
> non-zero prefetch count in L1D_cache and L2_cache.?
>
> Running with simics+Ruby? if yes then Ruby filters out software prefetches
> (see SimicsDriver)
|