Page clear/copy benchmark program.
buffer size: 1 Mb
Each test tried 64 times, max and min CPU cycles per page are reported.
Please disregard max values. They are due to system interference only.
clear_page() tests:
               normal_clear_page - took  6649 max, 5774 min cycles per page
               normal_clear_page - took  9427 max, 5781 min cycles per page
             repstosl_clear_page - took  9305 max, 5680 min cycles per page
                 movq_clear_page - took  6167 max, 5576 min cycles per page
               movntq_clear_page - took  5456 max, 2354 min cycles per page

copy_page() tests:
                normal_copy_page - took  9955 max, 8948 min cycles per page
                normal_copy_page - took 16931 max, 8940 min cycles per page
              repmovsl_copy_page - took 10883 max, 8941 min cycles per page
                  movq_copy_page - took 10253 max, 8956 min cycles per page
                movqpf_copy_page - took 11269 max, 8585 min cycles per page
               movqpf1_copy_page - took 17728 max, 8646 min cycles per page
               movqpf2_copy_page - took 10680 max, 8754 min cycles per page
               movqpf3_copy_page - took 10211 max, 8770 min cycles per page
                movntq_copy_page - took  5224 max, 4373 min cycles per page
               movntq1_copy_page - took  5937 max, 4414 min cycles per page
              movntq11_copy_page - took  4790 max, 4427 min cycles per page
              movntq12_copy_page - took  5024 max, 4399 min cycles per page
               movntq2_copy_page - took  5221 max, 4386 min cycles per page
               movntq3_copy_page - took  5308 max, 4402 min cycles per page
               movntq4_copy_page - took  4998 max, 4480 min cycles per page

copy_page() tests (reversed walk order):
                normal_copy_page - took 10299 max, 8770 min cycles per page
                normal_copy_page - took  9902 max, 8775 min cycles per page
              repmovsl_copy_page - took  9953 max, 8766 min cycles per page
                  movq_copy_page - took 10030 max, 8882 min cycles per page
                movqpf_copy_page - took 19362 max, 8724 min cycles per page
               movqpf1_copy_page - took 10288 max, 8856 min cycles per page
               movqpf2_copy_page - took  9788 max, 8769 min cycles per page
               movqpf3_copy_page - took 10271 max, 8846 min cycles per page
                movntq_copy_page - took  4728 max, 4282 min cycles per page
               movntq1_copy_page - took  4928 max, 4307 min cycles per page
              movntq11_copy_page - took  5081 max, 4298 min cycles per page
              movntq12_copy_page - took  9409 max, 4378 min cycles per page
               movntq2_copy_page - took  5089 max, 4392 min cycles per page
               movntq3_copy_page - took  6002 max, 4358 min cycles per page
               movntq4_copy_page - took  4998 max, 4454 min cycles per page
Done.

# cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 12
model name      : AMD Athlon(tm) 64 Processor 2800+
stepping        : 0
cpu MHz         : 1800.827
cache size      : 512 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 pni syscall nx mmxext lm 3dnowext 3dnow
bogomips        : 3530.75
