Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Mar 2021 01:33:29 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        tech-lists <tech-lists@zyxst.net>
Cc:        freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: RPi and powerd, was: Re: RPI4 clock speeds and serial port ( temperatures idle and -j4 buildworld buildkernel )
Message-ID:  <1B9C90A7-5F37-41AC-8314-3E7C11B12B00@yahoo.com>
In-Reply-To: <B6F80E00-4E50-4921-923A-876B075A63B3@yahoo.com>
References:  <FDBC2E89-8473-4C3A-B12E-78821949FDDB@yahoo.com> <20210320005302.GA40542@www.zefox.net> <81CB0CCA-59AC-49A2-9372-4E2C22E3214D@googlemail.com> <20210320155638.GA41617@www.zefox.net> <63E61033-667C-4A08-9012-7D987B652176@yahoo.com> <20210320182821.GA49050@www.zefox.net> <AD8A445A-DF90-4525-8042-EA2A667558FE@yahoo.com> <5BF4DC26-8CCC-48E8-802F-34C42084D47F@yahoo.com> <20210321181339.GA56351@www.zefox.net> <01787975-3D1A-4D28-8F0F-957D6842D487@googlemail.com> <YFnzio4lC/D7ffFh@ceres.zyxst.net> <59B618B3-7AC9-41DF-9807-173DE34B0F8D@yahoo.com> <EA000404-7CDC-4D2A-B0C6-3D6BAC599406@yahoo.com> <70CED341-5638-49EE-A32D-2BD0AC22687C@yahoo.com> <C7115179-7D5B-4F7E-8B81-83A35110E35E@yahoo.com> <CDE1E924-4EBC-405D-ABC9-C59894B00151@yahoo.com> <B6F80E00-4E50-4921-923A-876B075A63B3@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On 2021-Mar-25, at 18:18, Mark Millard <marklmi at yahoo.com> wrote:

