sst-elements icon indicating copy to clipboard operation
sst-elements copied to clipboard

How to get stats when using Ramulator backend for MemController? [Help Wanted],[MemController]

Open shafeey opened this issue 5 years ago • 4 comments

Hi,

I wanted to use Ramulator for memory backend. When I use DRAMSim2, the DRAMSim2 stats are saved to 'dramsim.log' file. Is it possible to enable similar stats for Ramulator? Normally Ramulator will create a file DDR3.log for statistics when run in trace mode.

I have looked into the backend parameters. Only 'configFile' and 'verbose' are available. But I can't see 'verbose' printing anything to 'sstoutput' file.

I am using the latest master branch for sst core and elements. Can someone tell me if it's possible to do what I want?

Thank you.

shafeey avatar Jul 30 '19 00:07 shafeey

The memory stats are dumped into an SST statistics object. You can look at the statistics by finding the name that you assigned the component in the python configuration. For example:

memory = memctrl.setSubComponent("backend", "memHierarchy.ramulator")

memory.requests_received_GetS : Accumulator : Sum.u64 = 61; SumSQ.u64 = 61; Count.u64 = 61; Min.u64 = 1; Max.u64 = 1; 
memory.requests_received_GetSX : Accumulator : Sum.u64 = 0; SumSQ.u64 = 0; Count.u64 = 0; Min.u64 = 0; Max.u64 = 0; 
memory.requests_received_GetX : Accumulator : Sum.u64 = 3; SumSQ.u64 = 3; Count.u64 = 3; Min.u64 = 1; Max.u64 = 1; 
memory.requests_received_PutM : Accumulator : Sum.u64 = 0; SumSQ.u64 = 0; Count.u64 = 0; Min.u64 = 0; Max.u64 = 0; 
memory.outstanding_requests : Accumulator : Sum.u64 = 2037; SumSQ.u64 = 2349; Count.u64 = 104054; Min.u64 = 0; Max.u64 = 2; 
memory.latency_GetS : Accumulator : Sum.u64 = 1950; SumSQ.u64 = 63466; Count.u64 = 61; Min.u64 = 18; Max.u64 = 45; 
memory.latency_GetSX : Accumulator : Sum.u64 = 0; SumSQ.u64 = 0; Count.u64 = 0; Min.u64 = 0; Max.u64 = 0; 
memory.latency_GetX : Accumulator : Sum.u64 = 87; SumSQ.u64 = 2619; Count.u64 = 3; Min.u64 = 21; Max.u64 = 33; 
memory.latency_PutM : Accumulator : Sum.u64 = 0; SumSQ.u64 = 0; Count.u64 = 0; Min.u64 = 0; Max.u64 = 0; 
memory.cycles_with_issue : Accumulator : Sum.u64 = 64; SumSQ.u64 = 64; Count.u64 = 64; Min.u64 = 1; Max.u64 = 1; 
memory.cycles_attempted_issue_but_rejected : Accumulator : Sum.u64 = 0; SumSQ.u64 = 0; Count.u64 = 0; Min.u64 = 0; Max.u64 = 0; 
memory.total_cycles : Accumulator : Sum.u64 = 104054; SumSQ.u64 = 10827234916; Count.u64 = 1; Min.u64 = 104054; Max.u64 = 104054; 

hughes-c avatar Aug 05 '19 13:08 hughes-c

To add to that, there is not currently a way to enable ramulator's statistics via SST. We do have some statistics at the memory controller as @hughes-c pointed at. I will turn this thread into an Enhancement request however and we'll look at enabling this in a future release.

gvoskuilen avatar Aug 05 '19 19:08 gvoskuilen

Is this feature supported as of now?

divija95 avatar Oct 23 '22 05:10 divija95

@divija95 No this is not supported.

gvoskuilen avatar Oct 24 '22 15:10 gvoskuilen