Created
February 7, 2019 14:16
-
-
Save kakoni/8e24cd7eceb6b93ce3b83d594f1a13b1 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### ex61-nvme, ubuntu 18.04 minimal, no raid. apt-get update, apt-get install postgresql | |
/usr/lib/postgresql/10/bin/pg_test_fsync | |
5 seconds per test | |
O_DIRECT supported on this platform for open_datasync and open_sync. | |
Compare file sync methods using one 8kB write: | |
(in wal_sync_method preference order, except fdatasync is Linux's default) | |
open_datasync 974.559 ops/sec 1026 usecs/op | |
fdatasync 957.327 ops/sec 1045 usecs/op | |
fsync 366.054 ops/sec 2732 usecs/op | |
fsync_writethrough n/a | |
open_sync 396.387 ops/sec 2523 usecs/op | |
Compare file sync methods using two 8kB writes: | |
(in wal_sync_method preference order, except fdatasync is Linux's default) | |
open_datasync 479.559 ops/sec 2085 usecs/op | |
fdatasync 821.378 ops/sec 1217 usecs/op | |
fsync 335.078 ops/sec 2984 usecs/op | |
fsync_writethrough n/a | |
open_sync 186.964 ops/sec 5349 usecs/op | |
Compare open_sync with different write sizes: | |
(This is designed to compare the cost of writing 16kB in different write | |
open_sync sizes.) | |
1 * 16kB open_sync write 355.013 ops/sec 2817 usecs/op | |
2 * 8kB open_sync writes 197.986 ops/sec 5051 usecs/op | |
4 * 4kB open_sync writes 108.016 ops/sec 9258 usecs/op | |
8 * 2kB open_sync writes 47.818 ops/sec 20913 usecs/op | |
16 * 1kB open_sync writes 23.681 ops/sec 42227 usecs/op | |
Test if fsync on non-write file descriptor is honored: | |
(If the times are similar, fsync() can sync data written on a different | |
descriptor.) | |
write, fsync, close 406.618 ops/sec 2459 usecs/op | |
write, close, fsync 418.951 ops/sec 2387 usecs/op | |
Non-sync'ed 8kB writes: | |
write 523028.582 ops/sec 2 usecs/op | |
### cx11 similar setup | |
/usr/lib/postgresql/10/bin/pg_test_fsync | |
5 seconds per test | |
O_DIRECT supported on this platform for open_datasync and open_sync. | |
Compare file sync methods using one 8kB write: | |
(in wal_sync_method preference order, except fdatasync is Linux's default) | |
open_datasync 2862.679 ops/sec 349 usecs/op | |
fdatasync 2992.365 ops/sec 334 usecs/op | |
fsync 2556.479 ops/sec 391 usecs/op | |
fsync_writethrough n/a | |
open_sync 2614.522 ops/sec 382 usecs/op | |
Compare file sync methods using two 8kB writes: | |
(in wal_sync_method preference order, except fdatasync is Linux's default) | |
open_datasync 1533.507 ops/sec 652 usecs/op | |
fdatasync 2721.964 ops/sec 367 usecs/op | |
fsync 2120.455 ops/sec 472 usecs/op | |
fsync_writethrough n/a | |
open_sync 1373.114 ops/sec 728 usecs/op | |
Compare open_sync with different write sizes: | |
(This is designed to compare the cost of writing 16kB in different write | |
open_sync sizes.) | |
1 * 16kB open_sync write 2276.117 ops/sec 439 usecs/op | |
2 * 8kB open_sync writes 1436.539 ops/sec 696 usecs/op | |
4 * 4kB open_sync writes 710.259 ops/sec 1408 usecs/op | |
8 * 2kB open_sync writes 368.992 ops/sec 2710 usecs/op | |
16 * 1kB open_sync writes 182.178 ops/sec 5489 usecs/op | |
Test if fsync on non-write file descriptor is honored: | |
(If the times are similar, fsync() can sync data written on a different | |
descriptor.) | |
write, fsync, close 2599.101 ops/sec 385 usecs/op | |
write, close, fsync 2670.547 ops/sec 374 usecs/op | |
Non-sync'ed 8kB writes: | |
write 331707.474 ops/sec 3 usecs/op |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment