AMD64 X2 2.4 GHz Benchmark Results

Brian Gladman brg at gladman.plus.com
Mon Mar 19 18:23:00 CET 2007


I have been running gmpbench on an 2.4 GHz AMD64 X2 machine with the 
following summary results:

Running benchmarks
  Category base
    Program multiply
    GMPbench.base.multiply result: 47916
    Program divide
    GMPbench.base.divide result: 18006
  GMPbench.base result: 29373
    Program rsa
  GMPbench.app result: 2386.3
GMPbench result: 8372

The striking feature here is that the divide results are poor and I am 
wondering why this is.

    Program divide
      divide 8192 32
      GMPbench.base.divide.8192,32 result: 356495
      divide 8192 64
      GMPbench.base.divide.8192,64 result: 336958
      divide 8192 128
      GMPbench.base.divide.8192,128 result: 170276
      divide 8192 4096
      GMPbench.base.divide.8192,4096 result: 88660
      divide 8192 8064
      GMPbench.base.divide.8192,8064 result: 953276
      divide 131072 8192
      GMPbench.base.divide.131072,8192 result: 2170
      divide 131072 65536
      GMPbench.base.divide.131072,65536 result: 1202
      divide 8388608 4194304
      GMPbench.base.divide.8388608,4194304 result: 2.45
    GMPbench.base.divide result: 18006

Given these results for divide, is it likely that the limits for switching 
algorithms is wrong?

Or do I need to do more work on assembler code in support of divide 
operations?

Any observations would be appreciated.

   Brian Gladman



More information about the gmp-discuss mailing list