Atom

結局Atom(ズアルコアのやつ)にした。

ケースとMBあわせて2.2万くらい。HDDとメモリは余ってるのを使った。物欲発散のコストパフォーマンスは素晴らしいとしか言いようがない。

体感としてはCore2とあまり変わらないと感じてしまう僕はどうかしてる。

CPUというよりメモリ搭載量が6G→1Gになっているので、辛い場面はある。

cpuinfoは↓

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 28
model name	:          Intel(R) Atom(TM) CPU  330   @ 1.60GHz
stepping	: 2
cpu MHz		: 1596.084
cache size	: 512 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 10
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl tm2 ssse3 cx16 xtpr lahf_lm
bogomips	: 3195.84
clflush size	: 64
cache_alignment	: 64
address sizes	: 32 bits physical, 48 bits virtual
power management:

rdtscは1cycleで1count。粒度は調べてない

昔書いた→http://morihyphen.hp.infoseek.co.jp/txt/crusoe.c.txt をループ回数と64bit用にちょっと直したもの。もともとcrusoe用なので、謎なのも含んでる。

これで結果が、

(64bit)

empty
1:4.500000
7:1.178571
49:0.382653
343:0.212099
nop
1:10.500000
7:8.250000
49:7.790816
343:7.239796
add
1:6.750000
7:2.035714
49:1.545918
343:1.204810
mul
1:7.500000
7:6.321429
49:5.571429
343:5.324344
paraadd
1:10.500000
7:2.678571
49:2.311224
343:2.101312
paramul
1:19.500000
7:7.178571
49:6.596939
343:6.255831
depadd
1:10.500000
7:2.892857
49:2.464286
343:2.442420
removedep
1:21.750000
7:3.857143
49:2.984694
343:2.538630
addrgen
1:22.500000
7:2.142857
49:1.591837
343:1.506560
paraaddrgen
1:10.500000
7:3.428571
49:2.785714
343:2.615160
incpc
1:23.250000
7:7.714286
49:7.270408
343:7.191691
load
1:8.250000
7:2.892857
49:2.280612
343:2.125364
pmadd
1:7.500000
7:1.714286
49:1.255102
343:1.185131
para_pmadd
1:52.500000
7:3.535714
49:3.000000
343:2.943149
para_pmaddw
1:12.750000
7:4.392857
49:3.168367
343:2.934402
para_pmaddw8
1:55.500000
7:7.607143
49:7.637755
343:7.346939
paraloadstore
1:9.750000
7:3.750000
49:2.831633
343:2.890671
paraloadstore
1:9.000000
7:4.071429
49:3.581633
343:3.139942
(32bit)

empty
1:3.750000
7:1.178571
49:0.352041
343:0.153061
nop
1:6.750000
7:1.500000
49:0.795918
343:0.647230
add
1:5.250000
7:1.714286
49:1.224490
343:1.082362
mul
1:9.000000
7:6.000000
49:5.357143
343:5.086006
paraadd
1:7.500000
7:1.821429
49:1.362245
343:1.152332
paramul
1:10.500000
7:6.857143
49:6.214286
343:6.085277
depadd
1:17.250000
7:3.000000
49:2.295918
343:2.079446
removedep
1:8.250000
7:2.571429
49:2.265306
343:2.079446
addrgen
1:6.000000
7:1.821429
49:1.285714
343:1.141399
paraaddrgen
1:9.750000
7:3.107143
49:2.341837
343:2.149417
incpc
1:11.250000
7:7.392857
49:7.010204
343:6.881195
nopcall
1:19.500000
7:9.964286
49:9.290816
343:9.203353
indirect
1:27.750000
7:11.357143
49:10.377551
343:10.202624
load
1:9.000000
7:2.571429
49:1.545918
343:1.395044
pmadd
1:6.000000
7:1.607143
49:1.239796
343:1.084548
para_pmadd
1:12.000000
7:2.464286
49:1.775510
343:1.650875
para_pmaddw
1:11.250000
7:2.571429
49:1.775510
343:1.650875
para_pmaddw8
1:24.750000
7:5.250000
49:4.301020
343:4.143586
paraloadstore
1:15.000000
7:3.000000
49:2.556122
343:2.396501
paraloadstore
1:5.250000
7:3.107143
49:2.525510
343:2.389942

あれ?64bitのほうが遅くね?

と、思ったけど、なんかたまに倍くらい遅くなるときがあるな。SMTのせい?

もう一回はかったところ64bitでも通常は↓で32bitとの違いはぱっと見たかんじ無い。

(64bit)

empty
1:2.250000
7:1.285714
49:0.336735
343:0.146501
nop
1:10.500000
7:6.857143
49:6.290816
343:6.144315
add
1:6.750000
7:1.500000
49:1.270408
343:1.080175
mul
1:8.250000
7:5.571429
49:5.219388
343:5.079446
paraadd
1:10.500000
7:2.250000
49:1.346939
343:1.150146
paramul
1:10.500000
7:6.964286
49:6.198980
343:6.076531
depadd
1:9.750000
7:2.678571
49:2.295918
343:2.088192
removedep
1:26.250000
7:2.785714
49:2.295918
343:2.088192
addrgen
1:6.000000
7:1.928571
49:1.285714
343:1.152332
paraaddrgen
1:9.750000
7:2.892857
49:2.295918
343:2.138484
incpc
1:11.250000
7:7.285714
49:6.979592
343:6.887755
load
1:8.250000
7:2.142857
49:1.668367
343:1.430029
pmadd
1:7.500000
7:1.714286
49:1.224490
343:1.075802
para_pmadd
1:12.750000
7:2.571429
49:1.852041
343:1.773324
para_pmaddw
1:12.000000
7:2.357143
49:1.867347
343:1.768950
para_pmaddw8
1:23.250000
7:5.142857
49:4.392857
343:4.261662
paraloadstore
1:8.250000
7:3.107143
49:2.556122
343:2.383382
paraloadstore
1:5.250000
7:3.000000
49:2.433673
343:2.361516

あと測ってほしい希望などあれば測ります。