Discussion:
"Cache" debug flag not printing anything under Ruby memory system
(too old to reply)
Binod Kumar
2018-10-21 13:43:04 UTC
Permalink
Dear all,
I am running the following command to debug(collect) cache contents for a
multi-core simulation with ruby memory system:
*./build/X86/gem5.opt --debug-flags=Cache configs/example/se.py
--cpu-type=DerivO3CPU --ruby --caches --l2cache --l1i_size=32kB
--l1d_size=32kB --l1i_assoc=8 --l1d_assoc=8 --l2_size=256kB --l2_assoc=4
--cacheline_size=64 --num-l2caches=8 --num-l3caches=1 --mem-size=8GB
--network=garnet2.0 --topology=MeshDirCorners_XY --num-cpus=8 --num-dirs=4
--mesh-rows=4 -c my-binary*
I am not able to understand as to why the "*Cache*" debug-flag is not
printing anything. Is this flag not allowed in "Ruby" memory system? I have
used the other flags like "ProtocolTrace" and "Ruby" which are printing
perfectly but i need the contents of "Cache" flag.
Also, the above command runs perfectly and simulation is completed.
However, nothing gets printed. I am unable to figure out the reason behind
it even after looking at the source codes.
P.S. my-binary is a multi-threaded workload.
Any help will be greatly appreciated.


*With Best Regards,*

*Binod Kumar*
IIT Bombay
Afoakwa, Richard
2018-10-21 14:41:24 UTC
Permalink
That’s because the Cache flag is specific to caches in classic memory. This is located in src/men/caches. However ruby is a different memory system. It’s cache debug flag is RubyCache. The implementation is located in src/mem/ruby/structures.

Hope this helps.

On Oct 21, 2018, at 9:46 AM, Binod Kumar <***@gmail.com<mailto:***@gmail.com>> wrote:

Dear all,
I am running the following command to debug(collect) cache contents for a multi-core simulation with ruby memory system:
./build/X86/gem5.opt --debug-flags=Cache configs/example/se.py --cpu-type=DerivO3CPU --ruby --caches --l2cache --l1i_size=32kB --l1d_size=32kB --l1i_assoc=8 --l1d_assoc=8 --l2_size=256kB --l2_assoc=4 --cacheline_size=64 --num-l2caches=8 --num-l3caches=1 --mem-size=8GB --network=garnet2.0 --topology=MeshDirCorners_XY --num-cpus=8 --num-dirs=4 --mesh-rows=4 -c my-binary
I am not able to understand as to why the "Cache" debug-flag is not printing anything. Is this flag not allowed in "Ruby" memory system? I have used the other flags like "ProtocolTrace" and "Ruby" which are printing perfectly but i need the contents of "Cache" flag.
Also, the above command runs perfectly and simulation is completed. However, nothing gets printed. I am unable to figure out the reason behind it even after looking at the source codes.
P.S. my-binary is a multi-threaded workload.
Any help will be greatly appreciated.

With Best Regards,
Binod Kumar
IIT Bombay

_______________________________________________
gem5-users mailing list
gem5-***@gem5.org<mailto:gem5-***@gem5.org>
https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwIGaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=5A58gwYPtH1X7XJjZKm5Ua7YEu6RoctEmx_IrwmK3Cs&m=yT1M4HCo4HqZ-kI4zDInm2F_zBiJwPc0eCmPmxyDQhs&s=AftXsic8_w7ABjZIlIJWdCyulC0E0Iz0lMvrCz91S9M&e=
Binod Kumar
2018-10-21 18:07:44 UTC
Permalink
Thanks for the reply, I tried RubyCache flag. However, It is printing only
directory related information. Other Ruby Debug flags such as
RubyCacheTrace and RubyMemory are also not giving any output. Particularly,
I want to access Cache line related information by creating my own debug
flag. When I made my own flag by following all the usual steps of debug
flag creation, nothing is getting printed. Simulation runs successfully.
please help..


*With Best Regards,*

*Binod Kumar*




On Sun, Oct 21, 2018 at 8:11 PM Afoakwa, Richard <***@ur.rochester.edu>
wrote:

