On Tue, Jun 9, 2026 at 2:14 PM Andres Freund <
andres@anarazel.de> wrote:
>
> Hi,
>
> On 2026-06-09 12:32:31 +0200, Jakub Wartak wrote:
> > And I've bumped TEST_JOBS 4->8 (even with 4 VCPUs), because my local runs
> > showed in taskmgr that after quite some time we have ended up using just
> > ~40% CPU (also with 4 VCPUs) while not doing I/O (this is somehow contrary
> > to what Andres was stating earlier).
>
> FWIW, I only measured this for linux, not for windows. On linux it was easy to
> do
>
> + vmstat -y -n -w 1 > vmstat.log &
> +
> + meson test ${{env.MTEST_ARGS}} --num-processes ${{env.TEST_JOBS}} --no-suite setup ${{env.MTEST_TARGET}}
> +
> + killall iostat vmstat || true
> +
> + - name: Upload stats
> + uses: actions/upload-artifact@v7
> + with:
> + path: |
> + iostat.log
> + vmstat.log
>
> Which showed that there is very little idle CPU other than during first few
> seconds and at the end.
>
> I don't know how to do that on windows... I'm sure one can do it, with ETW or
> such, but...
Oh, I thought you guys there were have some secret keys to access GH(MS)
stuff :)
OK, so I've gathered similiar data (using "typeperf", learned that the thing
exists just today). The 'Test world' steps took 14min and 11min (due to
that matrix split, cool trick btw). Attached are: patch how it was gathered,
raw CSV data, and most importantly graph.
We were both right and wrong. It is either CPU bottleneck, but also
if the I/O is involved the CPU drops to <20% in case of runner #1 (same
happens with runner#2 but for short time of 2 mins). Pretty much had
similiar local Windows behavior.
IMHO *if* we want to push that faster it would make some sense to eliminate
that I/O (but after observing that matrix split trich I'm not so sure if it
is worth investing more into it). We seem to drop CPU use every time the
avg disk queue len >= 2.
Alvaro had an idea here in [1] about instance reusing. Or maybe offload that
and ask GH folks to provide images with XFS and ReFS on D:\ by default instead
?
-J.
[1] -
https://www.postgresql.org/message-id/ah2QDZyOKgW9yU9D%40alvherre.pgsql