cyring / CoreFreq

CoreFreq : CPU monitoring and tuning software designed for 64-bit processors.
https://www.cyring.fr
GNU General Public License v2.0
1.99k stars 126 forks source link

Daemon Segmentation Fault on X570 + Ryzen 3 #186

Closed olejon closed 4 years ago

olejon commented 4 years ago

I updated CoreFreq a couple of days ago using my automatic script and it worked just fine.

Now I did it again, and loading the module works but the daemon does not load and the UI shows nothing.


# corefreqd -d

CoreFreq Daemon 1.78.1  Copyright (C) 2015-2020 CYRIL INGENIERIE

Processor [AMD Ryzen 5 3600X 6-Core Processor]

Architecture [Zen2/Matisse] 12/12 CPU Online.

SleepInterval(1000), SysGate(2000), 2326 tasks

    Thread [7fa23dc86700] Init CHILD 000
    Thread [7fa23d485700] Init CHILD 001
    Thread [7fa23cc84700] Init CHILD 002
    Thread [7fa237fff700] Init CHILD 003
    Thread [7fa22ffff700] Init CHILD 004
    Thread [7fa235ffb700] Init CHILD 008
    Thread [7fa2367fc700] Init CHILD 007
    Thread [7fa236ffd700] Init CHILD 006
    Thread [7fa234ff9700] Init CHILD 010
    Thread [7fa22f7fe700] Init CHILD 011
    Thread [7fa2377fe700] Init CHILD 005
    Thread [7fa2357fa700] Init CHILD 009

Segmentation fault

Setup is same as before when you asked about my entire setup. I see you did some changes recently.

cyring commented 4 years ago

The GPU vertical mounting trend

We it see more and more. My case allows it. I started googling for extender reviews and issues. Lost in the comments jungle, I stopped at AMD

olejon commented 4 years ago

I'm reading you that RM may implement a CPU load minimum threshold to say: "it's sleeping" But why such dummy algorithm?

It was just observation from RM. CoreFreq shows a MHz as low as 2 MHz here so not too worried about power consumption. Even if they have C-States does it mean totally "Sleeping", meaning 100% idle? Well your MONITOR/MWAIT may suggest that.

BTW: HWMonitor suggests no such idling. They stay at the approx. 2100 MHz last I checked, like ! in CoreFreq or reading from sysfs. Weird since that tool shows so much (from RAM temperatures to all fan speeds).

Question is if this happens on Linux anyways? Still waiting for official kernel cpufreq, cpuidle drivers. I seem to recall by searching or read it on Phoronix, that the kernel developers were at least working on a cpuidle driver (probably with AMD contributing).

Maybe even some Git version of the kernel has it already but must be enabled manually as it's still experimental?

Considering AMD's contributions to the Linux kernel I kind of expect those to officially come. Mind you the radeon driver on amd.com. It's kept up to date with the Windows version. Same version number!.

Yes, you can choose to only use the open stack (just a newer version of your current, with the necessary MESA packages etc included), you'll then just get a version newer than even rolling release distros. Only can be a little hassle to roll back to the one the comes with Ubuntu if you don't use the uninstall script correctly (once I was left without a working graphics stack, but the apt log shows which packages is replaced, and 1 did not get reinstalled for some reason). And yeah it's supported on RHEL, CentOS and kind of on openSUSE because of that (it's mentioned in the docs, which are linked to from the release notes). The AUR one seemed like a hassle because of this being specific for cards, but I only checked like summer/fall 2019. The driver is specific to your card/series too.

Maybe they're waiting for the next generation of Ryzen? :man_shrugging:

GPU vertical mounting trend

Interesting. Not sure there's space now with my monster Noctua, but it was certainly possible with the 3600X + stock fan.

BUT no reason here, take a lot at this:

$ sensors

amdgpu-pci-0900
Adapter: PCI adapter
vddgfx:       +0.72 V  
fan1:        1003 RPM  (min =    0 RPM, max = 4500 RPM)
edge:         +31.0°C  (crit = +94.0°C, hyst = -273.1°C)
power1:       30.02 W  (cap = 120.00 W)

That's just 2°C above Ambient. I've frequently seen it at Ambient Temperature too!.

Running Unigine Superposition (free download), it maxes out at 72°C, well below the 94°C critical. Windows maxes out at 73°C.

Main reason to install the driver from amd.com before was to get some more data than sensors showed before, but suddenly with a kernel and/or graphics stack update the one since like fall 2019 has included all of the data.

Maybe I'll try the latest Pro driver again to see if it gives better performance. Why not? It just installs a local apt repository, meaning the driver will not update unless you do it manually, which how it should be. If you manually install GPU drivers on Windows instead of relying on Windows Update, it never updates your driver either. There may always be regressions. Often a "Check for updates every X days" is on by default, BUT:

I've disabled such for all my very few 3rd party apps on Windows so it never does anything when idle, not even show a notification (requires service). Some I let check when opened, but IIRC none set to that. On macOS that's what I choose. Apart from the benchmark programs Blender Benchmark, Geekbench and Unigine Superposition, I only have these programs installed:

$ cat .xbindkeysrc                                                  
"sleep 0.25 && xte 'key Super_L'"
b:10

"xte 'key Home'"
b:13

Image

olejon commented 4 years ago

Didn't you say something earlier about having made CoreFreq "compatible with k10temp"?

It shows the High value for the Ryzen 3 CPUs and code for it could be used to trigger the HOT indicator?

cyring commented 4 years ago

Didn't you say something earlier about having made CoreFreq "compatible with k10temp"?

Yes if those k10temp Kernel prerequisites are detected and you build CoreFreq with this argument:

make HWM_CHIPSET=COMPATIBLE

...
corefreqk.c: In function ‘Core_AMD_Family_17h_Temp’:
corefreqk.c:7988:5: note: ‘#pragma message: "Building with Kernel amd_smn_read()"’
...

The pragma message above confirms that both driver use the same Kernel API (which protects SMU accesses by a mutex).

It shows the High value for the Ryzen 3 CPUs and code for it could be used to trigger the HOT indicator?

This is a hard coded value if I don't make a mistake. See its source code. As I told you I'm trying to avoid as much as possible hard coded values. I've read some docs that SMU has some sticky bits when thresholds exceeds: tbc.

cyring commented 4 years ago

Referring to issue #191 , can you please give a try to the develop branch with any of your hypervisors.

What I found in KVM and WSL Linux drivers source code is that they provide a virtual counter for the CPU usage. This counter is read through a MSR register. Behide the hood, it appears that this counter is relying on the Kernel computed runtime usage per CPU. Not the usual hardware counters (APERF/MPERF or Intel PMU fixed counters: they crash immediately)

The results are quiet strange:

Don't ask for all the other sensors. Those registers are not virtualized: temperature, power, voltage, etc But we get the virtualized ISA & CPUID features capabilities and also the VM tasks scheduling.

Thanks for any help. There are some much Virtualization cases that I'm not sure CoreFreq driver is strong enough to cover them.

olejon commented 4 years ago

Thanks for that make option. What exactly does it do?

Yes I'm having a hard time finding that 70°C is some AMD spec. 95°C is though. Some people report seeing up to 105°C in Prime95 and such (BUT people say that tool if AVX is enabled is not made for these CPUs), and that it simply would shut off (not destroying the CPU). Others say: "No, it should not but simply downclock". Maybe because it got so hot so fast?

Many reports 80-88°C in stresstests, which I can only get with PBO = Enabled in Tweaker, not AMD's PBO, which they seem to call AutoOC, although that option does not exist in UEFI they have to refer to Ryzen Master's Auto Overclocking Mode. This article explains stuff pretty well you'll probably understand. About PPT, TDC, EDC... which is limited to the Motherboard's limits if enabled.

What's confusing is that ASUS calls it Precision Boost Overdrive both places (under AMD Overclocking and Tweaker) BOTH places in the UEFI. With the exact same Help String, but the effect is very different. The AMD one does little. The Tweaker one does increase performance, especially with All Cores stressed.

With PBO disabled we logged 11.6A multithreaded and 3.3A single threaded (139.2W/39.6W), and with PBO and AutoOC maxed we logged 14.2A multithreaded and 3.4A single threaded (170.4W/40.8W)

... and they don't see too concerned about that 170.4W reading. Also they say:

AMD intends PBO and AutoOC to be used in conjunction with each other, with the AutoOC offset benefitting single-core boost and PBO benefitting multi-core loads that bump up against power limits

... I don't really see that. I get the 4.7 GHz on single core without ANY AMD Overclocking.

Also if I understand the 3950X correctly it's supposed to manage about 1.45 V. If I enable PBO in Tweaker I get 1.28 V while I DO get the 200 MHz bump on All Cores, which must be why I'm seeing 193-203 Watts then. Otherwise never above the spec of 142 Watts.

Question: With this in mind (Temperature = OK, voltage = OK), are you still worried about the Watts?.

They use a Motherboard that, with this enabled, sets the PPT all the way to 1000 Watts BUT according to them that's just the Motherboard/BIOS and the manufacturer can very well change that to even more in a BIOS update. It SHOULDN'T matter, and for me it doesn't as it sets PPT = 395 Watts BUT never reaches that, it's just hypothetical, so CPU limits it?.

Question: People also say Manual OC is superior to any Built-In OC setting, like a drop-down. Now there are SO MANY different configs people post for their UEFI on forums. ONE THAT SEEMS TO REPEAT ITSELF = Voltage Offset DOWN with -0.05 V, for better performance. If say setting it to -0.1 V it just performs worse. What exactly does it mean to set the Voltage Offset DOWN?

PS: I set Linux governor to performance on ALL policies in sysfs (ACPI drivers) and it does the same as on Windows. All Cores ALWAYS runs at Base Clock = ~3.5 GHz. It increases CoreFreq minimum MHz with approx. 20 MHz up from 0002 to 0022. But it does perform a little better with Conic Compute. That extra MHz seen with Conic Compute is not because of the overhead, right?.

Please read. This is a VERY popular YouTube channel: https://www.gamersnexus.net/guides/3491-explaining-precision-boost-overdrive-benchmarks-auto-oc

cyring commented 4 years ago

Many questions above, I don't master the architecture enough to give a precise answer beside my observations.

Yes, my BIOS is set to lower the temperature with:

While coding, temps are 32°C Conics limited at 70°C Single Core frequency can max at 4.7 GHz

olejon commented 4 years ago

Found some Windows discoveries yesterday:


cyring commented 4 years ago
  • Then we have the same UEFI settings except I haven't touched voltage (I do things like disable the serial port + legacy USB + SMART TEST for HDDs (like why...), change Boot options, disable MB RGB, disable F1 if error at boot because server services, enable "Last state" if Power Loss" because server services and tune Fans Duty Cycles and Temperature Thresholds, manually not the stupid curve which you use the Mouse to edit, although I see overclockers using that, just changes those values)

Almost the same: SATA disabled but I keep Q-Code leds which display the CPU temperature on MB !

  • C-states are on, but IDK if you refer to the CoreFreq driver there(?)

That's the all point. What are those BIOS NB C-States !

  • With AMD-V do you mean SVM? It's the option in my UEFI that says "Enable CPU Virtualization"

Yes, SVM

  • IOMMU I haven't touched, what does it do exactly?

Virtualization of devices. Such as GPU PCI pathrough

This 3950X can virtualize an EPYC 255 VCPUs with non pain

CoreFreq_KVM_EPYC

  • PS: I can run sensors, updated every X milliseconds, alongside CoreFreq without compiling that way, no problem. Both show the same temperature so still don't get what it does(?)

Without the compatible Kernel API, the SMU may be flood by both drivers. It takes a variable amount of time until the concurrent access issue appears.

... it's of course called amdgpu now. There's a cool GUI GitHub project I wanna check out (has AUR package, otherwise compile and systemd daemon if wanna run as regular user).

I did some readings about the MESA stack for Radeon 5000 series: it looks well supported according to devices database. I will however wait Xmas for the next RDNA2 GPUs

... but discovered the Fan Head Connector is not not possible to reach with this heatsink disappointed You bet ! I also opened a ticket at Fractal to have a fan cables topology... 2 weeks without any answer.

olejon commented 4 years ago

Ah, well could've read Wikipedia about IOMMU. The UEFI Help String kind of makes sense then. Maybe it's even in the manual (much UEFI stuff isn't).

Is IOMMU needed for that CPU virtualization or was that just a cool demo? Haven't had problems emulating other CPUs with IOMMU disabled. Guess I'll leave it disabled unless... There's a reason for it to be enabled just running VMs (on this we're talking desktop VMs, on another headless host I have my headless VMs)

