Results 1 to 25 of 118

Thread: Lets put your CPU into REAL test! Intel Linpack 64bit

Threaded View

  1. #1
    Xtreme Enthusiast
    Join Date
    Mar 2007
    Posts
    557

    Lets put your CPU into REAL test! Intel Linpack 64bit

    Seeing how the importance of proper stability testing is slowly getting more evident among XS members , i want to invite everyone to put their Intel CPUs, primarily new Core2, into really stressing stability test. Introducing the Intel Linpack benchmark, the most stressing and demanding benchmark/stability test ever!

    The primary goal of this benchmark is to measure Gigaflops rating of (Intel) CPU(s). Cluster Linpack version can be used to measure performance of computational clusters, and even huge Super-Computers.
    The software solves mathematical problem - arbitrary large set of linear equations, and displays the rate of solving, measured in Gigaflops.

    The software can be downloaded from Intel:
    http://www.intel.com/cd/software/pro...eng/363184.htm

    Here is the instruction on how to properly use Linpack for stability testing:
    Open the file lininput_xeon(32,64) pertaining to you OS arch., 32 bit or 64 bit. Determine the maximum problem size your memory can hold. The rule is simple : take the whole amount of memory you see in your OS, subtract 500MB for the OS needs (may need more for memory-hungry Vista), the rest can be assigned to Linpack job. In any case, do not let the test run from disk swap! The amount of memory Linpack uses is equal 8x (Problem size)^2. So, for the problem size 10000 the amount of memory would be 800MB. For 4GB memory (needs 64bit OS to see), 3.5GB can be used for Linpack test, this amounts to sqrt(3 500 000 000/8) ~ 21000 problem size.

    Set 1 for #number of tests field
    Set only the maximum problem size in the # problem sizes field
    Set the same number in the next field #leading dimensions
    Set 100-200 for # times to run a test
    (It may take several hours for the benchmark to complete. Set less for quick test, set 1 for only one pass)
    Leave the last #alignment value as is.

    The example file for 8GB RAM under Win X64 (Linux x64 actually, but the file is the same) will look like this:

    Sample Intel(R) LINPACK data file (lininput_xeon64)
    Intel(R) LINPACK data
    1 # number of tests
    30000 # problem sizes
    30000 # leading dimensions
    200 #times to run a test
    4 # alignment values (in KBytes)

    For 4GB, substitute 30000 with 21000.
    For 2GB, *--------------------------* 13700.
    For 1GB, *--------------------------* 7000.

    The problems size for the test may be set arbitrary small, however bigger problem size will produce higher benchmark result. Small problem size can be used to test CPU, or large problem size can be used to test both CPU ( more extensively) and all available memory.

    To run the test, run runme_xeon(32,64).bat. The best way is to run it from Far manager (google Far manager and download it, its free) or similar program.
    The results will be in file with the name lin_xeon(32,64).txt. The progress can be conveniently monitored in another Far instance with F3 viewer.

    Here is the example part of the output file for problem size 31500:

    CPU frequency: 3.744 GHz
    Number of CPUs: 4
    Number of threads: 4
    Parameters are set to:

    Number of tests : 1
    Number of equations to solve (problem size) : 31500
    Leading dimension of array : 31500
    Number of trials to run : 100
    Data alignment value (in Kbytes) : 4

    Maximum memory requested that can be used = 7938634096, at the size = 31500
    ============= Timing linear equation system solver =================

    Size LDA Align. Time(s) GFlops Residual Residual(norm)
    Error: info returned = 1
    31500 31500 4 446.411 46.6817 1.098303e-09 3.939015e-02
    Error: info returned = 1
    31500 31500 4 445.847 46.7407 1.098303e-09 3.939015e-02
    Error: info returned = 1
    ***************************************
    31500 31500 4 445.789 46.7468 1.098303e-09 3.939015e-02
    Error: info returned = 1
    31500 31500 4 445.792 46.7466 1.098303e-09 3.939015e-02
    Error: info returned = 1
    31500 31500 4 445.908 46.7343 1.098303e-09 3.939015e-02

    Performance Summary (GFlops)

    Size LDA Align. Average Maximal
    31500 31500 4 46.7362 46.7495

    End of tests
    Wed Jan 30 10:39:30 NOVT 2008
    The program incorrectly determine my Q6600's speed, which is 3.328GHz (8x416). This does not affect the results in any way.

    For each tests ran, there will be a string with 7 fields, like this
    31500 31500 4 445.908 46.7343 1.098303e-09 3.939015e-02
    Never mind the Error: info returned = 1 string, this is not actually an error and harmless. The returned value may differ from 1.

    The most interesting fields for us are: the fifth value, which is Gigaflops rating obtained in this run, and the seventh, which is Residual (norm) value. The last is most important part. It should be small, on the order of 10-02 (0.01),
    and should not change from run to run with the same problems size. Any abnormal value here indicates
    Linpack fails the test, though it will continue to work. This is very sensitive test, actually.

    The 32bit version produces good load and is also good for error catching, but to really stress Core2 CPU, 64bit version should be used. It has 40-50% higher rate of solving (gives higher gigaflops rating), produces much much higher temps (considerably higher than TAT, and much higher than Prime) and is exceptionally good for error catching, both for CPU and memory errors.
    Last edited by Cronos; 02-02-2008 at 04:47 PM.

Bookmarks

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •