Discussion:
about prefetch_on_access parameter
Mahmood Naderan
2011-12-17 07:22:14 UTC
Permalink
Hi,
While in the BaseCache.py it is stated that:

prefetch_on_access = Param.Bool(False,
"notify the hardware prefetcher on every access (not just misses)")

means that we can turn off prefetch on access, in the code this parameter
may be bypassed

if ( prefetcher && (prefetchOnAccess || (blk && blk->wasPrefetched())) ) {

So, if the prefetcher is enabled and prefetchOnAccess is set to false, a
block that was previously prefetched can notify the prefetcher.
Right?

--
// Naderan *Mahmood;
Dibakar Gope
2011-12-17 14:50:00 UTC
Permalink
Hi I guess, it means as you also mentioned:if the prefetcher is enabled, then if a demand request hits a cache block with its HWPrefBit set, then (irrespective of prefetchOnAccess is enabled/disabled), it triggers the prefetcher to enqueue some more prefetch requests to the prefetch queue.
Post by Mahmood Naderan
Hi,
prefetch_on_access = Param.Bool(False,
         "notify the hardware prefetcher on every access (not just misses)")
means that we can turn off prefetch on access, in the code this parameter may be bypassed
if ( prefetcher && (prefetchOnAccess || (blk && blk->wasPrefetched())) ) {
So, if the prefetcher is enabled and prefetchOnAccess is set to false, a block that was previously prefetched can notify the prefetcher.
Right?
--
// Naderan *Mahmood;
_______________________________________________
gem5-users mailing list
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Mahmood Naderan
2011-12-17 15:07:56 UTC
Permalink
so that mean Prefetch_on_access is useless and its operation is masked by '||'
Post by Dibakar Gope
Hi I guess, it means as you also mentioned:if the prefetcher is enabled,
then if a demand request hits a cache block with its HWPrefBit set, then
(irrespective of prefetchOnAccess is enabled/disabled), it triggers the
prefetcher to enqueue some more prefetch requests to the prefetch queue.
Post by Mahmood Naderan
Hi,
prefetch_on_access = Param.Bool(False,
         "notify the hardware prefetcher on every access (not just misses)")
means that we can turn off prefetch on access, in the code this parameter may be bypassed
if ( prefetcher && (prefetchOnAccess || (blk && blk->wasPrefetched())) ) {
So, if the prefetcher is enabled and prefetchOnAccess is set to false, a
block that was previously prefetched can notify the prefetcher.
Right?
--
// Naderan *Mahmood;
_______________________________________________
gem5-users mailing list
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
--
--
// Naderan *Mahmood;
Dibakar Gope
2011-12-17 15:14:23 UTC
Permalink
Yes, atleast Prefetch_on_Access is of no use, when set to false.
Post by Mahmood Naderan
so that mean Prefetch_on_access is useless and its operation is masked by '||'
Post by Dibakar Gope
Hi I guess, it means as you also mentioned:if the prefetcher is enabled,
then if a demand request hits a cache block with its HWPrefBit set, then
(irrespective of prefetchOnAccess is enabled/disabled), it triggers the
prefetcher to enqueue some more prefetch requests to the prefetch queue.
Post by Mahmood Naderan
Hi,
prefetch_on_access = Param.Bool(False,
         "notify the hardware prefetcher on every access (not just misses)")
means that we can turn off prefetch on access, in the code this parameter
may be bypassed
if ( prefetcher && (prefetchOnAccess || (blk && blk->wasPrefetched())) ) {
So, if the prefetcher is enabled and prefetchOnAccess is set to false, a
block that was previously prefetched can notify the prefetcher.
Right?
--
// Naderan *Mahmood;
_______________________________________________
gem5-users mailing list
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
--
--
// Naderan *Mahmood;
_______________________________________________
gem5-users mailing list
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Loading...