Re: continuing excessive parallelism building go
Jonathan Perkin <[email protected]> Fri, 8 May 2026 16:06:55 +0100
| Newsgroups | gmane.os.netbsd.devel.packages |
|---|---|
| Message-ID | <[email protected]> |
* On 2026-05-08 at 15:49 BST, Greg Troxel wrote: >Jonathan Perkin <[email protected]> writes: > >> Why does it need MAKE_JOBS_SAFE=no? Notably this will cause bob >> builds that use the dynamic scheduler to be done at -j1. I realise >> this is a "I don't care" for most people, but it still seems wrong to >> be setting that variable yet still expecting to use parallel jobs, and >> I don't think it's necessary or even correct. > >I'm not really sure what you mean "done at -j1". Do you mean bob's >scheduler will expect concurrency of 1, but it will actually be >MAKE_JOBS, and thus be higher than expectations, which is wrong? If so, >I see your point. If you use bob's dynamic scheduler then it will assign a MAKE_JOBS setting for each build based on its historical usage, so bigger builds will automatically get higher MAKE_JOBS, smaller or builds that have shown to not benefit from parallel builds will get lower, etc. If a package is marked as MAKE_JOBS_SAFE=no then it will be assigned MAKE_JOBS=1 regardless. > - don't set MAKE_JOBS_SAFE=no, after verifying by code reading that > there won't actually be any use of -jN. Or if there is, set > GOMAXPROCS=1 for that package (always, because the -j mechanism has > the token). Consider that passing GOMAXPROCS=1 to 'go build' is how > you spell -jN on the command line, and call it right. > >and having written that I think the 2nd option is the right answer for >now. Yes, I think just remove MAKE_JOBS_SAFE=no. Thanks, -- Jonathan Perkin pkgsrc.smartos.org Open Source Complete Cloud www.tritondatacenter.com