On Apr 10, 2025, at 09:25, Mark Millard <mark...@yahoo.com> wrote: > The following data are from later in the builder seqeunce. > Here I'm not looking at builder activity with large Elapsed > multiplication factors for the build. It is more of a random > sampling showing examples of build-depends, lib-depends, and > run-depends and some with more than one of those notably > contributing. This is later when dependencies are normally > involve for the package builds. > > A property of the dependency based ordering of builds is that > the earlier builds tend of have fewer dependencies and the later > builds tend to have more. > > For building around 36000 packages, even a mean rate of around > 1 extra second per is around 10 hrs of extra time. (But normal > extra times are not generally near the mean-extra-time.) > > It appears that a big factor in the overall Elapsed time is > the large fraction of the 30000+ packages that are "small > build step" packages --the subset of that for which build later > because of involved dependencies. The dependency analysis is more > time consuming than the build time --or even total for all of the > steps other than build-depends, lib-depends, and run-depends. > > Basically: for the most part, only early builder runs can be > quick runs (no or very limited dependencies involved). > > It would take a massive decrease in most build-depends, > lib-depends, and run-depends (when any) Elapsed times in > later builds for this not to be the case --because of the > number of packages for which the rest of the time is small. > Such does not seem likely?
The additions in this note show some examples of just one builder being active instead of when others are also active. Each is a bulk -C ORIGIN of ORIGIN I'd listed data for previously. > The supporting detail . . . > > I'll note that the 3 load averages reported by top for the > below were near the number of FreeBSD cpus whenever I happened > to check that, instead of being during high load average time > frames. (I.e., no packages with large builder steps were > active.) There is a later explanation of this. > > > Both build-depends and lib-depends: > > # sort -s -k5,5 ~/bulk-output-release-aarch64-ports-alt-2.txt | grep -B4 -A3 > -e "^\[03:52:[0-9][0-9]\] .*configure$" | more > . . . > [03:50:57] [14] [00:00:15] Status devel/dwarves | dwarves-1.19_3: > patch-depends > [03:50:57] [14] [00:00:15] Status devel/dwarves | dwarves-1.19_3: patch > [03:50:59] [14] [00:00:17] Status devel/dwarves | dwarves-1.19_3: > build-depends > [03:52:17] [14] [00:01:35] Status devel/dwarves | dwarves-1.19_3: > lib-depends > [03:52:28] [14] [00:01:46] Status devel/dwarves | dwarves-1.19_3: > configure > [03:52:31] [14] [00:01:49] Status devel/dwarves | dwarves-1.19_3: build > [03:52:33] [14] [00:01:51] Status devel/dwarves | dwarves-1.19_3: > run-depends > [03:52:34] [14] [00:01:52] Status devel/dwarves | dwarves-1.19_3: stage > . . . For comparison/contrast: (The fetch would not have to repeat.) I stopped the bulk -a an run just a -C devel/dwarves (no other builders, no need to rebuild dependencies): [00:00:38] [05] [00:00:00] Building devel/dwarves | dwarves-1.19_3 [00:00:39] [05] [00:00:01] Status devel/dwarves | dwarves-1.19_3: check-sanity [00:00:39] [05] [00:00:01] Status devel/dwarves | dwarves-1.19_3: pkg-depends [00:00:39] [05] [00:00:01] Status devel/dwarves | dwarves-1.19_3: fetch-depends [00:00:39] [05] [00:00:01] Status devel/dwarves | dwarves-1.19_3: fetch [00:00:40] [05] [00:00:02] Status devel/dwarves | dwarves-1.19_3: checksum [00:00:40] [05] [00:00:02] Status devel/dwarves | dwarves-1.19_3: extract-depends [00:00:40] [05] [00:00:02] Status devel/dwarves | dwarves-1.19_3: extract [00:00:40] [05] [00:00:02] Status devel/dwarves | dwarves-1.19_3: patch-depends [00:00:40] [05] [00:00:02] Status devel/dwarves | dwarves-1.19_3: patch [00:00:40] [05] [00:00:02] Status devel/dwarves | dwarves-1.19_3: build-depends [00:01:15] [05] [00:00:37] Status devel/dwarves | dwarves-1.19_3: lib-depends [00:01:21] [05] [00:00:43] Status devel/dwarves | dwarves-1.19_3: configure [00:01:22] [05] [00:00:44] Status devel/dwarves | dwarves-1.19_3: build [00:01:22] [05] [00:00:44] Status devel/dwarves | dwarves-1.19_3: run-depends [00:01:22] [05] [00:00:44] Status devel/dwarves | dwarves-1.19_3: stage [00:01:22] [05] [00:00:44] Status devel/dwarves | dwarves-1.19_3: package [00:01:22] [05] [00:00:44] Finished devel/dwarves | dwarves-1.19_3: Success Still a non-trivial addition to the Elapsed time if there are 10s of thousands of such packages in the ball park. > -- > [03:52:08] [01] [00:00:08] Status security/seccure | seccure-0.5_10: > patch-depends > [03:52:08] [01] [00:00:08] Status security/seccure | seccure-0.5_10: patch > [03:52:08] [01] [00:00:08] Status security/seccure | seccure-0.5_10: > build-depends > [03:52:18] [01] [00:00:18] Status security/seccure | seccure-0.5_10: > lib-depends > [03:52:31] [01] [00:00:31] Status security/seccure | seccure-0.5_10: > configure > [03:52:31] [01] [00:00:31] Status security/seccure | seccure-0.5_10: build > [03:52:32] [01] [00:00:32] Status security/seccure | seccure-0.5_10: > run-depends > [03:52:32] [01] [00:00:32] Status security/seccure | seccure-0.5_10: stage > > > lib-depends: > > # sort -s -k5,5 ~/bulk-output-release-aarch64-ports-alt-2.txt | grep -B4 -A3 > -e "^\[05:20:[0-9][0-9]\] .*configure$" | more > . . . > -- > [05:19:35] [05] [00:00:10] Status graphics/gdchart | gdchart-0.11.5_11: > patch-depends > [05:19:35] [05] [00:00:10] Status graphics/gdchart | gdchart-0.11.5_11: > patch > [05:19:36] [05] [00:00:11] Status graphics/gdchart | gdchart-0.11.5_11: > build-depends > [05:19:36] [05] [00:00:11] Status graphics/gdchart | gdchart-0.11.5_11: > lib-depends > [05:20:08] [05] [00:00:43] Status graphics/gdchart | gdchart-0.11.5_11: > configure > [05:20:09] [05] [00:00:44] Status graphics/gdchart | gdchart-0.11.5_11: > build > [05:20:11] [05] [00:00:46] Status graphics/gdchart | gdchart-0.11.5_11: > run-depends > [05:20:11] [05] [00:00:46] Status graphics/gdchart | gdchart-0.11.5_11: > stage > . . . > -- > [05:20:02] [06] [00:02:04] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: patch-depends > [05:20:02] [06] [00:02:04] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: patch > [05:20:03] [06] [00:02:05] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: build-depends > [05:20:04] [06] [00:02:06] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: lib-depends > [05:20:26] [06] [00:02:28] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: configure > [05:20:27] [06] [00:02:29] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: build > [05:20:39] [06] [00:02:41] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: run-depends > [05:20:39] [06] [00:02:41] Status net-p2p/bitmark-recorder | > bitmark-recorder-0.16.0_1: stage > > > build-depends and run-depends: > > # sort -s -k5,5 ~/bulk-output-release-aarch64-ports-alt-2.txt | grep -B4 -A3 > -e "^\[09:15:[0-9][0-9]\] .*configure$" | more > [09:15:03] [07] [00:00:04] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: patch-depends > [09:15:03] [07] [00:00:04] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: patch > [09:15:03] [07] [00:00:04] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: build-depends > [09:15:22] [07] [00:00:23] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: lib-depends > [09:15:22] [07] [00:00:23] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: configure > [09:15:22] [07] [00:00:23] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: build > [09:15:22] [07] [00:00:23] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: run-depends > [09:16:01] [07] [00:01:02] Status databases/pear-Horde_Memcache@php82 | > php82-pear-horde-Horde_Memcache-2.1.2: stage > . . . > -- > [09:15:13] [04] [00:00:13] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: patch-depends > [09:15:13] [04] [00:00:13] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: patch > [09:15:13] [04] [00:00:13] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: build-depends > [09:15:31] [04] [00:00:31] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: lib-depends > [09:15:31] [04] [00:00:31] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: configure > [09:15:31] [04] [00:00:31] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: build > [09:15:31] [04] [00:00:31] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: run-depends > [09:16:08] [04] [00:01:08] Status devel/pear-Horde_Date@php82 | > php82-pear-horde-Horde_Date-2.4.1: stage > . . . > -- > [09:14:59] [13] [00:00:03] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: patch-depends > [09:14:59] [13] [00:00:03] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: patch > [09:14:59] [13] [00:00:03] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: build-depends > [09:15:18] [13] [00:00:22] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: lib-depends > [09:15:18] [13] [00:00:22] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: configure > [09:15:18] [13] [00:00:22] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: build > [09:15:18] [13] [00:00:22] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: run-depends > [09:16:19] [13] [00:01:23] Status net/pear-Horde_Ldap@php82 | > php82-pear-horde-Horde_Ldap-2.4.2: stage > -- > [09:14:44] [02] [00:00:04] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: patch-depends > [09:14:44] [02] [00:00:04] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: patch > [09:14:44] [02] [00:00:04] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: build-depends > [09:15:03] [02] [00:00:23] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: lib-depends > [09:15:03] [02] [00:00:23] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: configure > [09:15:03] [02] [00:00:23] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: build > [09:15:03] [02] [00:00:23] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: run-depends > [09:15:21] [02] [00:00:41] Status net/pear-Horde_Url@php82 | > php82-pear-horde-Horde_Url-2.2.6: stage > -- > [09:14:59] [09] [00:00:03] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: patch-depends > [09:15:00] [09] [00:00:04] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: patch > [09:15:00] [09] [00:00:04] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: build-depends > [09:15:19] [09] [00:00:23] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: lib-depends > [09:15:19] [09] [00:00:23] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: configure > [09:15:19] [09] [00:00:23] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: build > [09:15:19] [09] [00:00:23] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: run-depends > [09:15:59] [09] [00:01:03] Status security/pear-Horde_Group@php82 | > php82-pear-horde-Horde_Group-2.1.1: stage > -- > [09:15:00] [14] [00:00:04] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: patch-depends > [09:15:00] [14] [00:00:04] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: patch > [09:15:00] [14] [00:00:04] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: build-depends > [09:15:20] [14] [00:00:24] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: lib-depends > [09:15:20] [14] [00:00:24] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: configure > [09:15:20] [14] [00:00:24] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: build > [09:15:20] [14] [00:00:24] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: run-depends > [09:16:00] [14] [00:01:04] Status www/pear-Horde_SessionHandler@php82 | > php82-pear-horde-Horde_SessionHandler-2.3.0: stage > > > Mostly build-depends but one also has lib-depends: > > # sort -s -k5,5 ~/bulk-output-release-aarch64-ports-alt-2.txt | grep -B4 -A3 > -e "^\[11:10:[0-9][0-9]\] .*configure$" | more > [11:10:02] [14] [00:00:02] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: patch-depends > [11:10:02] [14] [00:00:02] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: patch > [11:10:02] [14] [00:00:02] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: build-depends > [11:10:46] [14] [00:00:46] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: lib-depends > [11:10:46] [14] [00:00:46] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: configure > [11:10:46] [14] [00:00:46] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: build > [11:10:46] [14] [00:00:46] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: run-depends > [11:10:46] [14] [00:00:46] Status devel/cask@nox | > cask-emacs_nox-0.8.3_17: stage > -- > [11:09:53] [04] [00:00:10] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: patch-depends > [11:09:53] [04] [00:00:10] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: patch > [11:09:54] [04] [00:00:11] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: build-depends > [11:10:38] [04] [00:00:55] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: lib-depends > [11:10:38] [04] [00:00:55] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: configure > [11:10:38] [04] [00:00:55] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: build > [11:10:38] [04] [00:00:55] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: run-depends > [11:10:38] [04] [00:00:55] Status devel/distel@nox | > distel-emacs_nox-4.1.1_19: stage > -- > [11:09:36] [12] [00:00:14] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: patch-depends > [11:09:36] [12] [00:00:14] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: patch > [11:09:37] [12] [00:00:15] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: build-depends > [11:10:00] [12] [00:00:38] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: lib-depends > [11:10:00] [12] [00:00:38] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: configure > [11:10:00] [12] [00:00:38] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: build > [11:10:00] [12] [00:00:38] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: run-depends > [11:10:00] [12] [00:00:38] Status devel/lua-mode@nox | > lua-mode-emacs_nox-20210802_10: stage > -- > [11:09:14] [05] [00:00:17] Status devel/obby | obby-0.4.8_6: patch-depends > [11:09:14] [05] [00:00:17] Status devel/obby | obby-0.4.8_6: patch > [11:09:16] [05] [00:00:19] Status devel/obby | obby-0.4.8_6: build-depends > [11:09:59] [05] [00:01:02] Status devel/obby | obby-0.4.8_6: lib-depends > [11:10:21] [05] [00:01:24] Status devel/obby | obby-0.4.8_6: configure > [11:10:26] [05] [00:01:29] Status devel/obby | obby-0.4.8_6: build > [11:10:37] [05] [00:01:40] Status devel/obby | obby-0.4.8_6: run-depends > [11:10:37] [05] [00:01:40] Status devel/obby | obby-0.4.8_6: stage > -- > [11:10:01] [07] [00:00:06] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: patch-depends > [11:10:01] [07] [00:00:06] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: patch > [11:10:01] [07] [00:00:06] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: build-depends > [11:10:23] [07] [00:00:28] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: lib-depends > [11:10:23] [07] [00:00:28] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: configure > [11:10:23] [07] [00:00:28] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: build > [11:10:23] [07] [00:00:28] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: run-depends > [11:10:23] [07] [00:00:28] Status devel/pkg-info.el@nox | > pkg-info.el-emacs_nox-0.6_18: stage > -- > [11:10:21] [02] [00:00:02] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: patch-depends > [11:10:21] [02] [00:00:02] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: patch > [11:10:21] [02] [00:00:02] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: build-depends > [11:10:40] [02] [00:00:21] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: lib-depends > [11:10:40] [02] [00:00:21] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: configure > [11:10:40] [02] [00:00:21] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: build > [11:10:40] [02] [00:00:21] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: run-depends > [11:10:40] [02] [00:00:21] Status devel/tablist@nox | > tablist-emacs_nox-1.0.13_10: stage > -- > [11:10:03] [11] [00:00:02] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: patch-depends > [11:10:03] [11] [00:00:02] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: patch > [11:10:03] [11] [00:00:02] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: build-depends > [11:10:25] [11] [00:00:24] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: lib-depends > [11:10:25] [11] [00:00:24] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: configure > [11:10:25] [11] [00:00:24] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: build > [11:10:25] [11] [00:00:24] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: run-depends > [11:10:25] [11] [00:00:24] Status editors/apel@nox | > apel-emacs_nox-10.8.20220720_10: stage > -- > [11:09:45] [09] [00:00:12] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: patch-depends > [11:09:45] [09] [00:00:12] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: patch > [11:09:46] [09] [00:00:13] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: build-depends > [11:10:33] [09] [00:01:00] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: lib-depends > [11:10:33] [09] [00:01:00] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: configure > [11:10:33] [09] [00:01:00] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: build > [11:10:37] [09] [00:01:04] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: run-depends > [11:10:37] [09] [00:01:04] Status editors/slime@nox | > slime-emacs_nox-2.26.1.9_14: stage > -- > [11:09:48] [13] [00:00:14] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: patch-depends > [11:09:48] [13] [00:00:14] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: patch > [11:09:51] [13] [00:00:17] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: build-depends > [11:09:52] [13] [00:00:18] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: lib-depends > [11:10:14] [13] [00:00:40] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: configure > [11:10:15] [13] [00:00:41] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: build > [11:10:15] [13] [00:00:41] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: run-depends > [11:10:38] [13] [00:01:04] Status mail/mailest@nox | > mailest-emacs_nox-0.9.24_21: stage For comparison/contrast: (The fetch would not have to repeat.) I stopped the bulk -a an run just a -C mail/mailest@nox (no other builders, no need to rebuild dependencies): [00:00:37] [13] [00:00:00] Building mail/mailest@nox | mailest-emacs_nox-0.9.24_21 [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: check-sanity [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: pkg-depends [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: fetch-depends [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: fetch [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: checksum [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: extract-depends [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: extract [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: patch-depends [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: patch [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: build-depends [00:00:37] [13] [00:00:00] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: lib-depends [00:00:59] [13] [00:00:22] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: configure [00:00:59] [13] [00:00:22] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: build [00:01:00] [13] [00:00:23] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: run-depends [00:01:08] [13] [00:00:31] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: stage [00:01:08] [13] [00:00:31] Status mail/mailest@nox | mailest-emacs_nox-0.9.24_21: package [00:01:08] [13] [00:00:31] Finished mail/mailest@nox | mailest-emacs_nox-0.9.24_21: Success Still a non-trivial addition to the Elapsed time if there are 10s of thousands of such packages in the ball park. > -- > [11:10:04] [12] [00:00:03] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: patch-depends > [11:10:04] [12] [00:00:03] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: patch > [11:10:04] [12] [00:00:03] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: build-depends > [11:10:27] [12] [00:00:26] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: lib-depends > [11:10:27] [12] [00:00:26] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: configure > [11:10:27] [12] [00:00:26] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: build > [11:10:27] [12] [00:00:26] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: run-depends > [11:10:29] [12] [00:00:28] Status mail/x-face-e21@nox | > x-face-e21-emacs_nox-20070306_33: stage > > > build-depends: > > # sort -s -k5,5 ~/bulk-output-release-aarch64-ports-alt-2.txt | grep -B4 -A3 > -e "^\[12:47:[0-9][0-9]\] .*configure$" | more > [12:46:29] [14] [00:00:03] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: patch-depends > [12:46:29] [14] [00:00:03] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: patch > [12:46:29] [14] [00:00:03] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: build-depends > [12:47:42] [14] [00:01:16] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: lib-depends > [12:47:42] [14] [00:01:16] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: configure > [12:47:42] [14] [00:01:16] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: build > [12:47:42] [14] [00:01:16] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: run-depends > [12:47:42] [14] [00:01:16] Status databases/p5-Amazon-SimpleDB | > p5-Amazon-SimpleDB-0.03_1: stage > -- > [12:46:40] [13] [00:00:03] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: patch-depends > [12:46:40] [13] [00:00:03] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: patch > [12:46:40] [13] [00:00:03] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: build-depends > [12:47:08] [13] [00:00:31] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: lib-depends > [12:47:08] [13] [00:00:31] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: configure > [12:47:08] [13] [00:00:31] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: build > [12:47:08] [13] [00:00:31] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: run-depends > [12:47:08] [13] [00:00:31] Status textproc/p5-Text-EtText | > p5-Text-EtText-2.2_2: stage > -- > [12:45:39] [03] [00:00:03] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: patch-depends > [12:45:39] [03] [00:00:03] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: patch > [12:45:39] [03] [00:00:03] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: build-depends > [12:47:00] [03] [00:01:24] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: lib-depends > [12:47:00] [03] [00:01:24] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: configure > [12:47:00] [03] [00:01:24] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: build > [12:47:00] [03] [00:01:24] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: run-depends > [12:47:00] [03] [00:01:24] Status www/p5-Catalyst-Engine-PSGI | > p5-Catalyst-Engine-PSGI-0.14: stage > -- > [12:45:04] [09] [00:00:06] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: patch-depends > [12:45:04] [09] [00:00:06] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: patch > [12:45:04] [09] [00:00:06] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: build-depends > [12:47:12] [09] [00:02:14] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: lib-depends > [12:47:12] [09] [00:02:14] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: configure > [12:47:12] [09] [00:02:14] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: build > [12:47:13] [09] [00:02:15] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: run-depends > [12:47:13] [09] [00:02:15] Status www/p5-Catalyst-View-XML-Simple | > p5-Catalyst-View-XML-Simple-0.01_2: stage > -- > [12:46:45] [08] [00:00:05] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: patch-depends > [12:46:45] [08] [00:00:05] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: patch > [12:46:45] [08] [00:00:05] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: build-depends > [12:47:36] [08] [00:00:56] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: lib-depends > [12:47:36] [08] [00:00:56] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: configure > [12:47:37] [08] [00:00:57] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: build > [12:47:37] [08] [00:00:57] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: run-depends > [12:47:37] [08] [00:00:57] Status www/p5-MediaWiki-API | > p5-MediaWiki-API-0.52: stage > -- > [12:46:37] [12] [00:00:04] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > patch-depends > [12:46:37] [12] [00:00:04] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > patch > [12:46:37] [12] [00:00:04] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > build-depends > [12:47:54] [12] [00:01:21] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > lib-depends > [12:47:54] [12] [00:01:21] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > configure > [12:47:54] [12] [00:01:21] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > build > [12:47:54] [12] [00:01:21] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > run-depends > [12:47:54] [12] [00:01:21] Status www/p5-WWW-DHL | p5-WWW-DHL-0.03_2: > stage > > > build-depends and run-depends: > > # sort -s -k5,5 ~/bulk-output-release-aarch64-ports-alt-2.txt | grep -B4 -A3 > -e "^\[14:03:[0-9][0-9]\] .*configure$" | more > [14:02:47] [14] [00:00:02] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: patch-depends > [14:02:47] [14] [00:00:02] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: patch > [14:02:47] [14] [00:00:02] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: build-depends > [14:03:43] [14] [00:00:58] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: lib-depends > [14:03:43] [14] [00:00:58] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: configure > [14:03:43] [14] [00:00:58] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: build > [14:03:43] [14] [00:00:58] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: run-depends > [14:04:43] [14] [00:01:58] Status databases/py-flask-sqlalchemy@py311 | > py311-flask-sqlalchemy-3.1.1: stage > -- > [14:02:22] [01] [00:00:08] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: patch-depends > [14:02:23] [01] [00:00:09] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: patch > [14:02:23] [01] [00:00:09] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: build-depends > [14:03:16] [01] [00:01:02] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: lib-depends > [14:03:16] [01] [00:01:02] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: configure > [14:03:16] [01] [00:01:02] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: build > [14:03:16] [01] [00:01:02] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: run-depends > [14:03:43] [01] [00:01:29] Status devel/py-flask-babel@py311 | > py311-flask-babel-4.0.0_1: stage > -- > [14:02:51] [03] [00:00:03] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: patch-depends > [14:02:51] [03] [00:00:03] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: patch > [14:02:51] [03] [00:00:03] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: build-depends > [14:03:43] [03] [00:00:55] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: lib-depends > [14:03:43] [03] [00:00:55] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: configure > [14:03:43] [03] [00:00:55] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: build > [14:03:43] [03] [00:00:55] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: run-depends > [14:05:07] [03] [00:02:19] Status devel/py-inline-snapshot@py311 | > py311-inline-snapshot-0.20.8: stage For comparison/contrast: (The fetch would not have to repeat.) I stopped the bulk -a an run just a -C devel/py-inline-snapshot@py311 (no other builders, no need to rebuild dependencies): [00:00:34] [02] [00:00:00] Building devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8 [00:00:34] [02] [00:00:00] Allowing MAKE_JOBS for devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8 [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: check-sanity [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: pkg-depends [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: fetch-depends [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: fetch [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: checksum [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: extract-depends [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: extract [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: patch-depends [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: patch [00:00:34] [02] [00:00:00] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: build-depends [00:01:02] [02] [00:00:28] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: lib-depends [00:01:02] [02] [00:00:28] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: configure [00:01:02] [02] [00:00:28] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: build [00:01:02] [02] [00:00:28] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: run-depends [00:01:24] [02] [00:00:50] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: stage [00:01:24] [02] [00:00:50] Status devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: package [00:01:24] [02] [00:00:50] Finished devel/py-inline-snapshot@py311 | py311-inline-snapshot-0.20.8: Success Still a non-trivial addition to the Elapsed time if there are 10s of thousands of such packages in the ball park. > -- > [14:02:47] [02] [00:00:03] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: patch-depends > [14:02:47] [02] [00:00:03] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: patch > [14:02:47] [02] [00:00:03] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: build-depends > [14:03:43] [02] [00:00:59] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: lib-depends > [14:03:43] [02] [00:00:59] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: configure > [14:03:43] [02] [00:00:59] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: build > [14:03:43] [02] [00:00:59] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: run-depends > [14:05:38] [02] [00:02:54] Status devel/py-xsdata-plantuml@py311 | > py311-xsdata-plantuml-24.3: stage > -- > [14:02:07] [10] [00:00:04] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: patch-depends > [14:02:07] [10] [00:00:04] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: patch > [14:02:07] [10] [00:00:04] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: build-depends > [14:03:06] [10] [00:01:03] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: lib-depends > [14:03:07] [10] [00:01:04] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: configure > [14:03:07] [10] [00:01:04] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: build > [14:03:07] [10] [00:01:04] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: run-depends > [14:03:34] [10] [00:01:31] Status mail/py-flask-mail@py311 | > py311-flask-mail-0.10.0: stage > -- > [14:02:31] [06] [00:00:03] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: patch-depends > [14:02:31] [06] [00:00:03] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: patch > [14:02:31] [06] [00:00:03] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: build-depends > [14:03:26] [06] [00:00:58] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: lib-depends > [14:03:26] [06] [00:00:58] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: configure > [14:03:26] [06] [00:00:58] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: build > [14:03:26] [06] [00:00:58] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: run-depends > [14:03:54] [06] [00:01:26] Status www/py-flask-bootstrap@py311 | > py311-Flask-Bootstrap-3.3.7.1_2: stage > -- > [14:02:59] [13] [00:00:03] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: patch-depends > [14:02:59] [13] [00:00:03] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: patch > [14:02:59] [13] [00:00:03] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: build-depends > [14:03:27] [13] [00:00:31] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: lib-depends > [14:03:27] [13] [00:00:31] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: configure > [14:03:27] [13] [00:00:31] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: build > [14:03:27] [13] [00:00:31] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: run-depends > [14:03:54] [13] [00:00:58] Status www/py-flask-caching@py311 | > py311-flask-caching-2.2.0_1: stage > -- > [14:02:04] [08] [00:00:03] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: patch-depends > [14:02:04] [08] [00:00:03] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: patch > [14:02:04] [08] [00:00:03] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: build-depends > [14:03:00] [08] [00:00:59] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: lib-depends > [14:03:00] [08] [00:00:59] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: configure > [14:03:00] [08] [00:00:59] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: build > [14:03:00] [08] [00:00:59] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: run-depends > [14:04:24] [08] [00:02:23] Status www/py-flask-simpleldap@py311 | > py311-Flask-SimpleLDAP-2.0.0: stage > -- > [14:02:47] [05] [00:00:02] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: patch-depends > [14:02:47] [05] [00:00:02] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: patch > [14:02:47] [05] [00:00:02] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: build-depends > [14:03:15] [05] [00:00:30] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: lib-depends > [14:03:15] [05] [00:00:30] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: configure > [14:03:16] [05] [00:00:31] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: build > [14:03:16] [05] [00:00:31] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: run-depends > [14:03:43] [05] [00:00:58] Status www/py-flask-theme@py311 | > py311-flask-theme-0.3.6_1: stage > > > The log file also allows me to do the likes of the following to see > what and how many (package level) dependencies were involved: > > # grep "\<devel/dwarves\>[^-]" ~/bulk-output-release-aarch64-ports-alt-2.txt > | more > [00:00:17] devel/dwarves depends on devel/argp-standalone > [00:00:17] devel/dwarves depends on devel/binutils > [00:00:17] devel/dwarves depends on devel/cmake-core > [00:00:17] devel/dwarves depends on devel/elfutils > [00:00:17] devel/dwarves depends on devel/gettext-runtime > [00:00:17] devel/dwarves depends on devel/gettext-tools > [00:00:17] devel/dwarves depends on devel/gnulib > [00:00:17] devel/dwarves depends on devel/ninja > [00:00:17] devel/dwarves depends on lang/gcc14 > [00:00:17] devel/dwarves depends on ports-mgmt/pkg > [03:50:42] [14] [00:00:00] Building devel/dwarves | dwarves-1.19_3 > [03:50:49] [14] [00:00:07] Status devel/dwarves | dwarves-1.19_3: > check-sanity > [03:50:49] [14] [00:00:07] Status devel/dwarves | dwarves-1.19_3: > pkg-depends > [03:50:51] [14] [00:00:09] Status devel/dwarves | dwarves-1.19_3: > fetch-depends > [03:50:51] [14] [00:00:09] Status devel/dwarves | dwarves-1.19_3: fetch > [03:50:54] [14] [00:00:12] Status devel/dwarves | dwarves-1.19_3: checksum > [03:50:55] [14] [00:00:13] Status devel/dwarves | dwarves-1.19_3: > extract-depends > [03:50:55] [14] [00:00:13] Status devel/dwarves | dwarves-1.19_3: extract > [03:50:57] [14] [00:00:15] Status devel/dwarves | dwarves-1.19_3: > patch-depends > [03:50:57] [14] [00:00:15] Status devel/dwarves | dwarves-1.19_3: patch > [03:50:59] [14] [00:00:17] Status devel/dwarves | dwarves-1.19_3: > build-depends > [03:52:17] [14] [00:01:35] Status devel/dwarves | dwarves-1.19_3: > lib-depends > [03:52:28] [14] [00:01:46] Status devel/dwarves | dwarves-1.19_3: > configure > [03:52:31] [14] [00:01:49] Status devel/dwarves | dwarves-1.19_3: build > [03:52:33] [14] [00:01:51] Status devel/dwarves | dwarves-1.19_3: > run-depends > [03:52:34] [14] [00:01:52] Status devel/dwarves | dwarves-1.19_3: stage > [03:52:35] [14] [00:01:53] Status devel/dwarves | dwarves-1.19_3: package > [03:52:38] [14] [00:01:56] Finished devel/dwarves | dwarves-1.19_3: Success > > But it does not break out build-depends vs. lib-depends vs. run-depends > specifics, for example. > > It looks like for many of the later small package builds, those > 3 activities now make up most of the elapsed-time consequences > for those builds. > > top over various time frames shows mostly the likes of: > > 66921 59 root 131 0 230016Ki 179080Ki CPU5 5 0:26 99.56% > /usr/local/sbin/pkg-static add -A /packages/All/py311-flask-3.1.0.pkg > 66914 59 root 68 0 19536Ki 9344Ki wait 10 0:00 0.00% > /usr/local/sbin/pkg-static add -A /packages/All/py311-flask-3.1.0.pkg > 66804 59 root 68 0 13408Ki 3120Ki wait 10 0:00 0.00% > /bin/sh /usr/ports/Mk/Scripts/do-depends.sh > > for for build-depends, lib-depends, and run-depends for the > activity for each active builder. None of the ports are "large > build step" ones for where I happen to have sampled or when I > happened to watch with top. But: Most packages are not "large > build step" ones so this is expected much of the time. > > NOTE: > The above explains the load averages being near the FreeBSD number > of cpus during periods when all the active builders were doing > such activity, as is common over many parts of the build sequence. > > > Other notes: > > There is evidence on the build cluster results that the main-* > runs have a notably larger Elapsed time multiplier than the > 13* and 14* runs do. 13* and 14* are still substantial of > themselves. My guess is that main-* uses a debug 15000?? > kernel and possibly a debug jail-world and 13* and 14* use a > non-debug 15000?? kernel (and a non-debug jail-world). But > such details do not seem to be in public descriptive information > or published in public log files. I expect the dependency > analysis activity happens to touch Elapsed-time-consuming > debug code. May be a more selective variant of debug kernel > and/or world builds could be used instead that avoids a > notable amount of that? > > It looks like having a partially pre-built bulk -a to start > from could avoid wait-time for establishing a context that > shows the Elapsed time behavior for build-depends, lib-depends, > and run-depends. > > I ended up with having to restart poudriere(-devel) during my > investigations and ended up using a non-debug kernel. So the > times on the left below are from when it queued 26014 and then > inspected 7111, not from the start of the original "bulk -c -a" > on the Apple silicon M4 MAX under Parallels on macOS. === Mark Millard marklmi at yahoo.com