gcc -DATHLON -Wall -O2 -ffast-math -march=i686 -fomit-frame-pointer -fno-exceptions memxferjj.cc -o memxferjj for m in $(seq 0 12); do nice -n -20 ./memxferjj -s 32M 20 $m ; done model name : AMD Athlon(tm) processor stepping : 4 cpu MHz : 1333.386 SDRAM 133/CL2 avg: 33554432 [ 0]"memcpy" 239.713 MB/s avg: 33554432 [ 1]"char *" 176.069 MB/s avg: 33554432 [ 2]"short *" 214.254 MB/s avg: 33554432 [ 3]"int *" 239.610 MB/s avg: 33554432 [ 4]"long *" 239.835 MB/s avg: 33554432 [ 5]"long * (4x unrolled)" 239.666 MB/s avg: 33554432 [ 6]"int64 *" 254.864 MB/s avg: 33554432 [ 7]"double *" 334.384 MB/s avg: 33554432 [ 8]"double * (4x unrolled)" 362.776 MB/s avg: 33554432 [ 9]"streaming K7" 974.647 MB/s avg: 33554432 [10]"streaming K7 prefetch" 984.555 MB/s avg: 33554432 [11]"streaming K7 clear" 985.756 MB/s avg: 33554432 [12]"long * clear" 388.676 MB/s DDRAM 133/CL2.5 avg: 33554432 [ 0]"memcpy" 394.326 MB/s avg: 33554432 [ 1]"char *" 196.880 MB/s avg: 33554432 [ 2]"short *" 231.656 MB/s avg: 33554432 [ 3]"int *" 396.811 MB/s avg: 33554432 [ 4]"long *" 383.451 MB/s avg: 33554432 [ 5]"long * (4x unrolled)" 387.403 MB/s avg: 33554432 [ 6]"int64 *" 397.224 MB/s avg: 33554432 [ 7]"double *" 492.482 MB/s avg: 33554432 [ 8]"double * (4x unrolled)" 493.086 MB/s avg: 33554432 [ 9]"streaming K7" 1197.376 MB/s avg: 33554432 [10]"streaming K7 prefetch" 1311.854 MB/s avg: 33554432 [11]"streaming K7 clear" 1720.754 MB/s avg: 33554432 [12]"long * clear" 443.767 MB/s DDRAM 133/CL2 avg: 33554432 [ 0]"memcpy" 390.321 MB/s avg: 33554432 [ 1]"char *" 202.961 MB/s avg: 33554432 [ 2]"short *" 237.776 MB/s avg: 33554432 [ 3]"int *" 415.335 MB/s avg: 33554432 [ 4]"long *" 395.199 MB/s avg: 33554432 [ 5]"long * (4x unrolled)" 376.493 MB/s avg: 33554432 [ 6]"int64 *" 401.166 MB/s avg: 33554432 [ 7]"double *" 493.614 MB/s avg: 33554432 [ 8]"double * (4x unrolled)" 495.363 MB/s avg: 33554432 [ 9]"streaming K7" 1196.949 MB/s avg: 33554432 [10]"streaming K7 prefetch" 1310.222 MB/s avg: 33554432 [11]"streaming K7 clear" 1728.562 MB/s avg: 33554432 [12]"long * clear" 443.443 MB/s model name : AMD Athlon(tm) XP 1800+ Mem: 512MB (DDR AFAIK) for m in $(seq 0 12); do \ $ nice -n -20 ./memxferjj -s 32M 20 $m ; done avg: 33554432 [ 0]"memcpy" 419.101 MB/s avg: 33554432 [ 1]"char *" 294.010 MB/s avg: 33554432 [ 2]"short *" 344.678 MB/s avg: 33554432 [ 3]"int *" 403.678 MB/s avg: 33554432 [ 4]"long *" 407.297 MB/s avg: 33554432 [ 5]"long * (4x unrolled)" 422.731 MB/s avg: 33554432 [ 6]"int64 *" 437.196 MB/s avg: 33554432 [ 7]"double *" 441.144 MB/s avg: 33554432 [ 8]"double * (4x unrolled)" 430.482 MB/s avg: 33554432 [ 9]"streaming K7" 1431.437 MB/s avg: 33554432 [10]"streaming K7 prefetch" 1628.706 MB/s avg: 33554432 [11]"streaming K7 clear" 1974.852 MB/s avg: 33554432 [12]"long * clear" 559.082 MB/s