> That’s because the Cache flag is specific to caches in classic memory.
> This is located in src/men/caches. However ruby is a different memory
> system. It’s cache debug flag is RubyCache. The implementation is located
> in src/mem/ruby/structures.
>
> Hope this helps.
>
> On Oct 21, 2018, at 9:46 AM, Binod Kumar <***@gmail.com> wrote:
>
> Dear all,
> I am running the following command to debug(collect) cache contents for a
> multi-core simulation with ruby memory system:
> *./build/X86/gem5.opt --debug-flags=Cache configs/example/se.py
> --cpu-type=DerivO3CPU --ruby --caches --l2cache --l1i_size=32kB
> --l1d_size=32kB --l1i_assoc=8 --l1d_assoc=8 --l2_size=256kB --l2_assoc=4
> --cacheline_size=64 --num-l2caches=8 --num-l3caches=1 --mem-size=8GB
> --network=garnet2.0 --topology=MeshDirCorners_XY --num-cpus=8 --num-dirs=4
> --mesh-rows=4 -c my-binary*
> I am not able to understand as to why the "*Cache*" debug-flag is not
> printing anything. Is this flag not allowed in "Ruby" memory system? I have
> used the other flags like "ProtocolTrace" and "Ruby" which are printing
> perfectly but i need the contents of "Cache" flag.
> Also, the above command runs perfectly and simulation is completed.
> However, nothing gets printed. I am unable to figure out the reason behind
> it even after looking at the source codes.
> P.S. my-binary is a multi-threaded workload.
> Any help will be greatly appreciated.
>
>
> *With Best Regards, *
>
> *Binod Kumar *
> IIT Bombay
>
> _______________________________________________
> gem5-users mailing list
> gem5-***@gem5.org
>
> https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwIGaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=5A58gwYPtH1X7XJjZKm5Ua7YEu6RoctEmx_IrwmK3Cs&m=yT1M4HCo4HqZ-kI4zDInm2F_zBiJwPc0eCmPmxyDQhs&s=AftXsic8_w7ABjZIlIJWdCyulC0E0Iz0lMvrCz91S9M&e=
>
> _______________________________________________
> gem5-users mailing list
> gem5-***@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Afoakwa, Richard
2018-10-21 18:56:10 UTC
Permalink
Have you tried RubySlicc?

On Oct 21, 2018, at 2:08 PM, Binod Kumar <***@gmail.com<mailto:***@gmail.com>> wrote:

Thanks for the reply, I tried RubyCache flag. However, It is printing only directory related information. Other Ruby Debug flags such as RubyCacheTrace and RubyMemory are also not giving any output. Particularly, I want to access Cache line related information by creating my own debug flag. When I made my own flag by following all the usual steps of debug flag creation, nothing is getting printed. Simulation runs successfully. please help..

With Best Regards,
Binod Kumar




On Sun, Oct 21, 2018 at 8:11 PM Afoakwa, Richard <***@ur.rochester.edu<mailto:***@ur.rochester.edu>> wrote:
That’s because the Cache flag is specific to caches in classic memory. This is located in src/men/caches. However ruby is a different memory system. It’s cache debug flag is RubyCache. The implementation is located in src/mem/ruby/structures.

Hope this helps.

On Oct 21, 2018, at 9:46 AM, Binod Kumar <***@gmail.com<mailto:***@gmail.com>> wrote:

Dear all,
I am running the following command to debug(collect) cache contents for a multi-core simulation with ruby memory system:
./build/X86/gem5.opt --debug-flags=Cache configs/example/se.py --cpu-type=DerivO3CPU --ruby --caches --l2cache --l1i_size=32kB --l1d_size=32kB --l1i_assoc=8 --l1d_assoc=8 --l2_size=256kB --l2_assoc=4 --cacheline_size=64 --num-l2caches=8 --num-l3caches=1 --mem-size=8GB --network=garnet2.0 --topology=MeshDirCorners_XY --num-cpus=8 --num-dirs=4 --mesh-rows=4 -c my-binary
I am not able to understand as to why the "Cache" debug-flag is not printing anything. Is this flag not allowed in "Ruby" memory system? I have used the other flags like "ProtocolTrace" and "Ruby" which are printing perfectly but i need the contents of "Cache" flag.
Also, the above command runs perfectly and simulation is completed. However, nothing gets printed. I am unable to figure out the reason behind it even after looking at the source codes.
P.S. my-binary is a multi-threaded workload.
Any help will be greatly appreciated.

With Best Regards,
Binod Kumar
IIT Bombay

_______________________________________________
gem5-users mailing list
gem5-***@gem5.org<mailto:gem5-***@gem5.org>
https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwIGaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=5A58gwYPtH1X7XJjZKm5Ua7YEu6RoctEmx_IrwmK3Cs&m=yT1M4HCo4HqZ-kI4zDInm2F_zBiJwPc0eCmPmxyDQhs&s=AftXsic8_w7ABjZIlIJWdCyulC0E0Iz0lMvrCz91S9M&e=
_______________________________________________
gem5-users mailing list
gem5-***@gem5.org<mailto:gem5-***@gem5.org>
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users<https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwMFaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=5A58gwYPtH1X7XJjZKm5Ua7YEu6RoctEmx_IrwmK3Cs&m=Q9-Anp9RNcc2kKmRw4y6CWpJAONdmsVEhNPhMML5k0k&s=cFO-P9kHFqU8fbrvQYkdOyKvGpOKE9ASUiI89_ZLQ-g&e=>
_______________________________________________
gem5-users mailing list
gem5-***@gem5.org<mailto:gem5-***@gem5.org>
https://urldefense.proofpoint.com/v2/url?u=http-3A__m5sim.org_cgi-2Dbin_mailman_listinfo_gem5-2Dusers&d=DwIGaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=5A58gwYPtH1X7XJjZKm5Ua7YEu6RoctEmx_IrwmK3Cs&m=Q9-Anp9RNcc2kKmRw4y6CWpJAONdmsVEhNPhMML5k0k&s=cFO-P9kHFqU8fbrvQYkdOyKvGpOKE9ASUiI89_ZLQ-g&e=
Loading...