The Linus Tech Tips video where they make a Hackintosh (but fully working) using Manjaro + KVM + QEMU, and 2 GPUs, one dedicated to the macOS VM, that's a cool one. It's technically illegal but they show the whole process maybe except a part of after having downloaded macOS to a file (on a Mac which should be legal), how to make it a bootable disk for the VM (but they say something like "see the forum, user X explains it"). They have to use various patches from GitHub to QEMU and some special things in the virsh edit XML file, but IIRC the GPU they just choose from the drop-down of virt-manager. Intel of course, components known to be supported by Apple.

Whole point was to make a PC as good as the upcoming new Mac Pro. Only thing they couldn't match was the amount of RAM the model that costs the most can have. But enough slots for a lot. The Xeon they used was like 1 version older as the one to come with it, and announced, wasn't released yet.

CPU passthrough mode for sure, works fine here, then a VM shows my exact CPU.

Cool thing was: It outperformed the best iMac Pro, and those aren't bad, and they are expensive. In a Linux VM. One monitor for Linux and the other for macOS. They got iMessage and FaceTime working which as far as I know has been a thing Apple has locked Hackintosh users out of. Some patches or whatever. Long video so they show the GitHub stuff in like 16 x speed. Can always slow down with YouTube. Later they made it work on bare metal. And compared. Did better but not that much, really. Been a long time since I've seen those channels now. It was an ongoing project.

Wonder now, if they have managed a fully working "Mac Pro" (without being a Mac per se), was supposed to be fitted in an old Mac Pro chassis ("the good old one" that was a normal PC basically) that is cheaper and faster, with native macOS. But IIRC the Mac Pro, and iMac Pro, after checking a comparable HW PC build, aren't really that expensive. Can even be cheaper, if you mess up. Meaning little profit for Apple on those (but could they take even more and get customers?)

On Intel I can use host-model, but the file containing lists if CPUs didn't include Ryzen 3 last I checked, although long ago now, many QEMU updates ago, but with CPU in host-passthrough I got my 3600X recognized as that, otherwise "AMD EPYC".

My Windows 2000 shows AMD EPYC as I haven't bothered with tuning it. Just wanted to play with it. Need to change from just matching topology to passthrough and see if Windows 2000 says 3950X!

olejon commented 4 years ago

And duh, I should've put on those fans header extender cables that comes with both the chassis (and the Noctua) to that fan on the back before putting on the heatsink. Too trigger-happy... Was watching out it didn't touch anything. Forgot access. Also 1 NVMe is below, the CPU bound. But very satisfied so no problem...

cyring commented 4 years ago

VM shows my exact CPU

is not about path-through, but a Hypervisor catch and translate

olejon commented 4 years ago
cyring commented 4 years ago

For some Zen processors, the IOMMU state can now be supplied by CoreFreq Can you give a try to issue #193

olejon commented 4 years ago

Screenshot_20200701-160917__01

Without the compatible Kernel API, the SMU may be flood by both drivers. It takes a variable amount of time until the concurrent access issue appears


Image


cyring commented 4 years ago

NMI_Watchdog, MSR_CORE_PERF_UCC, MSR_CORE_PERF_URC, all of them concern only Intel processor. Building for AMD, there are no other registers choice than APERF/MPERF with which NMI_WATCHDOG has no impact.

True, documentation needs improvements.

.corefreq.cfg is supposed to be XDG compliant but code is buggy. I also want it to be in .config directory and home as a fallback location: sign that XDG environment variable is not detected.

olejon commented 4 years ago

Thanks! Did I understand you correctly that compiling with APERF/MPERF doesn't do ANYTHING on AMD then and I can keep it in my build function in the script?

And HWM, on Intel is it OK to compile it with COMPATIBLE although it's Intel?

cyring commented 4 years ago
cyring commented 4 years ago

HWM_CHIPSET can be equalled to W83627 (SuperIO for various sensors, time of Intel X58) or COMPATIBLE (for AMD SMU within Northbridge)

olejon commented 4 years ago
  1. Ok, so I keep APERF/MPERF on both Intel and AMD without problems? Yes/No
  2. APERF/MPERF basically required on AMD? Yes/No
  3. So COMPATIBLE only for AMD? Yes/No

Still unsure: Which of those counters does simply running make use? Is it smart and detects? Seems like compiling with COMPATIBLE is recommended on AMD but not default, if I understand you correctly?

cyring commented 4 years ago
  1. Ok, so I keep APERF/MPERF on both Intel and AMD without problems? Yes/No

YES

  1. APERF/MPERF basically required on AMD? Yes/No

