FYI: SoftIron Overdrive 1000 vs. Pine64+ 2GB buildworld buildkernel time examples (fairly modern head versions)
Mark Millard
marklmi at yahoo.com
Fri Oct 5 18:30:51 UTC 2018
Self hosted (re-)build from scratch (empty build tree at start):
SoftIron Overdrive 1000: a little under 3 hrs and 20 min
Pine64+ 2GB: a little under 13 hrs and 45 min
So somewhat more than a 10 hour difference and a factor of
somewhat over 4 for total time. (I was testing the Overdrive
and was curious. The Overdrive 1000 seems to be working fine.)
Supporting context details (including the unusual storage) if
you care . . .
Both had:
make[1]: "/usr/src/Makefile.inc1" line 341: SYSTEM_COMPILER: Determined that CC=cc matches the source tree. Not bootstrapping a cross-compiler.
make[1]: "/usr/src/Makefile.inc1" line 346: SYSTEM_LINKER: Determined that LD=ld matches the source tree. Not bootstrapping a cross-linker.
and:
#WITH_CROSS_COMPILER=
WITH_SYSTEM_COMPILER=
WITH_SYSTEM_LINKER=
#
#CPUTYPE=soft
WITH_LIBCPLUSPLUS=
#WITH_LLD_BOOTSTRAP=
WITHOUT_BINUTILS_BOOTSTRAP=
WITH_ELFTOOLCHAIN_BOOTSTRAP=
WITH_LLVM_TARGET_ALL=
#WITH_CLANG_BOOTSTRAP=
WITH_CLANG=
WITH_CLANG_IS_CC=
WITH_CLANG_FULL=
WITH_CLANG_EXTRAS=
WITH_LLD=
WITH_LLD_IS_LD=
WITHOUT_BINUTILS=
WITH_LLDB=
#
WITH_BOOT=
WITHOUT_LIB32=
#
WITHOUT_GCC_BOOTSTRAP=
WITHOUT_GCC=
WITHOUT_GCC_IS_CC=
WITHOUT_GNUCXX=
#
NO_WERROR=
#WERROR=
MALLOC_PRODUCTION=
Both were using: LDFLAGS.lld+= -Wl,--no-threads
(via make.conf).
Both were running non-debug builds (with symbols), including
for the kernel. Both were building non-debug builds (with
symbols).
The file system is UFS with soft updates (no journaling)
in both cases. File systems each is one partition. Trim
enabled, vfs.ffs.dotrimcons=1 . fsck_ffs -E had been used
in a prior boot in both cases.
vm.pageout_oom_seq=120 was in use for both. (The default of
12 is not sufficient for the Pine64+ 2GB to complete
buildworld buildkernel.)
The Overdrive context was based on:
CFLAGS.clang+= -mcpu=cortex-a57
CXXFLAGS.clang+= -mcpu=cortex-a57
CPPFLAGS.clang+= -mcpu=cortex-a57
ACFLAGS.arm64cpuid.S+= -mcpu=cortex-a57+crypto
ACFLAGS.aesv8-armx.S+= -mcpu=cortex-a57+crypto
ACFLAGS.ghashv8-armx.S+= -mcpu=cortex-a57+crypto
and was a -r339076 context building itself.
The Pine64+ 2GB context was based on:
CFLAGS.clang+= -mcpu=cortex-a53
CXXFLAGS.clang+= -mcpu=cortex-a53
CPPFLAGS.clang+= -mcpu=cortex-a53
ACFLAGS.arm64cpuid.S+= -mcpu=cortex-a53+crypto
ACFLAGS.aesv8-armx.S+= -mcpu=cortex-a53+crypto
ACFLAGS.ghashv8-armx.S+= -mcpu=cortex-a53+crypto
and was a -r338860 context building itself. (Some
notes are from memory for this older build.)
The Overdrive had the hard disk replaced by a SanDisk
860 Pro SSD (1TB). Around 95% of the space being free.
It still had the original 8 GiByte RAM. 28 GiByte swap
space on the same media.
My modified version of top reported for the Overdrive:
no observed use of swap.
My modified version of top reported:
Maximum Observed Active Mem 1627M.
No observed use of Swap.
The Pine64+ 2GB had a 128 GB e.MMC on a microsd adapter
(used in DDR52 mode via local changes). Around 50% of
the space being free. 3584M swap space on the same media.
My modified version of top reported:
Maximum Observed Active Mem 1501M.
Maximum Observed Used Swap 198M.
The Pine64+ 2GB does have a case, heat sinks, and a fan,
but by no means equivalent to the Overdrive configuration.
===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
More information about the freebsd-arm
mailing list