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