Announcement

Collapse
No announcement yet.

A couple of questions about BurnInTest

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • A couple of questions about BurnInTest

    Greetings.

    Is there any where I can find out more technical information about the processes for loading. (I'm not after too much detail, just enough for management types)

    What I mean is what is the process used by the tests?
    Is it random read/writes or sequential?

    Are there extra CPU overheads involed with running the program? (That is over and above the set CPU load)
    Last edited by StevenWhipp; Mar-09-2009, 02:31 PM.

  • #2
    Assuming you are referring to technical information about how BurnInTest V6.0 Pro loads the CPU's during the testing then:

    Loading all CPU's
    By default, BurnInTest starts a software test thread for every CPU, e.g. if you have 2 CPU packages, each with 4 cores, each with 2 Logicals (Hyperthreading), then 16 (2*4*2) CPU tests are started to ensure all CPU's (cores etc) are tested simultaneously.

    User selectable load
    The test load is determined by a user setting, Duty Cycle, which is a percentage from 1 to 100%. With the percentage being a rough estimate of CPU load (when running just the CPU test on a 'medium' spec'ed system).

    Different types of load
    To ensure various components within the CPU are loaded, many different types of CPU opcodes (operation types) are performed. The CPU test types are selectable by the user. The types of operation are listed in the help file (reproduced here):

    The CPU test exercises and verifies a wide range of CPU instructions, at user specified loads. The user selectable sub-categories of the CPU test are:
    • General purpose instructions (x86)
    • Floating Point Unit (FPU) instructions (x87)
    • CPU extension instructions (x86 extensions). The specific extension instructions may be selected: MMX, 3DNow!, SSE, SSE2, SSE3, SSE4.1, SSE4.2 and SSE4a.
    • Prime number test
    • Maximum heat test

    The numbers displayed in the test window for this test represent how many millions of CPU operations have been performed and verified. Each different math’s test is run for half a second. After all tests have been run the cycle count is incremented. The duty cycle and the CPU speed determine how many operations can be processed during the half second period. Note however that if only the Maximum heat test is selected, then the duty cycle is set to 100% and a single cycle is defined to be 1 trillion CPU operations.

    By default, a CPU test is run on each CPU core. The number of CPU tests running a particular sub-category is shown in the test window in the "Threads" column.

    The sub-categories of this test are described below.

    General purpose instructions
    This test exercises and verifies correct operation of CPU instructions from the following groups:
    • Integer mathematics (e.g. add, subtract, multiply and divide)
    • Data transfer instructions (e.g. pushing/popping data to/from the stack)
    • Bitwise logical instructions (e.g. bitwise and/or/xor)
    • Shift and rotate instructions (e.g. shift data left x number of bits)
    • Logical instructions (e.g. equals)
    • Control transfer instructions (e.g. jump on x greater than y)
    • String instructions (eg. copy a text string)

    Known and random data sets are used to exercise and verify correct operation. On 32-bit systems, 32-bit data sets are used. On 64-bit systems, 64-bit data sets are used. The random numbers are generated regularly to provide a larger data set, as well as ensure that the CPU caches overflow and that this mechanism is tested.

    Floating Point Unit (FPU) instructions
    This test exercises and verifies correct operation of CPU instructions from the following groups:
    • Floating Point math (e.g. add, subtract, multiply and divide)
    • Transcendental's (e.g. sin, cos)
    • Load constants (e.g. load Pi)

    Known and random data sets are used to exercise and verify correct operation. On 32-bit systems, 32-bit floating point data sets are used. On 64-bit systems, 64-bit floating point data sets are used. The random numbers are generated regularly to provide a larger data set, as well as ensure that the CPU caches overflow and that this mechanism is tested.

    Extension instructions (x86 extensions)
    This test exercises extensions to the x86 CPU instruction set for a variety of applications, such as multimedia.
    • 3DNow!: This test exercises and verifies correct operation of CPU 3DNow! instructions, including a sample of moving 3DNow! registers, adding, subtracting, and multiplying. Known and random data sets are used to exercise and verify correct operation. Data sets are pairs of 32-bit floats (eg. x,y), where x and y are 32-bit floats.
    • MMX: As above, but for MMX instructions. Instructions include moving MMX registers, adding, subtracting, and multiplying. Data set: 64-bit data sets are used.
    • SSE : As above, but for SSE instructions. Instructions include moving SSE registers, adding, subtracting, and multiplying. Data set: groups of 4 x 32-bit floats (e.g. a,b,c,d) where a,b,c and d are 32-bit floats.
    • SSE2: As for the SSE test, but for SSE2 instructions. Data set: pairs of 64-bit floats (e.g. x,y) where x,y are 64-bit floats.
    • SSE3: As for the SSE2 test, but for SSE3 instructions. Data set: pairs of 64-bit floats.
    • SSE4.1: As for the SSE3 test, but for SSE4.1. Instructions include a sample of moving registers and multiplication. Data set: pairs of 64-bit integers.
    • SSE4.2: As for the SSE4.1 test, but for SSE4.2 instructions. Instructions include CRC helper functions. Data set: pairs of 32-bit integers.
    • SSE4a: As for the SSE4.1 test, but for SSE4.a instructions. Instructions include data extraction functions. Data set: pairs of 64-bit unsigned integers.
    Notes:
    1. MMX stand for "Multimedia Extensions".
    2. SSE stand for "Streaming SIMD extensions".
    3. SIMD stands for "Single Instruction Multiple Data."
    4. Tests are only performed if the CPU supports that test. For example, SSE3 tests will only be performed if the CPU supports SSE3.
    5. Known and random data sets are used to exercise and verify correct operation
    6. The random test data is generated regularly to provide a larger data set, as well as ensure that the CPU caches overflow and that this mechanism is tested.

    Prime number
    This test exercises and verifies correct operation of CPU through the use of a prime number generation algorithm.

    Maximum heat
    Based on PassMark Software testing of a set of CPU algorithms for different systems, a test has been produced that aims to generate the highest CPU temperature possible by BurnInTest. This test is aimed at checking that the cooling system is capable of doing its job with the system CPU under extreme load, especially when the CPU has been overclocked.

    Notes:
    Some CPU operation tests are only supported in the 32-bit version of BurnInTest. These are: 3DNow!, MMX, Push/Pop stack operations, Transcendental's and Load constants.


    CPU overhead
    There is a tiny CPU overhead in running BurnInTest, such as recording and display results, but this is very very very small when compared to the number of CPU operations run by the CPU test.


    Regards,
    Ian (PassMark)

    Comment


    • #3
      Ian. That's fantastic, just the info I needed!

      Can you do the same thing for the Disk Drive and Network Card Loading?

      As an aside. My company is looking to purchase a suitable "load" software and so far yours stands out above all others.

      Comment


      • #4
        Loading all Disk's and Network
        By default, BurnInTest starts a software test thread for every disk volume, for every destination test address for the standard network test and for every test NIC with the advanced network test.

        User selectable load
        The test load for the disk and network tests is determined by a user setting, Duty Cycle, which is basically a percentage from 1 to 100% of the maximum load BurnInTest applies. The Advanced Network test provides greater load and load control (than the standard network test), with a target NIC load level being configurable (that is managed in a feedback loop).

        Different types of load
        The Disk test uses different test patterns, allows different test data block sizes and provides writing, reading and seeking type load.
        The Advanced Network test can be used with either half or full duplex data transfers.

        Test descriptions are available in the Users Guide:
        http://passmark.com/ftp/BIT_Users_Guide_Ed6_0.pdf

        Regards,
        Ian

        Comment


        • #5
          Ian, thanks very much for your help. I appreciate it!

          Comment

          Working...
          X