YES

  1. So COMPATIBLE only for AMD? Yes/No

YES

Still unsure: Which of those counters does simply running make use? Is it smart and detects?

YES, a plain make will find all definitions to build CoreFreq but not the processor architecture.

Seems like compiling with COMPATIBLE is recommended on AMD but not default, if I understand you correctly?

True ( without COMPATIBLE, the default, the instructions path to reach the SMU is shorten. )

cyring commented 4 years ago

Fyi: Among the last develop changes, the unit is now added to the power domains. CoreFreq_UI_20200702

olejon commented 4 years ago

Imagine if someone uses the JSON to implement it into GNOME System Monitor and others, for instance... Windows Task Manager has gotten pretty good if you use the Performance tab it has Usage (in MHz not just a graph), Temperatures and Watts for CPU/GPU, and more readings. Adding GPU and more CPU readings like temperature and Watts lack (only that for a monitor).

Add your PayPal email to the About View. Just a humble thing, so you can buy more HW, and a text like "Thank you. Donations will be used to improve CoreFreq and ensure compatibility with New Hardware". Nothing more... I'd happily donate. Can I? Which email?.

cyring commented 4 years ago
  • Suggestion: Please-Please move ~/.corefreq.cfg to ~/.config/, as per Freedesktop standards. Even pure proprietary CLI software you wouldn't expect to do so, does that now, and best if it's in its own folder, that way, no file extension needed, say ~/.config/corefreq/config
export XDG_CONFIG_HOME=$HOME/.config
corefreq-cli

[CTRL]+[x]

cat $XDG_CONFIG_HOME/corefreq.cfg
61,14,7
70,3,5

Don't you get the same location ?

cyring commented 4 years ago
olejon commented 4 years ago

Just checked on VM as root (sudo -i as su) without any XDG set, then, running env:

Only see these are set logged into desktop, so:

$ env|grep -i xdg
XDG_MENU_PREFIX=gnome-
XDG_VTNR=2
XDG_SESSION_ID=64
XDG_SESSION_TYPE=x11
XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/
XDG_SESSION_DESKTOP=gnome
XDG_CURRENT_DESKTOP=GNOME
XDG_SEAT=seat0
XDG_RUNTIME_DIR=/run/user/1000
XDG_CONFIG_DIRS=/etc/xdg/xdg-gnome:/etc/xdg
cyring commented 4 years ago
  • Nice. I see this is in the develop branch, so I'll wait

Thanks. yes, putting other UI things before commit ...

  • Kind of don't want to export XDG_CONFIG_HOME=$HOME/.config every time. I mean even htop uses ~/.config/htop/htoprc and has for a long-long time (no XDG needed)

Just checked on VM as root (sudo -i as su) without any XDG set, then, running env:

  • In fact if the directory does not exist, htop creates ~/.config/htop/htoprc (as if mkdir -p)
  • Don't know how htop does it, but see source code, or do it your own way, detect at least if directory exists, or even create as htop if does not exist.

Only see these are set logged into desktop, so:

$ env|grep -i xdg
XDG_MENU_PREFIX=gnome-
XDG_VTNR=2
XDG_SESSION_ID=64
XDG_SESSION_TYPE=x11
XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/
XDG_SESSION_DESKTOP=gnome
XDG_CURRENT_DESKTOP=GNOME
XDG_SEAT=seat0
XDG_RUNTIME_DIR=/run/user/1000
XDG_CONFIG_DIRS=/etc/xdg/xdg-gnome:/etc/xdg

At the time, I have to decide a saving strategy and I found common among major software to follow XDG; even if, most of them use workarounds when XDG is insufficiently configured by distribution. Chromium is part of them (for instance)

cyring commented 4 years ago

develop released The new label CCX means that the C-States are enabled. Not sure if changing C-State in BIOS is well reported by CoreFreq ?

cyring commented 4 years ago

Hello, Could you please give a try to the latest develop commit.

https://github.com/cyring/CoreFreq/issues/195#issuecomment-654290433

olejon commented 4 years ago

Thanks for Watts now showing!

Another suggestion if possible:

XDG is insufficiently configured by distribution