> [Eliminating bad history and replacing with test
> information from corrected context, just -j6 for
> now.]
>=20
> On 2021-Mar-25, at 10:59, Mark Millard <marklmi at yahoo.com> wrote:
>=20
>> [Turns out I somehow ended up with /etc/rc.conf not edited
>> to enable powerd : that is what I found when I went back
>> to disable it. Now I get to re-run the tests.]
>>=20
>> On 2021-Mar-25, at 10:23, Mark Millard <marklmi at yahoo.com> wrote:
>>=20
>>> On 2021-Mar-24, at 14:13, Mark Millard <marklmi at yahoo.com> wrote:
>>>=20
>>>> On 2021-Mar-23, at 16:15, Mark Millard <marklmi at yahoo.com> =
wrote:
>>>>=20
>>>>> On 2021-Mar-23, at 12:57, Mark Millard <marklmi at yahoo.com> =
wrote:
>>>>>>=20
>>>>>>=20
>>>>>> On 2021-Mar-23, at 06:56, tech-lists <tech-lists at zyxst.net> =
wrote:
>>>>>>=20
>>>>>>> Hi,
>>>>>>>=20
>>>>>>> latest build run:
>>>>>>=20
>>>>>> Had a -mcpu=3Dcortext-a72 world and kernel been
>>>>>> installed and booted first? Was the system
>>>>>> running a world and kernel that had not been
>>>>>> tuned for the Cortex-A72?
>>>>>=20
>>>>> I've started an experimental build in my
>>>>> -mcpu=3Dcortex-a72 tuned context . . .
>>>>>=20
>>>>>>>>>> World built in 22976 seconds, ncpu: 4, make -j6
>>>>>>> --------------------------------------------------------------
>>>>>>>=20
>>>>>>> 6 Hours : 22 Minutes : 56 Seconds
>>>>>>>=20
>>>>>>> created kernel.bin from kernel.full
>>>>>>> --------------------------------------------------------------
>>>>>>>>>> Kernel build for GENERIC-NODEBUG completed on Mon Mar 22 =
13:54:53
>>>>>>>>>> UTC 2021
>>>>>>> --------------------------------------------------------------
>>>>>>>>>> Kernel(s)  GENERIC-NODEBUG built in 2086 seconds, ncpu: 4, =
make -j6
>>>>>>> --------------------------------------------------------------
>>>>>>>=20
>>>>>>> 0 Hours : 34 Minutes : 46 Seconds
>=20
> Based on the later results reported, I get a build that
> takes a little less time for buildworld+buildkernel, a
> build that does not involve devel/ccache .
>=20
> So it could be that devel/cache had an empty cache for
> your build for all I can tell from the timing information.
>=20
>>>>>>> commands used:
>>>>>>> 1. cd /usr/src
>>>>>>> 2. git pull --ff-only
>>>>>=20
>>>>> I'm simply from-scratch rebuilding what I'm
>>>>> already running, based on main 7381bbee29df from
>>>>> 2021-03-12:
>>>>>=20
>>>>> # ~/fbsd-based-on-what-freebsd-main.sh=20
>>>>> merge-base: 7381bbee29df959e88ec59866cf2878263e7f3b2
>>>>> merge-base: CommitDate: 2021-03-12 20:29:42 +0000
>>>>> def0058cc690 (HEAD -> mm-src) mm-src snapshot for mm's patched =
build in git context.
>>>>> 7381bbee29df (freebsd/main, freebsd/HEAD, pure-src, main) cam: Run =
all XPT_ASYNC ccbs in a dedicated thread
>>>>> FreeBSD RPi4B 14.0-CURRENT FreeBSD 14.0-CURRENT =
mm-src-n245445-def0058cc690 GENERIC-NODBG  arm64 aarch64 1400005 1400005
>>>>>=20
>>>>>>> 3. make -j10 cleanworld
>>>>>>> 4. make -j10 cleandir
>>>>>>> 5. make -j10 clean
>>>>>=20
>>>>> My /usr/obj/cortexA72_clang/ was empty at the
>>>>> start of the buildworld buildkernel .
>>>>> devel/ccache is still not installed.
>>>>>=20
>>>>>> This does not show ccache being cleared out
>>>>>> before the below. So the times may be examples
>>>>>> of "with ccache benefit" times. The contrast
>>>>>> with mine and Bob P.'s times suggests a
>>>>>> nice time-benefit can occur.
>>>>>>=20
>>>>>>> 6. make -j6 buildworld
>>>>>>> 7. make -j6 buildkernel
>>>>>=20
>>>>> I'm using "-j6 buildworld buildkernel".
>>>>>=20
>>>>>>> here's the src.conf :
>>>>>>> https://cloud.zyxst.net/~john/FreeBSD/rpi4-main/src.conf
>>>>>=20
>>>>> I'm using my normal src.conf equivalent, not
>>>>> yours. (So the experiment is comparable to my
>>>>> normal past experiments in this respect, matching
>>>>> what I've reported in the past.)
>>>>>=20
>>>>>> I seem to get intermittent access to
>>>>>> https://cloud.zyxst.net/ but got to
>>>>>> see the file content eventually.
>>>>>>=20
>>>>>>> relevant rc.conf settings:
>>>>>>> powerd_enable=3D"YES"
>>>>>>> powerd_flags=3D"-r 1"
>>>>>=20
>>>>> I commented out the config.txt line that assigned
>>>>> arm_freq_min and the /etc/sysctl/conf line that
>>>>> assigned an arm frequency.
>>=20
>> I get to retry, attempting to actually do what I said
>> I'd done for powerd enabling . . . I've rebooted and
>> verified powerd now shows with the appropriate command
>> line in top. So I've cleared things out in
>> /usr/obj/cortexA72_clang/ and started a -j6 experiment
>> as the first one.
>>=20
>>>>> I put the 2 powerd_* lines above in my /etc/rc.conf .
>>>>>=20
>>>>>>> sysctl.conf settings:
>>>>>>> vfs.read_max=3D128 # default 64 # Cluster read-ahead max block =
count
>>>>>=20
>>>>> I added the above line to my /etc/sysctl.conf .
>>>>>=20
>>>>>>> config.txt:
>>>>>>> kernel=3Du-boot.bin
>>>>>>> over_voltage=3D6
>>>>>>> arm_freq=3D2000
>>>>>>> sdram_freq_min=3D3200
>>>>>=20
>>>>> Ignoring comment differences, mine matches
>>>>> for such lines.
>>>>>=20
>>>>> I rebooted on the basis of all these changes
>>>>> before starting the "-j6 buildworld buildkernel"
>>>>> style build.
>>>>>=20
>>>>>> Thanks much for the information.
>>>>>>=20
>>>>>=20
>>>>> So, 6..10(?) of hours from when the
>>>>> build started I should have time frames
>>>>> to report for a "no ccache benefit"
>>>>> build to compare to my past reported
>>>>> build times.
>>>>>=20
>=20
> With powerd actually enabled ("-r 1") this time . . .
>=20
> -j6 summary: Overall somewhat under 9 hrs historically
> for -j4 in my non-powerd configuration turned into
> somewhat under 6 hrs 45 min for -j6 in the test powerd
> configuration, somewhat over 2 hr 10 min faster.=20
>=20
> I plan on a -j4 test in the context as well.

-j4 summary: somewhat under 6 hrs 45 min for -j4 in the
powerd configuration but just a little longer than -j6 .
In more detail: a little over 4 min longer than -j6 .

I plan on a -j4 build without the vfs.read_max=3D128
as the next test of a related context.

> The -j6 details . . .
> (builds are via a EtherNet ssh session)
>=20
> First a reminder of the prior timing that I
> reported for my normal configuration of my
> normal -j4 buildworld buildkernel in my
> usual overclocking style:
>=20
> World build completed on Thu Mar 11 18:39:37 PST 2021
> World built in 29780 seconds, ncpu: 4, make -j4
> Kernel build for GENERIC-NODBG completed on Thu Mar 11 19:18:02 PST =
2021
> Kernel(s)  GENERIC-NODBG built in 2305 seconds, ncpu: 4, make -j4
>=20
> So a few minutes under 9 hr total for my
> normal configuration.
>=20
> By contrast, for the -j6 powerd configuration in this
> experiment:
>=20
> World build completed on Thu Mar 25 16:52:56 PDT 2021
> World built in 22324 seconds, ncpu: 4, make -j6
> Kernel build for GENERIC-NODBG completed on Thu Mar 25 17:21:16 PDT =
2021
> Kernel(s)  GENERIC-NODBG built in 1700 seconds, ncpu: 4, make -j6
>=20
> So somewhat under 6 hrs 45 min. Nice!
> (It is a little bit faster than the total for
> the build times that you reported.)
>=20
> Interestingly, after the build and some idle time
> I see no evidence of the CPUs being slowed down:
>=20
> # sysctl dev.cpu.0.freq
> dev.cpu.0.freq: 2000
>=20
> # sysctl hw.cpufreq.arm_freq
> hw.cpufreq.arm_freq: 2000000000
>=20
> For reference: the cpu's had definitely cooled
> (from the low 50C's range):
>=20
> # sysctl hw.cpufreq.temperature
> hw.cpufreq.temperature: 37447
>=20
> # sysctl dev.cpu.0.temperature
> dev.cpu.0.temperature: 36.4C
>=20
> Also:
>=20
> # sysctl dev.bcm2835_cpufreq.0.freq_settings
> dev.bcm2835_cpufreq.0.freq_settings: 2000/-1 600/-1
>=20
> # sysctl dev.cpu.0.freq_levels
> dev.cpu.0.freq_levels: 2000/-1 600/-1
>=20
> [Fedora gives a much longer list (in other
> units) when the minimum is not forced:
> int f over 6<=3Df<=3D20: (f*100)*1MHz . But, as
> I remember, other linux OS's gave an even
> different list. Seems to be a choice as to
> what possibilities to expose of many
> that can be set up.]
>=20
> I note that sysctl reports:
>=20
> # sysctl hw.cpufreq.turbo
> hw.cpufreq.turbo: 1
>=20
> I'm not sure of the value that shows up in in my normal
> configuration but I do not explicitly set it in any
> configuration.
>=20
>=20
> FYI: my modified version of top reported Maximum
> Observed for Active+Wired of: 3468Mi MaxObs(Act+Wir),
> suggesting that a 4 GiByte RPi4B might be a little
> constrained at some point(s) in the build by the more
> limited RAM and 2 GiByte RPi4B's or less would be
> constrained for sure.
>=20

The -j4 details . . .
(builds are via a EtherNet ssh session)
(I reboot before testing)

World build completed on Fri Mar 26 00:44:13 PDT 2021
World built in 22552 seconds, ncpu: 4, make -j4
Kernel build for GENERIC-NODBG completed on Fri Mar 26 01:12:48 PDT 2021
Kernel(s)  GENERIC-NODBG built in 1715 seconds, ncpu: 4, make -j4

So somewhat under 6 hrs 45 min. Nice!
(It is a little bit faster than the total for
the build times that you reported.)

The sysctl value information is similar to what it
was for -j16, not repeated here.

FYI: my modified version of top reported Maximum
Observed for Active+Wired of: 2589Mi MaxObs(Act+Wir),
suggesting that a 2 GiByte RPi4B would be somewhat
constrained at some point(s) in the build by the more
limited RAM but a 4 GiByte one would not. (Memory use
is a -j4 vs -j6 tradeoff.)

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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1B9C90A7-5F37-41AC-8314-3E7C11B12B00>