Skip to content

boruiwang/PinTool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

####################################
# 
# 
#####################################

# How MyPinTool works
1. We define three kinds of dummy function, dummy_fixed_pim, dummy_gen_pim(prog_pim) and dummy_main, so in your source code, you need to define those three functions so that pintool can start to work. Also you need to make sure the symbol of those functions in your execution file, using "nm <your file>", match with MyPinTool. You can look at line8 to line13 to change the symbol.
2. Because we only focus on part of the program, so we implement dummy_main function to get rid of the part that we don't care about. So in the MyPinTool, every method begins with dummy_main_begin.
3. It will count computation instruction and memory instruction for your fix_pim or prog_pim or not_offloading_pim in an output file.

# How to run MyPinTool in Ubuntu
1. MyPinTool.cpp is the file to trace the our target program which is under pin-2.14-71313-gcc.4.4.7-linux/source/tools/MyPinTool.

2. Every time you change the code in MyPinTool.cpp, you should go to pin-2.14-71313-gcc.4.4.7-linux/source/tools and run "make --directory MyPinTool" which will create obj-intel64 folder where we can find MyPinTool.so.

3. Under pin-2.14-71313-gcc.4.4.7-linux path, use "./pin.sh -t <path to MyPinTool.so> -o <path to your output file> -- <your test file>" to run the program. If you command line is wrong, it will create a file named pin.log in same folder to tell you the error. And if it is correct, then it will create a pimLog.out file, which is our output.

(it works for pin-2.14-7-1313)

# How to use simulator in python 2.6 or 2.7
  Command line is:
  python simulator.py -f <pimlogfile> fixPIM_comp progPIM_comp comp mem offloading return sync

  Also you use python simulator.py -h to see the usage.
  Please use the PIM log from my pintool, because the simulator needs to parse the file.

# SNU_NPS-1.0.3
  This is NASA bench mark and we are using NPB3.3-SER-C as our application. We only deal with CG and MG currently, so you can use "make CG CLASS=S" under /NPB3.3-SER-C to compiler the program and the output is under bin folder.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •