我已经从Sniper设置了狙击模拟器,并且能够使用 make 和 /bin/ls 命令使用以下命令成功执行 fft 测试程序 ->
./run-sniper - /bin/ls
这些命令使用 sniper 成功执行。
我已经编译了英特尔 TBB 的示例程序 sub_string_finder_extended.cpp 使用
gcc -O2 -DNDEBUG -o sub_string_finder_extended.gcc sub_string_finder_extended.cpp -ltbb -lrt ./sub_string_finder_extended.gcc
成功执行没有任何错误但是当我使用狙击手运行它时
./run-sniper -- ./sub_string_finder_extended.gcc
显示以下输出后挂起
[狙击手] 开始[狙击手] ---------------------------------------- ------------------------------------- [SNIPER] 使用 Pin 前端的狙击手 [SNIPER] 运行完整应用程序在详细模式 [狙击手] -------------------------------------------- ------------------------------------ [SNIPER] 启用性能模型 [SNIPER] 将检测模式设置为 DETAILED
完成构建字符串。
我用谷歌搜索了它,但找不到任何与在狙击手上使用英特尔 TBB 相关的主题,但是在狙击手的 wiki 页面上提到支持英特尔 TBB 程序。
编辑:狙击手 v-6.1 操作系统-ubuntu 12.04 LTS
uname -r 输出-> 3.5.0-23-generic
英特尔 TBB(编译自)-> https://github.com/01org/tbb
据我所知,TBB 在Sniper 中仍然正常工作。
我认为您可能遇到的问题是详细模拟可能需要相当长的时间,因此看起来好像狙击手挂了一样。使用Pin的 mix-mt 工具快速检查显示,该应用程序总共执行 53B 条指令,在详细模拟中需要一天多的时间。检查 Sniper 中发生了什么的一种方法是添加-sprogresstrace
选项以启用${SNIPER_ROOT}/scripts/progresstrace.py
脚本。
这些示例在 Ubuntu 12.04.5 LTS (3.13.0-32-generic) 上运行,使用 gitid 的 TBB eb6336ab
,Sniper 6.1 和 Pinplay-2.2-pin-2.14-71313。
-n2
)-cnehalem-lite
此示例中使用更快、仅缓存的 Nehalem-Lite 核心模型 ( )(通常不用于详细模拟)-sprogresstrace
)$ ${SNIPER_ROOT}/run-sniper -n2 -sstop-by-icount:30000000:30000000000 --roi-script -cnehalem-lite -sprogresstrace -- ${TBB_ROOT}/examples/GettingStarted/sub_string_finder/sub_string_finder_extended
Done building string.
[STOPBYICOUNT] Starting after 30000000000 instructions
[STOPBYICOUNT] Then stopping after simulating 30000000 instructions in detail
Done with serial version.
[STOPBYICOUNT] Starting ROI after 30000000005 instructions
[STOPBYICOUNT] Ending ROI after 30000002 instructions (30000000 requested)
[SNIPER] End
[SNIPER] Elapsed time: 316.56 seconds
$ head -n5 sim.out
| Core 0 | Core 1
Instructions | 14996162 | 15002407
Cycles | 16365757 | 16365757
IPC | 0.92 | 0.92
Time (ns) | 6152540 | 6152540
$ ${SNIPER_ROOT}/run-sniper -n2 --no-cache-warming -sstop-by-icount:30000000:30000000000 --roi-script -cnehalem-lite -sprogresstrace -- ${TBB_ROOT}/examples/GettingStarted/sub_string_finder/sub_string_finder_extended
[SNIPER] Start
[STOPBYICOUNT] Starting after 30000000000 instructions
[STOPBYICOUNT] Then stopping after simulating 30000000 instructions in detail
[SNIPER] --------------------------------------------------------------------------------
[SNIPER] Sniper using Pin frontend
[SNIPER] Running in script-driven instrumenation mode (--roi-script)
[SNIPER] Using FAST_FORWARD mode for warmup
[SNIPER] Using CACHE_ONLY mode for detailed
[SNIPER] --------------------------------------------------------------------------------
Done building string.
[PROGRESS] 10000M instructions, 94977 KIPS, 1.00 IPC
[PROGRESS] 20000M instructions, 95086 KIPS, 1.00 IPC
Done with serial version.
[STOPBYICOUNT] Starting ROI after 30000000005 instructions
[SNIPER] Enabling performance models
[SNIPER] Setting instrumentation mode to CACHE_ONLY
[PROGRESS] 30000M instructions, 99674 KIPS, 2.00 IPC
[STOPBYICOUNT] Ending ROI after 30000002 instructions (30000000 requested)
[SNIPER] Disabling performance models
[SNIPER] Leaving ROI after 0.58 seconds
[SNIPER] Simulated 30.0M instructions, 28843.6M cycles, 0.00 IPC
[SNIPER] Simulation speed 52057.4 KIPS (26028.7 KIPS / target core - 38.4ns/instr)
[SNIPER] Sampling: executed 0.00% of simulated time in detailed mode
[SNIPER] Setting instrumentation mode to FAST_FORWARD
[SNIPER] End
[SNIPER] Elapsed time: 316.56 seconds
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句