由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 如何测试程序的execution time vs memory stall time (ratio)
相关主题
咱们好像生活在两个世界里C++中virtual function的性能差是个误解
请教一个ssh连接挂起的问题C++ 问题紧急求救
How to count how much time used for a program怎样除去循环链
accurate C++ timer老哥使用的一项技术: extern定义全局变量
How to detect cycle with minimum space应该请dsb之类学物理的来说说
有用Agile的吗?好多人害怕锁
一个关于simple cycle with zero weight的问题请教:属于google不到答案的问题
微软的zune bugSwift的gc不行啊
相关话题的讨论汇总
话题: cycles话题: memory话题: ticks话题: stalled话题: cpu
进入Programming版参与讨论
1 (共1页)
y**b
发帖数: 10166
1
请问一般用什么通用的方法和工具?
另外,PAPI_MEM_SCY(Cycles Stalled Waiting for Memory Access)似乎不支持
sandybridge/ivybridge/haswell几种处理器,是不是意味着基于PAPI的TAU,PerfSuite
,HPCToolkit也没法做这种测试?
g*********e
发帖数: 14401
2
Perf
Vtune

PerfSuite

【在 y**b 的大作中提到】
: 请问一般用什么通用的方法和工具?
: 另外,PAPI_MEM_SCY(Cycles Stalled Waiting for Memory Access)似乎不支持
: sandybridge/ivybridge/haswell几种处理器,是不是意味着基于PAPI的TAU,PerfSuite
: ,HPCToolkit也没法做这种测试?

h**********c
发帖数: 4120
3
vmstat
h**********c
发帖数: 4120
4
[et@localhost ~]$ vmstat -s
2915864 K total memory
1351968 K used memory
1433572 K active memory
652544 K inactive memory
516272 K free memory
1004 K buffer memory
1046620 K swap cache
3145724 K total swap
0 K used swap
3145724 K free swap
123731 non-nice user cpu ticks
88 nice user cpu ticks
19288 system cpu ticks
2600085 idle cpu ticks
1494 IO-wait cpu ticks
0 IRQ cpu ticks
3351 softirq cpu ticks
0 stolen cpu ticks
794970 pages paged in
802406 pages paged out
0 pages swapped in
0 pages swapped out
5843121 interrupts
9239204 CPU context switches
1485969013 boot time
7778 forks
y**b
发帖数: 10166
5
perf不错,好像不能测试mpi程序。请看这个例子:
perf stat -p 48382 sleep 10
Performance counter stats for process id '48382':
4821.604141 task-clock (msec) # 0.963 CPUs utilized
[100.00%]
1,218 context-switches # 0.253 K/sec
[100.00%]
0 cpu-migrations # 0.000 K/sec
[100.00%]
0 page-faults # 0.000 K/sec
17,312,623,873 cycles # 3.591 GHz
[100.00%]
5,783,328,106 stalled-cycles-frontend # 33.41% frontend cycles
idle [100.00%]
2,359,944,745 stalled-cycles-backend # 13.63% backend cycles
idle [100.00%]
27,153,618,219 instructions # 1.57 insns per cycle
# 0.21 stalled cycles
per insn [100.00%]
4,263,391,770 branches # 884.227 M/sec
[100.00%]
27,273,889 branch-misses # 0.64% of all branches
5.004692107 seconds time elapsed
(1)这里面ipc=1.57,那么cpi=1/1.57=0.64;
stalled cycles per insn=0.21,就是说比例为0.21/0.64=33% ?
也就是上面的stalled-cycles-frontend # 33.41% frontend cycles idle?
(2)比较而言,
front-end(fetch and decode phases) vs back-end(execute),
哪个个更体现memory stall time to execution time ratio,
或者说应该选用哪个指标来描述?
y**b
发帖数: 10166
6
我用intel pcm测试了一下单机工作站上的程序,
1 core 串行,L3HIT ratio 100%,
12 core并行,L3HIT ratio 97%,
这算高吗?
但也不知道pcm怎么测试cpu stall cycles。
1 (共1页)
进入Programming版参与讨论
相关主题
Swift的gc不行啊How to detect cycle with minimum space
说一道关于unbalanced树的面试题有用Agile的吗?
【工作机会】C++ Developer (Mid level and up) (DC area, 要绿卡) (ZZ) 一个关于simple cycle with zero weight的问题
Re: 码工就是吃青春饭的,我以前的公司有两三天不睡连续干的 (转载)微软的zune bug
咱们好像生活在两个世界里C++中virtual function的性能差是个误解
请教一个ssh连接挂起的问题C++ 问题紧急求救
How to count how much time used for a program怎样除去循环链
accurate C++ timer老哥使用的一项技术: extern定义全局变量
相关话题的讨论汇总
话题: cycles话题: memory话题: ticks话题: stalled话题: cpu