Which ones? Ubuntu has it perfectly. Say changing language would change content of ~/.config/[user-dirs.dirs|user-dirs.locale] Google Chrome certainly does it correctly, and not much is different from Chromium on Linux apart from DRM playback. Was a hassle to fix this on Arch, find right package(s), heck even getting~/.config/autostartto run.desktop` files. Say Dropbox relies on that.

cyring commented 4 years ago

Yes, adding CPU to a running stress is definitely something I want to do. Impacts on the Daemon threads scheduler, I'll go carefully on these changes... Since I built my Ryzen setup, I've tons of tiny features to develop: most of them can be a few hundreds of C & asm instructions which also required specs research. I also have to test for non regressions on any processor I can access to. For example I noticed that K8 is not enough covered... I'm lacking Bulldozer: I still don't know how CoreFreq works with them... Lot of server MP processors need to be completed...

In answer to your previous post about donations , what I need in fact is man power: a team of system programmers to help with other architectures and their specific features...

olejon commented 4 years ago

Hmm, ok. That will be hard I guess. Maybe some subreddit has people with the knowledge? I've seen post deep into stuff. Also you know about projects also reading stuff CoreFreq does.

I can donate for that too, meaning if they want some money to help you. And as said new HW. Let's say you had no Ryzen 3rd Gen CPU. I would've sent you enough by PayPal to buy the 3600 (not X-version), which basically works the same. OR I would have sent you my 3600X :package:

... although nice to have a spare CPU. More I need a spare GPU. Since no iGPU, system won't work without one, at all. Can always go to a physical store the same day, but... won't necessarily have the card I want. Guess they have more the top of the shelf ones.

cyring commented 4 years ago
  • So it's possible to add "Stress 1 and 2" only?

Yes possible

Hmm, ok. That will be hard I guess. Maybe some subreddit has people with the knowledge? I've seen post deep into stuff. Also you know about projects also reading stuff CoreFreq does.

I can donate for that too, meaning if they want some money to help you. And as said new HW. Let's say you had no Ryzen 3rd Gen CPU. I would've sent you enough by PayPal to buy the 3600 (not X-version), which basically works the same. OR I would have sent you my 3600X

... although nice to have a spare CPU. More I need a spare GPU. Since no iGPU, system won't work without one, at all. Can always go to a physical store the same day, but... won't necessarily have the card I want. Guess they have more the top of the shelf ones.

For the rest, don't worry, I'll handle. Up to now I've been able to cover hardware with just their specifications. It will just go slowly...

olejon commented 4 years ago

Yes possible

cyring commented 4 years ago

Yes possible

  • Great, really looking forward to it! ...

Work in Progress ;-)

cyring commented 4 years ago

Yes possible

It is available in the develop branch and applies to the Turbo Select CPU...

CoreFreq_Cumulative_Stress

Basically, when all CPUs are added, you get the same as Atomic Burn

Because Conic algorithm has been made for parallelism, it is not part of this delivery. EDIT: neither the others

Have fun

EDIT: If threads get stuck stressing, kill -9 $(pidof corefreqd-ring1) and please let me know.

EDIT:

cyring commented 4 years ago
olejon commented 4 years ago

Awesome :clap: I'll wait until in stable. Just can't afford any system freezes now.

cyring commented 4 years ago

With [Turbo Select CPU...] you can now add or remove CPU(s) as will. This develop version is stable.

olejon commented 4 years ago
[Unit]
Description=Governor

[Service]
Type=oneshot
ExecStartPre=/bin/sleep 10
ExecStart=/usr/bin/cpupower frequency-set -g performance
ExecStop=/usr/bin/cpupower frequency-set -g ondemand
RemainAfterExit=yes
TimeoutSec=60

[Install]
WantedBy=multi-user.target

FYI: New version of Ryzen Master. Had a weird simplified UI but clicking Advanced opened the standard. ALSO NEW JULY BIOS, NOT TRIED YET.

cyring commented 4 years ago

FYI: New version of Ryzen Master. Had a weird simplified UI but clicking Advanced opened the standard. ALSO NEW JULY BIOS, NOT TRIED YET.

I did but I don't understand those Vcore:

With Eco, I'm getting a Vcore closed to CoreFreq measurement but Balanced shows Vcore can go as low as 0.4 V . A Vcore value I don't even read in BIOS

EDIT: In French Vcore is "Tension CPU" then you see current value at "Actuels"

olejon commented 4 years ago
cyring commented 4 years ago

I use both languages: W10Pro license is French. Linux with no locale. All these reasons which make CoreFreq available in English and French. Have you noticed that ? If not, just press capital L I need translations in German and Spanish. Others not excluded.

Any one in will to translate CoreFreq will have to work on the UI resources file; using the corefreq-cli-rsc-en.h as a template.

What I have not improved yet, is the ascents support. UTF is the standard, but for low latency purposes, the UI layers are mode of 7-bits characters and color attributes, thus ASCII. UTF-8 would be a solution but I'm not sure it will be enough to cover the 4 major languages: en, de, fr, sp

olejon commented 4 years ago
cyring commented 4 years ago
olejon commented 4 years ago
cyring commented 4 years ago

Thanks for these advices. What I will do first is to prepare the resources file and the necessary code to toggle in Spanish. This will be available in future develop release.

cyring commented 3 years ago

I tend to check the ASUS website if there is a BIOS update. Saw there was one from June 17 published. Probably one for you too?

  • After installing it, Linux boots fine, but see these and journalctl shows the IRQ stuff in Red
juni 24 00:52:21 tux kernel: do_IRQ: 1.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #2
juni 24 00:52:21 tux kernel: do_IRQ: 2.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #3
juni 24 00:52:21 tux kernel: do_IRQ: 3.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #4
juni 24 00:52:21 tux kernel: do_IRQ: 4.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #5
juni 24 00:52:21 tux kernel: do_IRQ: 5.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #6
juni 24 00:52:21 tux kernel: do_IRQ: 6.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #7
juni 24 00:52:21 tux kernel: do_IRQ: 7.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #8
juni 24 00:52:21 tux kernel: do_IRQ: 8.55 No irq handler for vector
juni 24 00:52:21 tux kernel:   #9
juni 24 00:52:21 tux kernel: do_IRQ: 9.55 No irq handler for vector
juni 24 00:52:21 tux kernel:  #10
juni 24 00:52:21 tux kernel: do_IRQ: 10.55 No irq handler for vector

...

juni 24 00:52:21 tux kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PCI0.GPP8._DSM], AE_ALREADY_EXISTS (20190703/dswload2-327)
juni 24 00:52:21 tux kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20190703/psobject-221)
  • Any ideas?
  • The BIOS update seems to be AMD only stuff. You know what this is?
  • After install it said it was updating the "Led firmware" and nothing more before booting
  • Changelog:
PRIME X570-PRO BIOS 2203
Update AMD AM4 AGESA PI 1.0.0.1

Damn, I should have searched among our exchanges before upgrading my BIOS. I'm now stopped to downgrade at version 2206: Kernel is logging those interrupt handlers errors. The only workaround is the legacy IRQ way.

Those firmware guys, probably at ASUS; aren't they testing their work with Linux ! At least, take one minute to run Linux from any live media (which will not mess up with their Windows Gamers OS)

What kind of Q&A is made of their department ?

olejon commented 3 years ago

I noticed exact same "irq handler" logged after the very first 2XXX BIOS. I then could downgrade the the previous 1407. I tried that just for curiosity some days back. Says the file isn't a BIOS file. What I have not tried yet is to revert back to a previous 2XXX BIOS (if it allows it), either straight to the first or gradually, then to 1407 again.

Though I don't see any problems, I'm hoping with every kernel/firmware/microcode update it will go away. So far not.

I see what's out now is Versjon 2812 Beta (highlighted in Red so I won't try that), which has the AGESA V2 PI 1.1.0.0 Patch C.

I might try the mentioned gradually going back 2XXX if it allows it, if you haven't already?

Though I don't see any problems with it for actual use, not CoreFreq either, so 🤷‍♂️ for me. Just possibly better CPU performance. Also, when I updated to the current 2802 I noticed that strangely the possibility of doing so by Internet in UEFI was gone, no matter if I enabled the Network Stack myself which it always previously did before a reboot into UEFI again and directly into the EZ Flash. And then mountain of new tuning Settings was the real surprise.

I haven't bothered to search but since this appear as a kernel message even with boot parameter quiet it kinda must be reported to kernel devs months ago. First that caused this was first 2XXX which was 2203 for my Motherboard back in June.

On another topic the latest (pretty recent) firmware upgrade to my MP600 NMVes now gives a very steady 5.5 GB/s. Well above specs.

cyring commented 3 years ago

With 2311 (patch B), it was so unstable, that I don't give a chance to 2402

I also have to gradually downgrade, version per version.

Interrupt errors are also affecting FreeBSD, according to its mailing list.