Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Energy measurements #7

Open
accio-sunshine opened this issue Jul 7, 2020 · 2 comments
Open

Energy measurements #7

accio-sunshine opened this issue Jul 7, 2020 · 2 comments

Comments

@accio-sunshine
Copy link

accio-sunshine commented Jul 7, 2020

I am trying to use ramulator-pim to simulate a PIM device similar to the one you used in the NAPEL paper. In this paper, it is mentioned that ramulator simulates the time and energy of the HMC-PIM device.While I can get the execution time, I do not understand what memspec file from DRAMPower should I use. The only 3D-stacked memory in the files is the WIDE I/O memory, but it is not HMC.
I also noticed that starting from line 218 of HMC_Controller.h, there is some code to compute the energy using drampower library, but it seems not active. Trying to force this code line and inserting drampower_memspecs = <path_to_memspecfile> ramulator crashed after a while. Is it accurate to just run cmd-traces using drampower and using the memespec for WIDE I/O memory for HMC ?

To replicate the error : In the file src/HMC_Controller.h, uncommenting these lines starting from 218. . I tried to enable it and insert into the config file for pim: drampower_memspecs = ../common/DRAMPower/memspecs/JEDEC_256Mb_WIDEIO_SDR-266_128bit.xml

/*if (configs["drampower_memspecs"] != "") {
   with_drampower = true;
   drampower = new libDRAMPower(
   Data::MemSpecParser::getMemSpecFromXML(
   configs["drampower_memspecs"]),
   true);
   }*/
@accio-sunshine
Copy link
Author

Hi,
I was able to fix this and obtain DRAMPower stats within ramulator stats itself. But this works only when --split trace= false. When split trace is true for PIM config, ramulator doesn't terminate at all. Here is the log file for split trace =true -
Do I need to make any changes?

Trace opended: ../zsim-ramulator/polybench/2mm/pim/pim-poly_2mm.out.0
tracenum: 4
trace_list[0]: ../zsim-ramulator/polybench/2mm/pim/pim-poly_2mm.out.0
trace_list[1]: ../zsim-ramulator/polybench/2mm/pim/pim-poly_2mm.out.1
trace_list[2]: ../zsim-ramulator/polybench/2mm/pim/pim-poly_2mm.out.2
trace_list[3]: ../zsim-ramulator/polybench/2mm/pim/pim-poly_2mm.out.3
Perfect scheduling disabled 
Total Reads: 312018 Total Writes: 108021
Core 0 got 420038
Core 1 got 0
Core 2 got 0
Core 3 got 0

@V-Run-P
Copy link

V-Run-P commented Jul 31, 2023

How did you Obtain DRAMPower Stats? Can you please help with that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants