WarpBench
Parallel Linpack Benchmark

 

1.0 Introduction

WarpBench is a benchmark useful to evaulate the FPU performances based on the original Linpack test included in the NETLIB. it's available for Windows and Linux systems and it's able to detect the number of installed CPUs in order to enable the parallel code to evaluate the total computational power. If the CPU power management is enabled (e.g. AMD's Cool'n'Quiet), the software disables the CPU throttle avoiding wrong results due to the variable clock.

 

1.1 About the Linpack benchmark

The Linpack benchmark is a measure of a computer’s floating-point rate of execution. It is determined by running a computer program that solves a dense system of linear equations. Over the years the characteristics of the benchmark has changed a bit. In fact, there are three benchmarks included in the Linpack benchmark report. The computational power is expressed in Mflops/s that is a rate of execution, millions of floating point operations per second. Whenever this term is used it will refer to 64 bit floating point operations and the operations will be either addition or multiplication. Gflop/s refers to billions of floating point operations per second and Tflop/s refers to trillions of floating point operations per second.

 

2.0 Installation & usage

No installation required: just run the warpbench command in the command shell. WarpBench could be installed with VEGA ZZ as option and it can be executed selecting VEGA ZZ -> WarpProject -> WarpBench.

Warning:
If you are running the Linux version, it's possible that the file permissions aren't correctly set. To change them, type in the command prompt:

        chmod 755 warpbench

 

3.0 Benchmark results

This is the report generated by WarpBench Linpack benchmark:

WarpBench 1.0 - Parallel Linpack Benchmark
Copyright 2006-2012, Alessandro Pedretti
Unrolled single precision Win32 version
Performing the benchmark for 2 CPU(s) ...
Average values for one CPU:
norm resid      resid           machep         x[0]-1          x[n-1]-1
   1.9   4.52336171e-005  1.19209290e-007 -1.31130219e-005 -1.30534172e-00
Times are reported for matrices of order          100
1 pass times for array with leading dimension of  201
      dgefa      dgesl      total     Mflops       unit      ratio
    0.00068    0.00003    0.00071     972.52     0.0021     0.0126
Overhead for 1 matgen      0.00014 seconds
Matgen/dgefa passes used 1239 for 1 seconds
Times for array with leading dimension of 201
      dgefa      dgesl      total     Mflops       unit      ratio
    0.00067    0.00011    0.00077     888.80     0.0023     0.0138
    0.00067    0.00011    0.00078     882.40     0.0023     0.0139
    0.00067    0.00011    0.00078     880.13     0.0023     0.0139
    0.00068    0.00011    0.00078     876.85     0.0023     0.0140
    0.00072    0.00011    0.00082     834.61     0.0024     0.0147
Average                               872.56
Calculating matgen2 overhead
Overhead for 1 matgen      0.00014 seconds
Times for array with leading dimension of 200
      dgefa      dgesl      total     Mflops       unit      ratio
    0.00071    0.00011    0.00082     839.49     0.0024     0.0146
    0.00071    0.00011    0.00082     841.87     0.0024     0.0146
    0.00072    0.00011    0.00082     834.09     0.0024     0.0147
    0.00071    0.00011    0.00082     841.08     0.0024     0.0146
    0.00071    0.00011    0.00082     838.77     0.0024     0.0146
Average                               839.06
Total computational power 1678.12 Mflops

In the following table, are reported some benchmark results:

CPU Number Core x CPU OS Mflops/s
AMD Opteron 875 8 2 CentOS 4.3 64 bit 19254
AMD Phenom II X4 955 4 4 Windows 7 x64 4711
AMD Athlon MP 2200+ 2 1 Windows 2000 1678
AMD Athlon 64 3000+ 1 1 Windows XP 821
AMD Sempron 64 2800+ 1 1 Windows XP 840
Intel Pentium III 550 MHz 1 1 Windows 2000 133

The compiler performance may change the results in significant manner. Using a dual Athlon MP test PC with Windows 2000 as operating system and several C compiler, these results were found:

Compiler Company
Author
Free Version Build options Mflops/s
gcc
cygwin
RedHat Y 3.3.3 -O3 -march=pentium -malign-double -fomit-frame-pointer -ffast-math -funroll-loops -D WIN32 1678
gcc
mingw32
GNU Y 3.2.3 -O3 -march=pentium -malign-double -fomit-frame-pointer -ffast-math -funroll-loops 1678
gcc mingw32 GNU Y  3.4.5 -O3 -march=pentium -malign-double -fomit-frame-pointer -ffast-math -funroll-loops 1643
pgcc Portland Group N 6.0 -O3 -tp p5 -Munroll=c:5 -Mnoframe -Mlre -Mnozerotrip -D __TINYC__ 1632
bcc32 Borland N 5.6.4 -O2 -Hc -Vx -Ve -ff -X- -a8 -5 -b- -k- -vi -tWC -tWM 1464
lcc-win32 Jacob Navia Y 3.3 -O -D__TINYC__ 1024
tcc Fabrice Bellard Y 0.9.23 -lkernel32 455

 

4.0 History

  

5.0 Copyright and disclaimers

All trademarks and software directly or indirectly referred in this document, are copyrighted from legal owners. WarpBench is a freeware program and can be spread through Internet, BBS, CD-ROM and other electronic formats. The Authors of this program accept no responsibility for hardware/software damages resulting from the use of this package. No warranty is made about the software or its performance.

Use and copying of this software and the preparation of derivative works based on this software are permitted, so long as the following conditions are met:

   

WarpBench
is an enhanced version of the original Linpack benchmark
Copyright 2006-2012, Alessandro Pedretti & Giulio Vistoli
All rights reserved.

Alessandro Pedretti
Dipartimento di Scienze Farmaceutiche "Pietro Pratesi"
Università degli Studi di Milano
Via Mangiagalli, 25
I-20133 Milano - Italy
Tel. +39 02 503 19332
Fax. +39 02 503 19359
E-Mail: info@vegazz.net
WWW: http://www.vegazz.net