cvs commit: src/test/cpuperf Makefile cpu_add.S cpu_call.S cpu_cmpadd.S cpu_cmpexg.S cpu_lcmpexg.S cputest.c src/test/sysperf blib.c blib.h

Jeroen Ruigrok/asmodai asmodai at wxs.nl
Tue Feb 10 06:44:11 PST 2004


-On [20040209 19:22], Matthew Dillon (dillon at xxxxxxxxxxxxxxxxxxxxxxx) wrote:
>  Log:
>  Add some basic in-pipeline instruction timing tests.  Instruction timings
>  depend on many things, especially the pipeline, memory queues, and register
>  and memory ordering.  Timings are not absolute and should be used for
>  reference only.

Some data for you:

DragonFly saturnine.emea.epson.net 1.0-CURRENT DragonFly 1.0-CURRENT #2:
Fri Jan 16

CPU: Intel(R) Pentium(R) 4 CPU 1.60GHz (1594.81-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0xf12  Stepping = 2
  Features=0x3febfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM>

I find the negative values funny, is this expected?

CPUTEST 3 x addl $1,%eax in pipeline
instruction overhead:-0.067s 568590336 loops = -0.117nS/loop
CPUTEST call nop in pipeline
instruction overhead:-0.078s 145227776 loops = -0.537nS/loop
CPUTEST cmp/jz/add (compare fails) in pipeline
instruction overhead: 2.902s 142082048 loops = 20.422nS/loop
CPUTEST non-locked cmpxchgl (successful exchange) in pipeline
instruction overhead: 0.787s 127664128 loops =  6.162nS/loop
CPUTEST 3 x addl $1,%eax in pipeline
instruction overhead: 3.591s 46661632 loops = 76.954nS/loop
CPUTEST bus-locked cmpxchgl (successful exchange) in pipeline
instruction overhead: 3.069s 43253760 loops = 70.956nS/loop

CPUTEST 3 x addl $1,%eax in pipeline
instruction overhead:-0.274s 564133888 loops = -0.486nS/loop
CPUTEST call nop in pipeline
instruction overhead:-0.268s 146014208 loops = -1.833nS/loop
CPUTEST cmp/jz/add (compare fails) in pipeline
instruction overhead: 2.868s 140247040 loops = 20.451nS/loop
CPUTEST non-locked cmpxchgl (successful exchange) in pipeline
instruction overhead: 0.799s 127926272 loops =  6.244nS/loop
CPUTEST 3 x addl $1,%eax in pipeline
instruction overhead: 3.615s 46923776 loops = 77.043nS/loop
CPUTEST bus-locked cmpxchgl (successful exchange) in pipeline
instruction overhead: 3.007s 42467328 loops = 70.800nS/loop

CPUTEST 3 x addl $1,%eax in pipeline
instruction overhead: 0.223s 561250304 loops =  0.398nS/loop
CPUTEST call nop in pipeline
instruction overhead: 0.203s 145489920 loops =  1.398nS/loop
CPUTEST cmp/jz/add (compare fails) in pipeline
instruction overhead: 2.375s 113770496 loops = 20.877nS/loop
CPUTEST non-locked cmpxchgl (successful exchange) in pipeline
instruction overhead: 1.180s 124256256 loops =  9.494nS/loop
CPUTEST 3 x addl $1,%eax in pipeline
instruction overhead: 3.281s 41418752 loops = 79.227nS/loop
CPUTEST bus-locked cmpxchgl (successful exchange) in pipeline
instruction overhead: 3.077s 42729472 loops = 72.007nS/loop



-- 
Jeroen Ruigrok van der Werven <asmodai(at)wxs.nl> / asmodai / kita no mono
PGP fingerprint: 2D92 980E 45FE 2C28 9DB7  9D88 97E6 839B 2EAC 625B
http://www.tendra.org/   | http://diary.in-nomine.org/
Practice yourself what you preach...





More information about the Commits mailing list