hi folks.
here are a few build benchmark tests on an amd ryzen 3950x system, to see the cumulative effect of the various fixes we've seen since netbsd-9, for this 16 core/ 32 thread CPU, 64GB of ram, separate nvme ssd for src & obj. below has a full summary, but the highlights: - building kernels into tmpfs is 10-12% faster - DIAGNOSTIC costs 3-8% - current's better CPU thread aware scheduler helps -j16 on 32 CPUs significantly (more than double benefit compared to the other tests.) - "build.sh release" is about 10% faster - kernel builds are similar about 10% faster - builds of ircII are 22% faster, though configure only 11% - -j32 is faster than -j16 or -j24 - -j40 is not much worse than -j32, occasinally faster and the one lowlight: - "du -mcs *" on a src tree already in ram has lost about 30% performance, though still under 1 second. .mrg. time to 'grep -r . . > /dev/null' and 'du -mcs *' in /usr/src: 1st run 2nd run du -mcs * run netbsd-9 1m00.58 0m23.73 0m0.57 current (DIAG) 0m59.23 0m17.96 0m0.78 current 0m57.53 0m17.00 0m0.80 time for vax release builds on cache-filled tree from above: -j16 -j24 -j32 -j40 netbsd-9 17m24 15m30 14m48 15m19 current (DIAG) 15m43 14m31 14m23 14m30 current 14m30 13m19 13m12 13m11 time for vax GENERIC kernel builds: -j16 -j24 -j32 -j40 netbsd-9 0m28.09 0m22.59 0m20.22 0m20.17 current (DIAG) 0m22.95 0m20.20 0m19.29 0m19.20 current 0m21.62 0m18.62 0m17.44 0m17.36 time for amd64 release builds with x11 on cache-filled tree like above: -j16 -j24 -j32 -j40 netbsd-9 1h15:14 1h04:32 1h00:38 1h01:24 current (DIAG) 1h05:24 0h59:40 0h57:50 0h58:07 current 1h02:17 0h56:05 0h54:10 0h55:23 time for amd64 GENERIC kernel builds: -j16 -j24 -j32 -j40 netbsd-9 2m26.56 1m55:30 1m43:46 1m43:82 current (DIAG) 2m01.25 1m46.84 1m40.22 1m41.12 current 1m54.56 1m39.57 1m33.09 1m34.06 time for amd64 GENERIC kernel builds into tmpfs build dir: -j16 -j24 -j32 -j40 netbsd-9 2m09.22 1m38.02 1m25.39 1m25.09 current (DIAG) 1m38.59 1m23.65 1m16:25 1m16.02 current 1m35.96 1m21.69 1m14:17 1m13.96 time to configure & build ircii configure -j16 -j24 -j32 -j40 netbsd-9 0m1.77 0m1.14 0m1.13 0m1.11 0m1.14 current (DIAG) 0m1.80 0m1.02 0m0.94 0m0.94 0m0.92 current 0m1.58 0m0.97 0m0.92 0m0.87 0m0.84