Re: [gem5-users] (no subject)

2019-05-10 Thread Abhishek Singh
What you do, is create flags in src/mem/packet.hh for various cache levels.
Whenever you hit in L2, you can set the L2flag in response pkt.
And if it is misses in L2, set main memory flag in response pkt, as you are
sure you will get data from main memory.
Here we are assuming it’s a single core simulation.

On Fri, May 10, 2019 at 5:42 AM Muhammad Avais 
wrote:

> Dear All,
>
> 1- For blocks loaded in the L1 cache, how can I distinguish that it was
> loaded into the L1 cache from the L2 cache (L2 hit) or main memory (L1
> cache)?
>
> Many thanks,
> Best Regards,
> Avais
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] Bypassing blocks to LLC

2019-05-10 Thread Abhishek Singh
Hi Richard,

What you can do is, wherever your desired block reaches at L3 level in the
form of a packet that is in “recvTimingReq” function, instead of writing in
L3. Create a write-back queue entry at L3 for that pkt and then it should
automatically go to Main memory.

On Thu, May 2, 2019 at 7:08 PM Richard Brown 
wrote:

> Hello everyone,
>
> I am PhD student and new with gem5, I have a multicore system with 2
> private cache levels (DL1, IL1 and L2) and 1 shared L3/LLC. I am using
> classic memory system, I know this model is non-inclusive, non-exclusive.
>
> For my research I need to bypass some blocks from L3, I mean when some
> blocks are read I want to write them to L1 and L2 and not write them in L3,
> and when some blocks are evicted from L2, if they are dirty, I want to
> write them to Main Memory and not to L3.
>
> Is it possible to bypass some blocks from L3 reading the accesses
> messages? I think I just need to change cache.cc, is it right?
>
> I really apreciate your help, thanks in advance.
>
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] (no subject)

2019-05-10 Thread Abhishek Singh
Hi Muhammad,

One way is to use the function "name()" in src/mem/cache/base.cc and
src/mem/cache/cache.cc file to implement cache specific function.
For e.g.,
for implementing things specifically  for dcache u can just write if
(name() == "system.cpu.dcache"){ }


Best regards,

Abhishek


On Fri, May 10, 2019 at 5:23 AM Muhammad Avais 
wrote:

>Dear All,
>
>   I have one question. For blocks loaded in the L1 cache, how can I
> distinguish that it was loaded into the L1 cache from L2 cache or main
> memory?
>
> Many thanks,
> Best regards,
> Avais
>
>
> On Wed, May 8, 2019 at 5:21 AM Abhishek Singh <
> abhishek.singh199...@gmail.com> wrote:
>
>> Hi Muhammad,
>>
>>
>> If you want on L2 hit, the block is invalidated from L2 cache and filled
>> in Dcache and the rest behavior same as you explained in the diagram, you
>> can use gem5's "most_excl" option in "gem5/src/mem/cache/Cache.py" file.
>> You may need to take care of "clean victim" from dcache which is not a
>> difficult modification.
>>
>> Best regards,
>>
>> Abhishek
>>
>>
>> On Tue, May 7, 2019 at 1:48 AM Muhammad Avais 
>> wrote:
>>
>>> Dear All,
>>>   Is 'mostly exclusive cache' supported in GEM5 classic model
>>> strictly non-exclusive cache? If it is not non-exclusive cache, how can I
>>> make it non-exclusive cache?
>>>
>>>   The non-exclusive cache is shown in Fig. below.
>>> [image: image.png]
>>>  Can anyone guide me?
>>>
>>> Many thanks,
>>> best regards,
>>> Avais
>>>
>>> ___
>>> gem5-users mailing list
>>> gem5-users@gem5.org
>>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>>
>> ___
>> gem5-users mailing list
>> gem5-users@gem5.org
>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] (no subject)

2019-05-10 Thread Muhammad Avais
Dear All,

1- For blocks loaded in the L1 cache, how can I distinguish that it was
loaded into the L1 cache from the L2 cache (L2 hit) or main memory (L1
cache)?

Many thanks,
Best Regards,
Avais
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] (no subject)

2019-05-10 Thread Muhammad Avais
   Dear All,

  I have one question. For blocks loaded in the L1 cache, how can I
distinguish that it was loaded into the L1 cache from L2 cache or main
memory?

Many thanks,
Best regards,
Avais


On Wed, May 8, 2019 at 5:21 AM Abhishek Singh <
abhishek.singh199...@gmail.com> wrote:

> Hi Muhammad,
>
>
> If you want on L2 hit, the block is invalidated from L2 cache and filled
> in Dcache and the rest behavior same as you explained in the diagram, you
> can use gem5's "most_excl" option in "gem5/src/mem/cache/Cache.py" file.
> You may need to take care of "clean victim" from dcache which is not a
> difficult modification.
>
> Best regards,
>
> Abhishek
>
>
> On Tue, May 7, 2019 at 1:48 AM Muhammad Avais 
> wrote:
>
>> Dear All,
>>   Is 'mostly exclusive cache' supported in GEM5 classic model
>> strictly non-exclusive cache? If it is not non-exclusive cache, how can I
>> make it non-exclusive cache?
>>
>>   The non-exclusive cache is shown in Fig. below.
>> [image: image.png]
>>  Can anyone guide me?
>>
>> Many thanks,
>> best regards,
>> Avais
>>
>> ___
>> gem5-users mailing list
>> gem5-users@gem5.org
>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users