Postmark is a benchmark designed to simulate the behavior of mail servers. Postmark consists of three phases. In the first phase a pool of files are created. In the next phase four types of transactions are executed: files are created, deleted, read, and appended to. In the last phase, all files in the pool are deleted.
Installation
The PostMark can be run with phoronix-test-suite. Refer to this blog on how to install phoronix-test-suite.
The first run
When you have first run of PostMark, it will have the additional dependent packages installed automatically.
These are the default configuration options for when running the Phoronix Test Suite in a batch mode (i.e. running phoronix-test-suite batch-benchmark universe). Running in a batch mode is designed to be as autonomous as possible, except forwhere you'd like any end-user interaction. Save test results when in batch mode (Y/n): y Open the web browser automatically when in batch mode (y/N): n Auto upload the results to OpenBenchmarking.org (Y/n): n Prompt for test identifier (Y/n): n Prompt for test description (Y/n): n Prompt for saved results file-name (Y/n): n Run all test options (Y/n): n Batch settings saved.
After setting up batch mode, you can run the test as below.
MOTHERBOARD: Supermicro X12DDW-A6 v1.01 BIOS Version: 1.5 Chipset: Intel Device 0998 Network: 2 x Mellanox MT27800 + 4 x Intel I350 + 2 x Mellanox MT2892
MEMORY: 8 x 64 GB DDR4-2933MT/s Samsung M393A8G40BB4-CWE
DISK: 4 x 1600GB Micron_7450_MTFDKCC1T6TFS + 6 x 1920GB Micron_5400_MTFD File-System: xfs Mount Options: attr2 inode64 logbsize=32k logbufs=8 noquota relatime rw seclabel Disk Scheduler: NONE Disk Details: Block Size: 4096
OPERATING SYSTEM: CentOS Linux 7 Kernel: 5.7.12-1.el7.elrepo.x86_64 (x86_64) Compiler: GCC 4.8.5 20150623 Security: SELinux + itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Enhanced IBRS IBPB: conditional RSB filling + srbds: Not affected + tsx_async_abort: Not affected
PostMark 1.51: pts/postmark-1.1.2 Test 1 of 1 Estimated Trial Run Count: 3 Estimated Time To Completion: 3 Minutes [01:15 UTC] Started Run 1 @ 01:13:06 Started Run 2 @ 01:14:02 Started Run 3 @ 01:14:58
Disk Transaction Performance: 4901 4807 4901
Average: 4870 TPS Deviation: 1.11%
Compare multiple runs
In the case you need to tweak some settings and run it again, and you want to compare the results for multipe runs. You can use the phoronix-test-suite merge-results command.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[root@vm1 phoronix-test-suite]# ls -ltr test-results/ total 0 drwxr-xr-x. 5 root root 88 Nov 14 01:15 2023-11-14-0113 drwxr-xr-x. 5 root root 88 Nov 14 01:25 2023-11-14-0122