2023.08.05
make spec2017/523.xalancbmk.0/xalancbmk.0.reg.bz2
运行了100h+还未出结果。
2023.07.14
$ sde_pinpoints.py --default_phases --program_name ls --input_name miao --sdehome /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/ --mode=st --command ls -S 10000
│ sde_pinpoints.py: main()
└─┐ pinpoints.py: Run()
└─┐ phases.py: Logger()
├─┐ $ sde_logger.py --log_file whole_program.miao/ls.miao --global_file global.dat.9190 "ls"
│ ├─┐ sde_logger.py: main()
│ │ └─┐ logger.py: Run()
│ │ │ $ sde_log.py --compressed=bzip2 --log_file whole_program.miao/ls.miao --log_options "-log:syminfo -log:pid " --global_file global.dat.1103 -- "ls"
│ │ └─┐ sde_log.py: main()
│ │ └─┐ log.py: Run()
│ │ └ $ /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/sde -log -xyzzy -log:basename whole_program.miao/ls.miao -log:mt 0 -log:compressed bzip2 -log:syminfo -log:pid -- ls
│ └ 输出信息Finished generating whole program pinballs
│ util.py: PrintInstrCount(...)
├── 读文件whole_program.miao/ls.miao_149.0.result,其中0指TID。
│ 输出信息Generating basic block vectors
│ phases.py: BasicBlockVector(...)
├─┐ sde_replay_dir.py --replay_dir whole_program.miao --log_options "-bbprofile -slice_size 10000" --bb_add_filename --global_file global.dat.20959
│ └─┐ sde_replay_dir.py: main()
│ └─┐ replay_dir.py: Run()
│ └─┐ replay_dir.py: ProcessCommandLine(...)
│ └─┐ replay_dir.py: RunAllDir(..., Replay, ...)
│ └─┐ $ sde_replayer.py --replay_file whole_program.miao/ls.miao_149 --log_options "-bbprofile -slice_size 10000 -o ls.miao_149.Data/ls.miao_149" --global_file global.dat.5057
│ └─┐ sde_replayer.py: main()
│ └─┐ replayer.py: Run()
│ └── $ /ome/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/sde -p -xyzzy -p -reserve_memory -p whole_program.miao/ls.miao_149.address -replay -xyzzy -replay:deadlock_timeout 0 -replay:basename whole_program.miao/ls.miao_149 -replay:playout 0 -bbprofile -slice_size 10000 -o ls.miao_149.Data/ls.miao_149 -log:mt 0 -- /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/intel64/nullapp
│ 输出信息Finished basic block vector generation
│ 输出信息Running Simpoint on all processes
└─┐ pinpoints.py: util.RunAllDir(..., RunSimPoint,...)
└─┐ phases.py: RunSimPoint()
├─┐ 输出信息Running Simpoints for
│ │ $ simpoint.py --bbv_file ls.miao_149.T.0.bb --data_dir ls.miao_149.Data --simpoint_file ls.miao_149 -f 0 --maxk 20 --cutoff 1.0 --global_file global.dat.16576 --global_file global.dat.30995
│ └─┐ simpoint.py: main()->Run()
│ └─┐ 进入Data文件夹,复制bbv_file为t.bb
│ │ simpoint.ppy: NormProjectBBV(...)
│ ├─┐ $ regions.py --project_bbv --bbv_file t.bb --dimensions 16
│ │ └── 生成projected_t.bb
│ │ simpoint.ppy: RunSimpoint(...)
│ ├─┐ $ simpoint -loadFVFile t.bb -coveragePct 1.0 -maxK 20 -saveSimpoints ./t.simpoints -saveSimpointWeights ./t.weights -saveLabels t.labels
│ │ └── 生成simpoint.out
│ │ simpoint.ppy: GenRegionCSVFile(...) $ regions.py -f 0 --csv_region --bbv_file t.bb --region_file t.simpoints --weight_file t.weights
│ └─┐ $ regions.py -f 0 --csv_region --bbv_file t.bb --region_file t.simpoints --weight_file t.weights
│ └── 生成ls.miao_149.pinpoints.csv
│ 输出信息Finished running Simpoint for all processes
│ 输出信息Generating region pinballs
└─┐ phases.py: MultiIterGenRegionPinballs(...)
└─┐ util.RunAllDir(..., self.GetMaxClusters, ...)
│ util.RunAllDir(..., self.SetFirstIterCSV, ...)
├─┐ phases.py: SetFirstIterCSV(...)
│ └── 输出信息Setup original CSV file for iteration 1 in dir
│ 输出信息Iteration 1 generating pinballs
│ phases.py: GenAllRegionPinballs(...)
└─┐ phases.py: GenRegionPinballs(...)
├─┐ $ sde_replayer.py --replay_file whole_program.miao/ls.miao_149 --log_options " -log -xyzzy -regions:in ls.miao_149.pinpoints.in.csv -regions:out ls.miao_149.pinpoints.out.csv -regions:warmup 1500 -regions:prolog 0 -regions:epilog 0 -log:basename ls.miao_149.pp/ls.miao_149 -log:compressed bzip2 -log:focus_thread 0" --global_file global.dat.25878
│ └── $ /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/sde -p -xyzzy -p -reserve_memory -p whole_program.miao/ls.miao_149.address -replay -xyzzy -replay:deadlock_timeout 0 -replay:basename whole_program.miao/ls.miao_149 -replay:playout 0 -log -xyzzy -regions:in ls.miao_149.pinpoints.in.csv -regions:out ls.miao_149.pinpoints.out.csv -regions:warmup 1500 -regions:prolog 0 -regions:epilog 0 -log:basename ls.miao_149.pp/ls.miao_149 -log:compressed bzip2 -log:focus_thread 0 -log:mt 0 -- /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/intel64/nullapp
│ phases.py: util.RunAllDir(..., self.GetNextRegionCSV, ...)
└ 若out.csv不空,out.csv变in.csv则再来一遍
尝试复现
$ sde -log -xyzzy -log:basename whole_program.wang/ls.wang -log:mt 0 -log:compressed bzip2 -log:syminfo -log:pid -- ls
生成文件whole_program.wang/
ls.wang_854.0.dyn_text.bz2 ls.wang_854.address ls.wang_854.procinfo.xml
ls.wang_854.0.reg.bz2 ls.wang_854.cpuid.def ls.wang_854.text.bz2
ls.wang_854.0.result ls.wang_854.global.log
ls.wang_854.0.sel.bz2 ls.wang_854.log.txt
$ mkdir ls.wang_854.Data
$ ./sde -p -xyzzy -p -reserve_memory -p whole_program.wang/ls.wang_854.address -replay -xyzzy -replay:deadlock_timeout 0 -replay:basename whole_program.wang/ls.wang_854 -replay:playout 0 -bbprofile -slice_size 10000 -o ls.wang_854.Data/ls.wang_854 -log:mt 0 -- /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/intel64/nullapp
生成文件
ls.wang_854.Data/ls.wang_854.T.0.bb
whole_program.wang/ls.wang_854.replay.txt
$ cd ls.wang_854.Data
$ cp ls.wang_854.T.0.bb t.bb
$ /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/pinplay-scripts/regions.py --project_bbv --bbv_file t.bb --dimensions 16 > projected_t.bb
生成文件
ls.wang_854.Data/projected_t.bb
$ /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/pinplay-scripts/PinPointsHome/Linux/bin/SimPoint.3.2/bin/simpoint -loadFVFile t.bb -coveragePct 1.0 -maxK 20 -saveSimpoints ./t.simpoints -saveSimpointWeights ./t.weights -saveLabels t.labels
生成文件ls.wang_854.Data/
t.labels t.simpoints t.weights
$ regions.py -f 0 --csv_region --bbv_file t.bb --region_file t.simpoints --weight_file t.weights > ls.wang_854.pinpoints.csv
生成文件ls.wang_854.Data/ls.wang_854.pinpoints.csv
$ cd ..
$ cp ls.wang_854.Data/ls.wang_854.pinpoints.csv ./ls.wang_854.pinpoints.in.csv
$ mkdir ls.wang_854.pp
$ ./sde -p -xyzzy -p -reserve_memory -p whole_program.wang/ls.wang_854.address -replay -xyzzy -replay:deadlock_timeout 0 -replay:basename whole_program.wang/ls.wang_854 -replay:playout 0 -log -xyzzy -regions:in ls.wang_854.pinpoints.in.csv -regions:out ls.wang_854.pinpoints.out.csv -regions:warmup 1500 -regions:prolog 0 -regions:epilog 0 -log:basename ls.wang_854.pp/ls.wang_854 -log:compressed bzip2 -log:focus_thread 0 -log:mt 0 -- /home/xieby1/Downloads/sde-external-9.21.1-2023-04-24-lin/intel64/nullapp
生成文件ls.wang_854.pp/*
尝试使用pinball2elf,gem5修复了/proc/self/environ(返回空的文件),可以正常运行。
2023.07.17
用ubuntu16 gcc5编译出来的spec 2000的memset使用了vinserti128 AVX2指令。 gem5 v23并未实现。
2023.07.19
spec2000 gzip测试
sde64 -log -xyzzy -log:basename whole_program/gzip -log:mt 0 -log:compressed bzip2 -log:syminfo -log:fat -- ../spec2000/musl/benchspec/CINT2000/164.gzip/run/00000002/gzip_base.nix ../spec2000/musl/benchspec/CINT2000/164.gzip/run/00000002/input.source 1
mkdir gzip.data
sde64 -p -xyzzy -p -reserve_memory -p whole_program/gzip.address -replay -xyzzy -replay:deadlock_timeout 0 -replay:basename whole_program/gzip -replay:playout 0 -bbprofile -slice_size 10000 -o gzip.data/gzip -log:mt 0 -log:fat -- ${SDE_ROOT}/intel64/nullapp
regions.py --project_bbv --bbv_file gzip.data/gzip.T.0.bb --dimensions 16 > gzip.data/projected_t.bb
simpoint -loadFVFile gzip.data/gzip.T.0.bb -coveragePct 1.0 -maxK 20 -saveSimpoints gzip.data/t.simpoints -saveSimpointWeights gzip.data/t.weights -saveLabels gzip.data/t.labels
regions.py -f 0 --csv_region --bbv_file gzip.data/gzip.T.0.bb --region_file gzip.data/t.simpoints --weight_file gzip.data/t.weights > gzip.data/pinpoints.csv
mkdir pp
sde64 -p -xyzzy -p -reserve_memory -p whole_program/gzip.address -replay -xyzzy -replay:deadlock_timeout 0 -replay:basename whole_program/gzip -replay:playout 0 -log -xyzzy -regions:in gzip.data/pinpoints.csv -regions:overlap_ok 1 -regions:warmup 1500 -regions:prolog 0 -regions:epilog 0 -log:basename pp/gzip -log:compressed bzip2 -log:focus_thread 0 -log:mt 0 -log:fat -- ${SDE_ROOT}/intel64/nullapp
pinball2elf.basic.sh pp/gzip_t0r11_warmup1500_prolog0_region10001_epilog0_011_0-10729.0