FYI: Summary of what it took to get around 8.5 hr head -r365932 buildworld buildkernel times on a RPi4B

Mark Millard marklmi at yahoo.com
Mon Sep 28 20:08:16 UTC 2020


The major configuration properties contributing to having smaller RPi4B FreeBSD
buildworld buildkernel times have been (not ranked):

Cortex-A72 clock rate 2 GHz:
over_voltage=6 and arm_freq=2000 (config.txt)
For u-boot based booting: also dev.cpu.0.freq=2000 (/etc/sysctl.conf)

Always full speed RAM:
sdram_freq_min=3200 (config.txt)
Note: Only effective with u-boot based boot. So uefi/ACPI v1.20 context is slower.

Using Cortex-A72 tuned code ( from -mcpu=cortex-a72 ) in the running kernel/world

When sdram_freq_min=3200 is effective:   Use of -j4 for doing buildworld buildkernel
When sdram_freq_min=3200 is ineffective: Use of -j3 for doing buildworld buildkernel

Use of RPi4B's with sufficient (effective) RAM
Heaksinks and fan use, along with 5.1v 3.5A power supply
Note: <3072 MiByte effective RAM:    not tested.
Note: Other types of cooling:        not tested.
Note: Other types of power supplies: not tested.

File system (UFS) on USB3 SSD (vs. microsd card)
Note: zfs:              not tested
Note: Other USB3 media: not tested


Other notes:

Note: Recent tests were based on head -r365932 .

Note: 1024 MiByte RAM would slow things at times (significant paging
      for the same -jN).

Note: Using a kernel built with -mcpu=cortex-a72 requires head -r365918
      ( stable/12: -r366182 ; stable/11: -r366183 ) or later to avoid
      misconfiguring one of the rings for xHCI.

Note: Use of an appropriate u-boot to boot head -r365677 or later
      allows 4 MiBYte and 8MiByte RPI4Bs to handle xHCI/USB3 reliably
      (USB2 untested). (No MFC?)

Note: Use of uefi/ACPI from https://github.com/pftf/RPi4/releases/
      requires use of the uefi 3072 MiByte limit for USB3 I/O to be
      reliable for 4 GiByte and 8GiBYte RPi4Bs (USB2 untested). The
      https://reviews.freebsd.org/D25219 patch is involved in having
      things operate, even for 3072 MiByte. uefi use also ignores
      (overrides?) sdram_freq_min=3200 use. There are also tradeoffs
      for what devices are supported.


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-arm mailing list