PagedLockedHostMemory追加テスト1
マルチポスト元→http://exth.net/~tgbt/wordpress/2010/05/19/3148/
そういえばHostAllocのみ(WriteCombinedなどの設定をしない)でのテストはやってなかった。
./ha 0 50000000 size = 50000000Byte(48828KByte, 47MByte), 12500000 elements device max=2, n=0 part1(simple) memcpy : 16029.792786 nsec, 5864.080794 MByte/sec all : 1158009.052277 nsec part2(indirect) memcpy : 16031.936646 nsec, 5863.296623 MByte/sec all : 78474.044800 nsec part3(indirect random) memcpy : 16034.784317 nsec, 5862.255341 MByte/sec all : 78482.151031 nsec ./ha_wk 0 50000000 size = 50000000Byte(48828KByte, 47MByte), 12500000 elements device max=2, n=0 part1(simple) memcpy+kernel : 58448.158264 nsec, 1608.262823 MByte/sec all : 1196021.080017 nsec part1(CPU) CPUkernel : 14250.993729 nsec memcpy+CPUkernel : 30297.216415 nsec, 3102.595259 MByte/sec all : 84782.838821 nsec part2(indirect) memcpy+kernel : 96689.697266 nsec, 972.182173 MByte/sec all : 160046.100616 nsec part2(CPU) CPUkernel : 20169.973373 nsec memcpy+CPUkernel : 36217.407227 nsec, 2595.437034 MByte/sec all : 98576.068878 nsec part3(indirect random) memcpy+kernel : 165139.709473 nsec, 569.215002 MByte/sec all : 227524.995804 nsec part3(CPU) CPUkernel : 153204.917908 nsec memcpy+CPUkernel : 169245.315552 nsec, 555.406805 MByte/sec all : 231613.159180 nsec
- 転送速度は十分に得られた
- CPUkernelの実行時間が短くなったりならなかったりのちょっと謎の挙動。なんだこれ?
プログラム内部で一発しか実行していないけど、何度か実験して同じような値が見える。うーん、HostAlloc周りも対象プログラムによって色々調整しないと行けないのか……これ、チューニング無理くせー。
次はオーバーラップの実験かな。