I have benchmarked two PC's and see a much better CPU results but worse Memory-Read performance. I would not expect that based on technical specs. So I tried other benchmark-tools to get a confirmation. Crystalmark for example gives better results on memory and cpu and confirm the technical specs. Who has experience with the credibility of PT? Has anyone compared PT to other benchmark-tools?
Announcement
Collapse
No announcement yet.
PT RAM memory test compared to other benchmarks
Collapse
X
-
There are many way to implement any particular test.
For example, for reading RAM the following things might impact the result.
If memory is accessed only on 4 byte boundaries or at a random byte offset.
If memory is accessed in a linear fashion or in steps or at random addresses.
Which CPU instructions are used to read the data. e.g. a 8bit, 32bit or 64bit read.
The size of the L2 and L3 RAM cache
If multiple threads are accessing the RAM at the same time or if the test is single threaded.
How much data is read by the test and if it exceeds the cache size
If anything is done with the data after it is read in the CPU. Is processed in anyway or just thrown away.
If the RAM is ECC & registered or not
The selection of a particular set of test parameters doesn't make the test invalid. Just different. In fact in some cases it might highlight areas that are weak on particular systems.
It is also for this reason that we provide the advanced memory test in PerformanceTest. The advanced memory test allows you to control many of these parameters and create a custom test.
------
David
-
This memory test suite contains a number of tests that exercise the memory sub-system of the computer (RAM). All tests use a combination of 32-bit and 64-bit data when reading or writing from or to RAM.
Memory - Allocate small block
This test measures the time taken to allocate & free small zeroed memory blocks (around 100KB block size)
Memory - Cached
This test measures the time taken to read a small block of memory. The block is small enough to be held entirely in cache (if one is present)
Memory - UnCached
This test measures the time taken to read a large block of memory. The block is too large to be held in cache.
Memory - Write
This test measures the time taken to write information into memory.
Memory – Large RAM
This test measures the ability to allocate very large amounts of RAM and the time taken to read this RAM. The test is designed to measure the ability of the system to support applications that use very large amounts of RAM.
In the advanced test there are three main options.
Memory Speed Per Access Step Size
The first test type, ‘Memory Speed Per Access Step Size’ accesses a large block, of memory in various sized steps. First, it runs through the block of memory sequentially, accessing every value. Next it runs through the same block again, except this time it accesses every second value. On this occasion, it runs through the block twice in order to access the same amount of data as the initial step. Next it runs through the same block again, except this time it accesses every fourth value and so makes four passes. And so on, until a certain maximum step size is reached.
The size of the block of memory used for this test is one quarter the amount of system RAM. The size of the steps vary from 1 (continuous sequential access), to one quarter the size of the block of memory ( i.e. one sixteenth of the system RAM ).
Memory Speed Per Block Size
When a computer program wants to use a section of memory to store data, it makes a request to Windows for the amount of memory it requires. Windows allocates the memory to the program ( unless system resources are very low ) and returns to the requesting program the address of the first memory slot in the allocated block. It is possible that some programs may request very large amounts of memory. The ‘Memory Speed Per Block Size’ test like the ‘Memory Speed Per Access Step Size’ test, is composed of many steps. During each step of the test, PerformanceTest requests a block of memory and runs through the block measuring the average access time. However on each subsequent step the size of the requested memory is increased, until finally a block close to the size of the system RAM is requested. In this way it is possible to observe the different access speeds for the different sizes of blocks.
Typically it is possible to see very fast memory access for blocks which are small enough to fit entirely into the L2 RAM cache, and slower access times for larger blocks accessed from main RAM. In the case where system resources are low, swapping to the disk may even be required for very large blocks.
Access data type
One byte is the smallest amount possible, which can be read from or written to memory. As the test runs through each block, the user can also select whether we access the memory one byte at a time, two bytes at a time, or four bytes at a time.
Name, Bytes, Bits
Byte, 1, 8
Word, 2, 16
Double Word (Dword), 4, 32
Quad Word (Qword), 8, 64
As to your question about what to test using the advanced test, this is really up to you. You can come up with your own senerios and test them on various different machines. The graphs are especially interesting as you should see a big step down in speed once the accesses start to come from main ram and not cache.
------
David
Comment
Comment