On Sun, Oct 27, 2024 at 08:47:55PM -0500, Maku Bex wrote: > Hi David, > > * What (if any) "max_jobs" (make's "-j" parameter) are you using? 16 > > * For a 16T system, I expect I would start with a value of around 28. > Shouldn't this number be equal to $(nproc --all)?
Not necessarily. You might want to watch the output of "top" as the
machine is busy, and try changing the max_jobs parameter. Basically, if
the machine is spending "a lot" of time during "make buildworld" (&
friends) in "system" time, well ... that's likely (mostly) overhead. I
typically (mostly, and from memory) see 0% idle with <2% system CPU.
You almost certainly don't want a thread to need to hunt down the next
bit of work to be done when the current bit's time slice is up or it
goes into a wait: that next work should be queued up, ready to go.
> * Are you using make's "meta" mode? I do. Yes.
>
> * Can you get more memory for that system? Yes, I can bump it to 32GB. This
> is a Dell OptiPlex 7080 Micro, and not sure if it is worth upgrading the
> other components.
I suspect that additional memory would be "helpful."
> If your laptop can complete the builds in such a small amount of time, then
> there's either something wrong with my machine or the config files. Oh! The
> build just finished as I was typing this reply and...(not for the weak
> hearts):
:-}
> --------------------------------------------------------------
> >>> World built in 32437 seconds, ncpu: 16
> --------------------------------------------------------------
>
> Here are the contents of:
>
> make.conf:
>
> CPUTYPE?=icelake-client
> CFLAGS= -O2 -pipe -march=${CPUTYPE}
> #CXXFLAGS=${CFLAGS}
> MACHINE_CPU+= avx512 avx2 avx sse42 sse41 ssse3 sse3 f16c
> MAKE_JOBS_NUMBER= 16
> BATCH=yes
> WRKDIRPREFIX=/var/ports/tmp
> CCACHE_DIR=/var/ccache/tmp
>
> OPTIONS_UNSET+= QT5 QT6 CUPS VESA SCFB TWM XCONSOLE XCLOCK GNOME KDE EXAMPLES
> \
> DEBUG ASPELL NLS DOCS
> -------------------------------------------------------------------------------
> src-env.conf:
>
> WITH_META_MODE=yes
> WITH_CCACHE_BUILD=yes
> #WITH_DIRDEPS_BUILD=yes <<fails
> #WITH_DIRDEPS_CACHE=yes <<fails
>
> WITHOUT_TALK=yes
> WITHOUT_TELNET=yes
> WITHOUT_TFTP=yes
> WITHOUT_IPFILTER=yes
> WITHOUT_IPFW=yes
> WITHOUT_FLOPPY=yes
> WITHOUT_GAMES=yes
> WITHOUT_BLUETOOTH=yes
> WITHOUT_EE=yes
> WITHOUT_FREEBSD_UPDATE=yes
> WITHOUT_GPIO=yes
> WITHOUT_MAIL=yes
> WITHOUT_TESTS=yes
> WITHOUT_AMD=yes
> WITHOUT_CLANG=yes
> WITHOUT_DEBUG_FILES=yes
> WITHOUT_EXAMPLES=yes
> WITHOUT_HYPERV=yes
>
> Happy Hacking,
> ....
My config files are much simpler (these are for stable/14; head is
nearly the same):
/etc/make.conf:
NET_SNMP_SYS_CONTACT="[email protected]"
NET_SNMP_SYS_LOCATION="variable"
NET_SNMP_LOGFILE=/var/log/snmpd.log
NET_SNMP_PERSISTENTDIR=/var/net-snmp
EXTRA_PATCH_TREE=/usr/local/port_patches
WITH_BSD_JDK=TRUE
WITHOUT_RUNTIME_CPUDETECTION= YES
WITHOUT_CJK= YES
NO_SUID_XSERVER=YES
INSTALL_AS_NCFTP=yes
OPTIONS_SET=OPTIMIZED_CFLAGS
DISABLE_VULNERABILITIES=yes
FORCE_PKG_REGISTER= YES
PKG_NOCOMPRESS=1
SENDMAIL_MC=/etc/mail/laptop.mc
WITH_DEBUG_PORTS=x11/nvidia-driver
/etc/src-env.conf:
WITH_META_MODE=yes
/etc/src.conf:
KERNCONF=CANARY
PORTS_MODULES+=graphics/drm-61-kmod
.MAKE.META.IGNORE_PATHS += /usr/local/etc/libmap.d
IWN_DEBUG=1
IEEE80211_DEBUG=1
BATCH_DELETE_OLD_FILES=1
WITHOUT_REPRODUCIBLE_BUILD=yes
WITHOUT_LLVM_TARGET_ALL=yes
[Some of the above may well be a bit dated; I am not always good about
cleaning up after an experiment.]
Peace,
david
--
David H. Wolfskill [email protected]
It has been said that history repeats itself. This is perhaps not quite
correct; it merely rhymes. -- Theodor Reik
See https://www.catwhisker.org/~david/publickey.gpg for my public key.
signature.asc
Description: PGP signature
