Athlon fast_copy_page revisited
A message that is not in the archive (sent off-list or not yet received): [email protected]
[This message has also been posted.]
On Wed, 30 May 2001 18:09:35 GMT, Jimmie Mayfield
<[email protected]> wrote:
<SNIP explanation>
Quoted 24 lines
Arjan's original code is at: http://www.fenrus.demon.nl/athlon.c
My modifications are at: http://sackheads.org/~mayfield/jrm_athlon.cExample test runs:
copy_page()testscopy_page function 'warm up run' took 21350 cycles per page copy_page function '2.4 non MMX' took 27706 cycles per page copy_page function '2.4 MMX fallback' took 28600 cycles per page copy_page function '2.4 MMX version' took 21370 cycles per page copy_page function 'faster_copy' took 13119 cycles per page copy_page function 'even_faster' took 14767 cycles per page copy_page function 'jrm_copy_page_8nop' took 12774 cycles per page
copy_pagefunction 'jrm_copy_page_10nop' took 12746 cycles per pagecopy_pagefunction 'jrm_copy_page_12nop' took 12740 cycles per page
copy_page()testscopy_page function 'warm up run' took 22499 cycles per page copy_page function '2.4 non MMX' took 27769 cycles per page copy_page function '2.4 MMX fallback' took 27696 cycles per page copy_page function '2.4 MMX version' took 22666 cycles per page copy_page function 'faster_copy' took 13058 cycles per page copy_page function 'even_faster' took 13169 cycles per page copy_page function 'jrm_copy_page_8nop' took 12691 cycles per page
Quoted 6 lines
copy_pagefunction 'jrm_copy_page_10nop' took 12750 cycles per pagecopy_pagefunction 'jrm_copy_page_12nop' took 14786 cycles per pageThe values obviously fluctuate depending on system activity but the jrm_* routines were faster in 13 out of 15 trials.
I have a Duron 800 socket A on an Epox 8KTA3.
Has anyone noticed fluctuations with these tests.. such as jrm_athlon1:
...copy_page function 'faster_copy' took 9869 cycles per pagecopy_page function 'even_faster' took 9822 cycles per page
...jrm_athlon2:
...copy_page function 'faster_copy' took 9939 cycles per pagecopy_page function 'even_faster' took 17728 cycles per page
...jrm_athlon3:
...copy_page function 'faster_copy' took 17711 cycles per pagecopy_page function 'even_faster' took 9843 cycles per page
...
I see these with gcc 2.95.4(Debian unstable) and a local build of gcc-3.0 from CVS last night.
Almost as though some stall and/or caching is corrupting the results.
Signature · 1 line
Gordon Sadler