smithi at nimnet.asn.au
Fri Nov 13 17:33:53 UTC 2015
On Wed, 21 Oct 2015 06:41:04 -0700, john.haraden at yahoo.com wrote:
John, sorry for the long delay. Please reply both to the list
(freebsd-questions at freebsd.org) and myself if you can.
> Subject: Re: (strange) Failure Notice (fwd)
> (1). I know nothing about these strange emails, and I do not receive them.
Ok, don't worry about those. I've restored the subject to original.
> (2). Est first appeared in the base system of version 10.1.
Not so; EST goes way back. I still have a FreeBSD appliance running
FreeBSD 5.5 from just over 10 years ago; cpufreq(4) and est(4) were
available then. I have an 8.2 system using cpufreq using acpi_perf (an
older P3-Mobile CPU, before EST) with powerd, and a stable/9 Core2Duo
system using EST .. none of this is new, though updated over time.
> If powerd is not specifically set, powerd assumes the
> high-performance option.
No, powerd(8) defaults to hiadaptive mode on AC power; check the manual.
> With multiple cores and processors, I do not know whether it is a
> good thing or a bad thing.
If, as you originally suggested, you want to run at maximum performance
all the time, and don't care about system temperature, then powerd_flags
'-a max' will force that, ie always run at maximum frequency.
However there are caveats about doing so, especially on some processors,
and '-a hiadaptive' (or hadp) will jump to max freq quickly enough when
there's any load, and stay up there till load is very low; further you
can adjust -r)unning and -i)dle percentages to best suit your needs.
You can also use powerd's -M switch to set a lower maximum, useful on
some CPUs (eg Core2Duo) where turbo speed (here "2401") is not desired
due to likely overheating on big long jobs, like buildworld. I use
-M 2400 as advised by Warner Losh, which actually improves performance
while reducing heat here, but perhaps not so with your 24-core Xeon.
> I forwarded you an article on both turbo-charging and disabling est.
There are parts of that article that don't ring true to me, not that I
know anything about latest Xeons and how they handle Turbo mode. I do
know that FreeBSD never, so far, runs different cores at any different
frequencies, which seems to be implied there.
There may also be some confusion regarding P-states (frequencies) and
C-states (idle states) though he doesn't refer to them in those terms.
/etc/defaults/rc.conf already has what you likely want for C-states:
performance_cx_lowest="HIGH" # Online CPU idle
state performance_cpu_freq="NONE" # Online CPU frequency
Where HIGH is C1 (hlt) and NONE means don't update CPU freqs, leave it
as either originally set on boot, or as since set or managed by powerd.
And given that post implies it only turbo-boosts some cores when there's
less load on some others (mostly to stop it overheating, I gather) then
it makes little sense to fully load all cores then claim a 12% boost in
performance .. but it doesn't say compared to what? Colour me skeptical.
What it does make clear is that you need EST enabled in BIOS (and not
disabled in loader.conf) to take any advantage of Turbo mode, or indeed
to be able to set (or report) CPU frequencies at all. Powerd relies on
EST on these cpus. I know of no reason to disable EST nor to think that
doing so might increase performance.
> (3) I am not currently on the subscription list. How do I join the
> subscription list.
If still in doubt, I suggest posting afresh to the freebsd-acpi list,
perhaps after reviewing recent archives from and/or subscribing at:
which is one place ACPI, powerd and bus developers tend to hang out.
More information about the freebsd-questions