<< 14/16 >>
First Last

結果

64bit32bit
nolock0.790571s1.04586s (結果は当然おかしい)
atomic0.808765s1.03325s
TSX(asm)0.963602s
TSX(intrin)0.944928s1.13442s
mutex(TSX)1.02248s
__transaction_atomic1.36938s1.78498s
mutex1.62795s1.6446s

サンプルが簡単なので atomic operation でいける問題なので、
atomic operation が最強なのは当然として、 pthread_mutex_t が
十分速いので、これで良い気がする

__transaction_atomic はなぜか遅い。 libitm のコードをざっと読んだ感じ、x86-64 だと RTM を使わない気がする。が、少しいじって無理矢理使わせてみても速度が変わらない…