Announcement

Collapse
No announcement yet.

Threaded Memory Test

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

  • David (PassMark)
    replied
    Yes, it isn't unusual to have a situation where 1 CPU core can't max out the bandwidth of the memory module.
    So to measure the full bandwidth available multiple thread / cores are needed.

    Leave a comment:


  • ntsarb
    replied
    Originally posted by Dhanush View Post
    I wonder what is the significance of this test. How it adds a value as a benchmarking test?
    In various types of multi-threaded applications, e.g. CPU-based rendering, database server, etc, you'll be interested in how the system behaves/performs. It can make a huge difference, as I just found out, when I upgraded from a 2x16GB to a 4x32GB configuration (all other system parts the same): while the performance difference for all other RAM-related tests is in the range of 8%, the multi-threaded performance shows as much as 2x increase in read speed with the new DIMMs.

    Leave a comment:


  • Dhanush
    replied
    I wonder what is the significance of this test. How it adds a value as a benchmarking test?

    Leave a comment:


  • David (PassMark)
    replied
    Threads are allocated across all cores in all CPUs in all sockets (by default).
    NUMA isn't used at the moment. So you can't isolate a socket.

    Have a look at the Advanced memory test however as that does have NUMA support.

    Leave a comment:


  • bleroux
    replied
    Tim,

    Thank you for the explanation. As a follow-up question what is the behavior on a multi socket machine and how is this taken into account? Are the threads allocated across both sockets or only the first socket? Is there a means to test the memory performance on each socket independently? If so how is this performed?

    Leave a comment:


  • Tim (PassMark)
    replied
    Multiple test threads are launched, the number of threads is equal to the value in the Edit / Preferences window and should match the number of CPU cores available. There is a maximum of 64 threads.

    Each thread allocates a memory buffer and waits for all the threads to be created before starting. The size of the memory buffer is 256MB *in total* across all the threads. So the size per thread is 256MB / Number_of_threads.

    Once the threads have been allocated then the benchmark test starts, which is nearly identical to the "Read cached" test (measures the time taken to read a small block of memory) so it is measuring the total read speed when accessing the memory with concurrent threads.

    Leave a comment:


  • bleroux
    started a topic Threaded Memory Test

    Threaded Memory Test

    Hello,

    I am trying to understand the Theaded Memory test and what is actually being preformed in this test. I understand that a number of threads are being created and that they each allocate 256MB/# of treads of memory, but what do each of the treads actually test? Is it read bandwidth / write bandwidth? Is the reported number the total bandwidth adding all threads together or the bandwidth of each divided by the number of threads?

    Thank you,
    Brent
Working...
X