micbench でノートPCのメモリアクセスレイテンシを計測してみた


環境

ハードウェア
  • Lenovo Thinkpad X230
  • Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
    • L1 Data Cache: 32KB
    • L1 Instruction Cache: 32KB
    • L2 Cache: 256KB
    • L3 Cache: 3MB
$ cat /proc/cpuinfo |grep 'model name'|head -1
model name	: Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
$ cd /sys/devices/system/cpu/cpu0/cache
$ echo `cat index0/level` `cat index0/type` `cat index0/size`
1 Data 32K
$ echo `cat index1/level` `cat index1/type` `cat index1/size`
1 Instruction 32K
$ echo `cat index2/level` `cat index2/type` `cat index2/size`
2 Unified 256K
$ echo `cat index3/level` `cat index3/type` `cat index3/size`
3 Unified 3072K
OS

手順

#!/bin/bash

FILE=micbench_mem.log

for i in $(seq 1 10000); do
  echo ${i} $(micbench mem --rand --size ${i}KB --affinity 0:c0 --timeout 1|perl -lane '/clk_per_op/ and print $F[1]') >> $FILE
done
  • グラフ化する
    • 上のはEXCELでグラフ化しました。