[I thought of another question.]

On Apr 6, 2025, at 10:53, Mark Millard <mark...@yahoo.com> wrote:

> On Apr 6, 2025, at 08:39, Baptiste Daroussin <b...@freebsd.org> wrote:
> 
>> Le 5 avril 2025 06:58:12 GMT+02:00, Mark Millard <mark...@yahoo.com> a écrit 
>> :
>>> [This is an update of earlier notes, now that I've noticed what
>>> is different for the contexts that not seeing larger time frames
>>> in the Mar-29/Apr-01 bulk build starts of official package builds.]
>>> 
>>> The context here is the official bulk builds started
>>> 2025-Mar-29 (beefy 17 and beefy18) or 2025-Apr-01 .
>>> 
>>> pkg 1.21.3 was in use on beefy 19 and beefy20. These did not get the
>>> significantly longer time frames.
>>> 
>>> pkg  2.1.0 was(/is) in use on:
>>> (beefy17 and beefy18 are significantly slower hardware than beefy21
>>> and beefy22)
>>> 
>>> beefy17 main-i386  168:11:08           vs. prior maximum 74:19:29
>>> beefy18 main-amd64 168:11:10+ (so far) vs. prior maximum 96:28:10
>>> (beefy18 still has 9338 Remaining and still has status parallel_build:)
>>> 
>>> beefy21 142i386  50:40:16 vs. prior maximum 40:22:44 [141i386]
>>> beefy22 142amd64 58:51:19 vs. prior maximum 49:37:29 [141amd64]
>>> 
>>> Note that beefy17 took around 94 hrs longer, more than doubling the time.
>>> 
>>> ampere2 main-arm64 is somewhat over 1/3 of the way along but also looks
>>> to likely have a much longer overall time frame.
>>> 
>>> 
>>> Note that beefy17 and beefy18 had/has:
>>> (has large time changes)
>>> 
>>> Host OSVERSION: 1500028
>>> Jail OSVERSION: 1500035
>>> 
>>> beefy19, beefy20, beefy21, and beefy22 had:
>>> (mix of little vs. large time changes)
>>> 
>>> Host OSVERSION: 1500035
>>> Jail OSVERSION: 1402000
>>> 
>>> ampere2's main-arm64 has:
>>> (has large time changes)
>>> 
>>> Host OSVERSION: 1500035
>>> Jail OSVERSION: 1500035
>>> 
>>> So: The new Host 1500035 use is not the cause. Nor is Jail 1402000 .
>>> 
>>> ===
>>> Mark Millard
>>> marklmi at yahoo.com
>>> 
>> 
>> 
>> yes this is known and expected, because ofnthe support of provide/requires 
>> in a way the ports tree can use it (pkg add) we added some code which 
>> introduce performance penalty, we expect to be able to improve performance 
>> again by using those features in the ports tree for real (right now the work 
>> is in poudriere, then the features will be added to the ports tree)
> 
> Good to know. You might want to send out a HEADS UP style notice for folks
> that build their own packages. A lot of these folks do so in order to
> get security updates quicker as far as I can tell. A known large change to
> their build time frames could be important to their planning.
> 
> It might be appropriate to suggest temporarily manually controlling the
> version of ports-mgmt/pkg used to be 2.0.6 (or before) for those for which
> time to build is the most important in the interim.
> 
> It looks like ports-mgmt/poudreire* would not need to be controlled (yet?):
> 
> It looks like ports-mgmt/poudreire       has not been updated since 
> 2024-08-25 .
> It looks like ports-mgmt/poudreire-devel has not been updated since 
> 2025-02-09 .
> 
> 
> The notes may be of use to some others. For me, the likely implication
> is to stop updating my ports tree builds except on the fastest amd64
> system and fastest aarch64 system and to stop building for armv7 for
> now. (The fastest aarch64 system does not support AArch32/armv7
> and the fastest that does support such takes over 5 times as long
> compared to fastest aarch64 system.)
> 
> 
> Going in another direction of questions for folks that do their own
> bulk builds of packages:
> 
> 
> Context for the next paragraph: Already "using those features in the
> ports tree for real" for someone doing their own package builds:
> 
> Will bulk -c builds (for example) always suffer the longer build
> times by not having prior information for reference (because of
> the -c)? What sorts of activities would destroy the information
> for the next build attempt if that is an issue, making the next
> build take the new, much-longer overall build time? For example,
> updating the poudriere jail's world?
> 
> 
> Context for the next paragraph: Just before "using those features in
> the ports tree for real" for someone doing their own package builds:
> 
> How will one get to the point of "using those features in the ports
> tree for real"? How will a self-builder of packages get to the point
> of being able to test the build times in the "for real" context as
> well?
> 
> 
>> bapt
> 
> 
> Just for reference for official main-arm64-default bulk -c -a (from
> scratch) builds:
> 
> 
> p25bf3a3260c7_s680d34896c3 queued 36447
> and has built 15523 and has 19479 remaining, 134:23:16 so far
> (will have built up to 15523+19479 == 35002 when done, if it finishes)
> 
> So: 12 to 13 days (around 300 hrs) as an estimate.
> 
> 
> The prior longest main-arm64-default official build that completed:
> p02dd5021d6f9_s717adecbbb5 queued 36466
> and had built 34853 and had     0 remaining, 163:20:35
> 
> So: 6.8 days or so.
> 
> Overall: very roughly doubling the overall time when the "for
> real" context does not apply.

Additional question . . .

Which of the following are the stage(s) that take the extra
time for an active builder? :

check-sanity
pkg-depends
fetch-depends
fetch
checksum
extract-depends
extract
patch-depends
patch
build-depends
lib-depends
configure
build
run-depends
stage
package

===
Mark Millard
marklmi at yahoo.com


Reply via email to