boegel / MICA

a Pin tool for collecting microarchitecture-independent workload characteristics
http://users.ugent.be/~kehoste/ELIS/MICA
Other
59 stars 34 forks source link

What is the meaning of 2 values in register traffic #21

Closed WilliamWangPeng closed 3 years ago

WilliamWangPeng commented 3 years ago

Hi dear author,
I have read the MICA article which says 2 values and 7 probabilities in register traffic as follwing shows:

image

and I have tested a set of data abot register traffic here:

image

I wonder which number is average number of register input operands per instruction, which is number of register reads per register write.

thank you
Best Regards to you
William

boegel commented 3 years ago

It's been way too long since I've looked at this myself (over 10 years...), but I think it should be easy to deduce from the source code what those numbers mean exactly, see https://github.com/boegel/MICA/blob/master/mica_reg.cpp#L319 (I think)

amirjamez commented 3 years ago

Hi @WilliamWangPeng,

As @boegel mentioned, you can refer to the code to understand the output values. Feel free to have a look at the README.md file we provided in the repo. Also, If you use analysis_type: all, it will emit almost ~100 metrics and we have provided a tablegen utility to generate a table of CSV for those. Have a look at line 10 to see the names:

https://github.com/boegel/MICA/blob/master/tableGen.sh#L10

WilliamWangPeng commented 3 years ago

Hi @WilliamWangPeng,

As @boegel mentioned, you can refer to the code to understand the output values. Feel free to have a look at the README.md file we provided in the repo. Also, If you use analysis_type: all, it will emit almost ~100 metrics and we have provided a tablegen utility to generate a table of CSV for those. Have a look at line 10 to see the names:

https://github.com/boegel/MICA/blob/master/tableGen.sh#L10

  • Amir

thank you so much dear @amirjamez
Another question is where to put the PID number in the tableGen.sh, so that I can use tableGen.sh to generate the a CSV file

image

image

for example, my PID number here is 19060

thank you
best regards
William

amirjamez commented 3 years ago

Line 24 of the script finds the unique PID of all analysis types so it concats the features of the same analysis into one csv.

WilliamWangPeng commented 3 years ago

Line 24 of the script finds the unique PID of all analysis types so it concats the features of the same analysis into one csv.

yes, I have noticed the line 24, I tried to replace the sed to 19060, but failed, and later I could just see the headers in micaTable.txt which has no data.

image

WilliamWangPeng commented 3 years ago

open another issue

amirjamez commented 3 years ago

@WilliamWangPeng pidList returns a list of PIDs MICA generated. Every time you run MICA, the output files are named with a new PID. It looks for all output files having the same PID, and later it iterates over them to generate the CSV file.