A: Yes. Here: https://apps.apple.com/app/amorphousdis ... 1168254295
Q: Why is the app icon so ugly?
A: I wish I could draw, paint, design app icons, and more. I will replace it with something nicer at some point. i.e. hire an icon designer.
Q: Are the test results compatible with CrystalDiskMark 5?
A: Not exactly. CDM5 (CrystalDiskMark 5) uses Microsoft DiskSpd test engine. It has its own way of measuring the read/write performance with options that CDM5 specifies. ADM (AmorphousDiskMark) uses a different storage test engine I wrote. And it may give you slightly different test results. But it should give you similar results.
Q: Why there are four different tests?
A: Four different tests represent different storage usages.
• Seq QD: Reading/writing one big file sequentially from multiple apps.
• 4K QD: Reading/writing small files from multiple apps.
• Seq: Reading/writing one big file from one app.
• 4K: Reading/writing small files one at a time from one app.
Q: What are these four tests actually doing?
A: Here is the technical details.
• Seq QD: Reading/writing the specified size file sequentially with 128 KiB blocks from the specified number of threads (queue depth). It turned out that this test is actually essential to utilize the high speed (GB/s) NVMe SSD read/write performance.
• 4K QD: Reading/writing the specific size file at random sequence (access all blocks in random order) with 4 KiB blocks from the specified number of threads (queue depth).
• Seq: Reading/writing the specified size file sequentially with 1 MiB blocks from one thread.
• 4K: Reading/writing the specified size file at random sequence (access all blocks in random order) with 4 KiB blocks from one thread.
Q: Why is the queue depth is limited to up to 1,024?
A: macOS only allows up to 2,048 threads per process as of this writing. I could change the maximum queue depth to up to about 2,000 but 1,024 should be good enough for now.
Code: Select all
$ sysctl kern.num_taskthreads kern.num_taskthreads: 2048
A: Short answer: Q1T32 on CDM5 is equivalent to QD32 on ADM. Long answer: I was going to try to mimic as close as possible but I couldn't find a good way to queue multiple asynchronous read/write requests "without" using multiple threads. And it shouldn't really matter where the read/write requests are coming from. So, we should be good with QD32.
Q: CDM5 and ADM have different default test settings. Why?
A: CDM5 uses 5 runs with 1GiB file size, and shows the highest score. ADM uses 1 run with 500MiB file size. And ADM shows the median score when there were multiple runs. I chose the file size 500MiB because random read/write tests on a hard drive would take somewhat impractically long time (more than ten minutes) with 1GiB. So I decided to set it to 500MiB by default. Also I noticed that the random write score on SSD gets significantly higher on subsequent runs which are possibly benefiting from the erase cycle completed from the previous runs. So, I decided to use 1 run by default. You could always change the settings to 5 runs with 1GiB file size if you want the test settings to be identical to CDM5.
Q: The score result green bar is not a linear scale?
A: It uses a logarithmic scale. This doesn't necessarily make sense but ADM uses the same logarithmic scale as CDM in order to make the results images comparable.
Q: How about BlackMagic Disk Speed Test? https://itunes.apple.com/app/blackmagic ... d425264550
A: BlackMagic Disk Speed Test only runs sequential read/write tests. If you are only interested in the best case scenario (the maximum data transfer rate your storage device/controller/interface can achieve), there is nothing wrong with BlackMagic Disk Speed Test.
Q: How about AJA System Test Lite? https://itunes.apple.com/app/aja-system ... 1092006274
A: AJA System Test Lite also only runs sequential read/write tests. The sequential read/write scores are almost equivalent to the top speed of your car on a straight road. If that's all you are interested in, sequential read/write scores are fine. If you are also interested in the overall performance of your car such as acceleration, torque, cornering, breaking and so on, you might want to pay attention to random read/write scores as well.
Q: Why did you copycat the CrystalDiskMark GUI?
A: CrystalDiskMark is a de facto standard of storage performance measurement tool on Windows. Amazon reviews, tech article writers/editors, and even manufacturers use CDM to show the storage device performance characteristics in a single screenshot. I just wanted something similar for macOS so that I, or we all, can compare different storage devices regardless of the OS just by examining a single screenshot.