Date: Mon, 25 Sep 2023 14:58:23 -0700 From: Dan Mahoney <freebsd@gushi.org> To: Robert Clausecker <fuz@fuz.su> Cc: "Edward Sanford Sutton, III" <mirror176@hotmail.com>, ports@freebsd.org Subject: Re: dns/bind916 builds rust unexpectedly Message-ID: <EFB82025-AC46-48A6-ADDE-7909E53DEFB7@gushi.org> In-Reply-To: <ZRH-c12w8fr0J0Df@fuz.su> References: <ZRGiDj-esOAc9K_Z@lordcow.org> <1e05be67-cb15-964e-c78b-e74e714257a9@FreeBSD.org> <11aede54-89d0-9b46-28f8-1931571b8917@m5p.com> <F2CB5355-F2EC-405D-80FC-0F3C18AE9A57@punkt.de> <6fd5dbf4-3fc5-a728-d751-d58deeabe933@m5p.com> <CO1PR11MB477089BE963870D088C1A7C3E6FCA@CO1PR11MB4770.namprd11.prod.outlook.com> <ZRH-c12w8fr0J0Df@fuz.su>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Sep 25, 2023, at 14:41, Robert Clausecker <fuz@fuz.su> wrote: >=20 > Am Mon, Sep 25, 2023 at 02:15:19PM -0700 schrieb Edward Sanford = Sutton, III: >> Poudriere still causes crashes in my experience depending on = hardware, >> poudriere configuration, and what you tell it to build; I have to = change >> defaults to use it and then it is fine. With only 32GB of RAM, if I = have it >> operate the whole build process in RAM >> (USE_TMPFS=3Dall>/usr/local/etc/poudriere) then I have to limit = myself to 2 >> build jobs (PARALLEL_JOBS=3D2, though I specify it on the poudriere = command >> line) or I 'may' have issues. Within that I can have multiple jobs = per build >> (ALLOW_MAKE_JOBS=3Dyes>/usr/local/etc/poudriere, >> MAKE_JOBS_NUMBER=3D4>/usr/local/etc/poudriere.d/make.conf) which gets = through >> each compile job much faster so no one job is as likely to be running >> 'alone' holding up other jobs while cores sit idle. >=20 > Ports tend to eat more and more storage for their source and = dependencies these > days. I encountered the same issue you had. A simple fix is to = switch to > USE_TMPFS=3D"data localbase" which keeps the source code and objects = of the package > to be built on disk while placing dependencies into RAM. This does = not actually > reduce performance by much as the biggest spike in disk usage is when = dependencies > are installed and the distfile is extracted. This setting helps with = the former > while not doing much to the latter. During the build, compilers = infrequently > write small objects to disk, which gets handled very well by the write = cache, so > having the WRKDIR on disk doesn't hurt. The cache also quickly picks = up on > frequently needed source files, so there's little penalty in having to = read them > from disk every once in a while. I really, really wish the ports tree supported the option of: "I am building package X, but it requires dependency A, B, and C, which = I will build as completely standard, so pretty friggin please, just pkg = install them." So often have I done the dance of "Make...crap, ^c^c^c, pkg install = autoconf...Make, ...dammit... pkg install = dialog4ports....make....dammit, crap install bison...." pkg, as far as I know, has no concept of tracking the build-dependencies = of a thing, but I would love the option of pkg = --install-all-build-deps-for foo. "Just run poudriere" is a really crappy option when you just have a = single box on an AWS t2-tiny install. -Dan=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EFB82025-AC46-48A6-ADDE-7909E53DEFB7>