There was a mistake in my query, so the macOS speedup column was wrong (was accidentally comparing Linux number with macOS master, sorry for the noise). I also forgot to mention that you don't actually get the speedup on PostgreSQL 17 on a Mac, because Peter only recently implemented the needed read-ahead support for macOS in master/18, but it doesn't get slower. Here's the corrected table:
| linux (xfs) | macos (apfs) branch | eic | avg | speedup | stdev | avg | speedup | stdev --------+-----+--------+---------+--------+--------+---------+-------- master | | 73.959 | 1.0 | 24.168 | 72.290 | 1.0 | 11.851 stream | 0 | 70.117 | 1.1 | 36.699 | 76.289 | 0.9 | 12.742 stream | 1 | 57.983 | 1.3 | 5.845 | 79.969 | 0.9 | 8.308 stream | 2 | 35.629 | 2.1 | 4.088 | 49.198 | 1.5 | 7.686 stream | 3 | 28.477 | 2.6 | 2.607 | 37.540 | 1.9 | 5.272 stream | 4 | 26.493 | 2.8 | 3.691 | 33.014 | 2.2 | 4.444 stream | 5 | 23.711 | 3.1 | 2.435 | 32.622 | 2.2 | 2.270 stream | 6 | 22.885 | 3.2 | 1.908 | 31.254 | 2.3 | 4.170 stream | 7 | 21.910 | 3.4 | 2.153 | 33.669 | 2.1 | 4.616 stream | 8 | 20.741 | 3.6 | 1.594 | 34.182 | 2.1 | 3.819 stream | 9 | 22.471 | 3.3 | 3.094 | 30.690 | 2.4 | 2.677 stream | 10 | 19.895 | 3.7 | 1.695 | 32.631 | 2.2 | 4.976 stream | 11 | 19.447 | 3.8 | 1.647 | 31.163 | 2.3 | 3.351 stream | 12 | 18.658 | 4.0 | 1.503 | 30.817 | 2.3 | 3.538 stream | 13 | 18.886 | 3.9 | 0.874 | 29.184 | 2.5 | 4.832 stream | 14 | 18.667 | 4.0 | 1.692 | 28.783 | 2.5 | 3.459 stream | 15 | 19.080 | 3.9 | 1.429 | 28.928 | 2.5 | 3.396 stream | 16 | 18.929 | 3.9 | 3.469 | 29.282 | 2.5 | 2.868