AmorphousMemoryMark measures memory read/write performance in GB/s.
- Sequential 128 KiB block read/write tests with Threads=1, 2, 4, 8, 16, 32, or 64
- Random sequence 4 KiB block read/write tests with Threads=1, 2, 4, 8, 16, 32, or 64
- Sequential 1 MiB block read/write tests
- Random sequence 4 KiB block read/write tests
- Read/write GB/s scores
- Test data: random or zero. This only applies to the read measurement. The write measurement always uses zeros.
- Test size: 128 MiB, 256 MiB, 512 MiB, 1 GiB, 2 GiB, 4 GiB, 8 GiB, 16 GiB, 32 GiB, or 64 GiB
- Test interval: 0 seconds, ..., 10 seconds
- Click the "All" button.
- When the test is finished, press command - S to save a screenshot of the AmorphousMemoryMark window.
- Write an Amazon review of your memory module, and attach the screenshot if you like.
- memmove()/bzero(): Executes the macOS provided memmove() function which reads from memory and write to memory for the read measurement, and the macOS provided bzero() function which writes zeros to memory for the write measurement. Both functions are optimized for each CPU architecture.
- Rep movsb/stosb: Executes the "rep movsb" instruction which repeats a read-from-memory-write-to-memory operation, and the "rep stosb" instruction which repeats a write-to-memory operation. Both instructions are optimized on some CPU architectures with the Enhanced REP MOVSB and STOSB (ERMS) feature.
- Temporal load/store: Executes the temporal load instruction which reads from memory through the memory cache, and the temporal store instruction which writes to memory through the memory cache.
- Non-temporal load/store: Executes the non-temporal load instruction which reads from memory without going through the memory cache, and the non-temporal store instruction which writes to memory without going through the memory cache.