View previous topic :: View next topic |
Author |
Message |
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Tue Jul 30, 2024 5:44 pm Post subject: |
|
|
It's just how the driver exposes the temperature sensor. They both probably expose multiple sensors so the order can differ, my guess is that temp1 with zenpower is the Tdie we discussed earlier in this thread. However, it seems like a good use-case for the autodetection since it selects the right sensor regardless which driver is loaded.
You could take a look in the /sys/class/hwmon/hwmon4/ directory manually and see what's there. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Tue Jul 30, 2024 7:55 pm Post subject: |
|
|
pa4wdh wrote: | my guess is that temp1 with zenpower is the Tdie we discussed earlier in this thread. |
You're correct.
I think I know what they did. They swapped it in zenpower. Maybe it can be fixed, but I've long forgotten C and the project is kind of dead. The github user who modified the previous version to support current generation is no longer active. Still works though.
Code: |
# ls /sys/class/hwmon/hwmon4/
device name power subsystem temp1_input temp1_label uevent
# cat /sys/class/hwmon/hwmon4/temp1_label
Tctl
# rmmod k10temp
# modprobe zenpower
# ls /sys/class/hwmon/hwmon4/
curr1_input curr2_input debug_data in1_input in2_input name power1_input power2_input subsystem temp1_label temp2_input uevent
curr1_label curr2_label device in1_label in2_label power power1_label power2_label temp1_input temp1_max temp2_label
# cat /sys/class/hwmon/hwmon4/temp1_label
Tdie
# cat /sys/class/hwmon/hwmon4/temp2_label
Tctl
|
Best Regards,
Georgi |
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Sun Aug 04, 2024 9:32 am Post subject: |
|
|
Is everything still working well with the new version? _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Sun Aug 04, 2024 9:39 am Post subject: |
|
|
pa4wdh wrote: | Is everything still working well with the new version? |
I haven't used it since but I don't remember something that didn't work :)
If there's something I'll report here. Thanks for your effort!
Best Regards,
Georgi |
|
Back to top |
|
|
NichtDerHans Apprentice
Joined: 27 Jan 2023 Posts: 177
|
Posted: Mon Aug 05, 2024 1:58 pm Post subject: |
|
|
pa4wdh wrote: | Is everything still working well with the new version? |
Works good. Thank you. |
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Mon Aug 05, 2024 4:59 pm Post subject: |
|
|
Thanks for the feedback.
I'd like to write a proper manpage for my program, are there any tools/editors to assist with that available in ::gentoo? _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Tue Aug 06, 2024 6:45 pm Post subject: |
|
|
The only thing I see and I forgot to mention is schedutil doesn't seem to respect the maximum frequency.
Best Regards,
Georgi |
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Wed Aug 07, 2024 8:55 am Post subject: |
|
|
I personally never used schedutil, so i don't have any hands-on experience with it.
Looking at the documentation and kernel/sched/cpufreq_schedutil.c in the kernel sources it indeed seems to use the CPU's maximum capability, not the value set as maximum in the cpufreq policy. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Sat Aug 10, 2024 9:13 am Post subject: |
|
|
I'm trying t figure out what i should do for multi-processor support for systems with multiple physical CPU's, not only cores within a single CPU. Right now my program reads one temperate and sets all processors maximum clock, which quite likely is not what's needed in such a scenario.
On the CPU side things seem quite straightforward, /sys/devices/system/cpu/cpuX/topology/physical_package_id shows me the physical socket the CPU belongs to.
On the temperature side there is a difference between intel and AMD, where intel (with the coretemp module) simply exports sensors called "Package id 0" and "Package id 1" for the different sockets. For AMD (with the k10temp module) i don't see multi CPU support . Does anyone have a multi-CPU AMD system to see what the sensors look like?
This also got me to read the documentation on k10temp (Documentation/hwmon/k10temp.rst in the kernel sources), which states this about Tctl:
Code: | Tctl is the processor temperature control value, used by the platform to
control cooling systems. Tctl is a non-physical temperature on an
arbitrary scale measured in degrees. It does _not_ represent an actual
physical temperature like die or case temperature. Instead, it specifies
the processor temperature relative to the point at which the system must
supply the maximum cooling for the processor's specified maximum case
temperature and maximum thermal power dissipation.
|
So the Tctl might not be the correct sensor to use. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Sat Aug 10, 2024 6:17 pm Post subject: |
|
|
I think you should start a new thread asking for someone with dual CPU AMD setup willing to test. The chance someone with with such comes here is minimal.
Best Regards,
Georgi |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3683 Location: Rasi, Finland
|
Posted: Sun Aug 11, 2024 10:02 am Post subject: |
|
|
Some sensors nowdays feel like black magic. Code: | panther-box ~ # lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 39 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Vendor ID: GenuineIntel
BIOS Vendor ID: GenuineIntel
Model name: Intel(R) Celeron(R) 2955U @ 1.40GHz
BIOS Model name: Intel(R) Celeron(R) 2955U @ 1.40GHz CPU @ 0.0GHz
BIOS CPU family: 12
CPU family: 6
Model: 69
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
Stepping: 1
CPU(s) scaling MHz: 57%
CPU max MHz: 1400.0000
CPU min MHz: 800.0000
BogoMIPS: 2793.58
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonst
op_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer xsave rdrand lahf_lm abm cpuid_fault epb invpcid_single ssbd ibr
s ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust erms invpcid xsaveopt dtherm arat pln pts md_clear flush_l1d
Virtualization features:
Virtualization: VT-x
Caches (sum of all):
L1d: 64 KiB (2 instances)
L1i: 64 KiB (2 instances)
L2: 512 KiB (2 instances)
L3: 2 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0,1
Vulnerabilities:
Gather data sampling: Not affected
Itlb multihit: KVM: Mitigation: VMX disabled
L1tf: Mitigation; PTE Inversion; VMX vulnerable, SMT disabled
Mds: Vulnerable; SMT disabled
Meltdown: Vulnerable
Mmio stale data: Unknown: No mitigations
Reg file data sampling: Not affected
Retbleed: Not affected
Spec rstack overflow: Not affected
Spec store bypass: Vulnerable
Spectre v1: Vulnerable: __user pointer sanitization and usercopy barriers only; no swapgs barriers
Spectre v2: Vulnerable; IBPB: disabled; STIBP: disabled; PBRSB-eIBRS: Not affected; BHI: Not affected
Srbds: Vulnerable
Tsx async abort: Not affected
panther-box ~ # sensors
coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +41.0°C (high = +100.0°C, crit = +100.0°C)
Core 0: +38.0°C (high = +100.0°C, crit = +100.0°C)
Core 1: +37.0°C (high = +100.0°C, crit = +100.0°C)
acpitz-acpi-0
Adapter: ACPI interface
temp1: +41.0°C (crit = +100.0°C)
pch_haswell-virtual-0
Adapter: Virtual device
temp1: +94.5°C | ... so that "virtual whatever"... it is cooking almost 24/7 if I have set cpu governor to anything other than 'powersave'. _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Sun Aug 11, 2024 7:39 pm Post subject: |
|
|
Code: | ~ # lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 48 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 16
On-line CPU(s) list: 0-15
Vendor ID: AuthenticAMD
BIOS Vendor ID: Advanced Micro Devices, Inc.
Model name: AMD Ryzen 7 5800H with Radeon Graphics
BIOS Model name: AMD Ryzen 7 5800H with Radeon Graphics Unknown CPU @ 3.2GHz
BIOS CPU family: 107
CPU family: 25
Model: 80
Thread(s) per core: 2
Core(s) per socket: 8
Socket(s): 1
Stepping: 0
Frequency boost: enabled
CPU(s) scaling MHz: 41%
CPU max MHz: 4463.0000
CPU min MHz: 400.0000
BogoMIPS: 6387.44
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc c
puid extd_apicid aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse
3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2
erms invpcid cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local user_shstk clzero irperf xsaveerptr rdpru w
bnoinvd cppc arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq
rdpid overflow_recov succor smca fsrm debug_swap
Virtualization features:
Virtualization: AMD-V
Caches (sum of all):
L1d: 256 KiB (8 instances)
L1i: 256 KiB (8 instances)
L2: 4 MiB (8 instances)
L3: 16 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-15
Vulnerabilities:
Gather data sampling: Not affected
Itlb multihit: Not affected
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Mmio stale data: Not affected
Reg file data sampling: Not affected
Retbleed: Not affected
Spec rstack overflow: Vulnerable: Safe RET, no microcode
Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Spectre v2: Mitigation; Retpolines; IBPB conditional; IBRS_FW; STIBP always-on; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected
Srbds: Not affected
Tsx async abort: Not affected
~ # sensors
nvme-pci-0200
Adapter: PCI adapter
Composite: +42.9°C (low = -0.1°C, high = +82.8°C)
(crit = +83.8°C)
Sensor 1: +35.9°C (low = -273.1°C, high = +65261.8°C)
Sensor 2: +36.9°C (low = -273.1°C, high = +65261.8°C)
amdgpu-pci-0500
Adapter: PCI adapter
vddgfx: 1.06 V
vddnb: 949.00 mV
edge: +37.0°C
PPT: 5.00 W
zenpower-pci-00c3
Adapter: PCI adapter
SVI2_Core: 1.06 V
SVI2_SoC: 950.00 mV
Tdie: +43.5°C (high = +95.0°C)
Tctl: +43.5°C
SVI2_P_Core: 4.87 W
SVI2_P_SoC: 6.43 W
SVI2_C_Core: 4.61 A
SVI2_C_SoC: 6.77 A
iwlwifi_1-virtual-0
Adapter: Virtual device
temp1: +38.0°C
BAT0-acpi-0
Adapter: ACPI interface
in0: 15.38 V |
I don't know what this virtual might be. For me it looks like it might be the WiFi card, but I'm not sure.
Best Regards,
Georgi |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3683 Location: Rasi, Finland
|
Posted: Sun Aug 11, 2024 8:59 pm Post subject: |
|
|
Hm. The pch must be Platform Controller Hub.
But it certainly shouldn't be that hot when idle and using powersave governor. So yeah. Can't trust it for accurate data for these kinds of programs. Luckily that box has more sensors to choose from. ;) _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Mon Aug 12, 2024 5:36 pm Post subject: |
|
|
logrusx wrote: | I think you should start a new thread asking for someone with dual CPU AMD setup willing to test. The chance someone with with such comes here is minimal. |
Thanks for this advice, just make a new thread: https://forums.gentoo.org/viewtopic-p-8836626.html _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3683 Location: Rasi, Finland
|
Posted: Mon Aug 12, 2024 6:36 pm Post subject: |
|
|
pa4wdh wrote: | logrusx wrote: | I think you should start a new thread asking for someone with dual CPU AMD setup willing to test. The chance someone with with such comes here is minimal. |
Thanks for this advice, just make a new thread: https://forums.gentoo.org/viewtopic-p-8836626.html | I think you could spin up a small VM with dual CPU hw and see how things work, or don't work, in there. _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Tue Aug 13, 2024 3:50 pm Post subject: |
|
|
That's a nice idea.
My impression is that the virtual CPU's are always the same as the host CPU's (apart from full emulation where you emulate a completely different architecture). So that would mean i can only emulate intel on my machine, or am i missing something? _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Tue Aug 13, 2024 4:25 pm Post subject: |
|
|
Code: | $ sensors
No sensors found! |
Sensors-detect found nothing. It's an EndeavorOS installation image, I don't know if it has all drivers, but I don't think this will work. You need real hardware.
EDIT: With k10temp explicitly loaded it still didn't find anything.
Best Regards,
Georgi |
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Tue Aug 13, 2024 5:39 pm Post subject: |
|
|
I also just tested with qemu and succesfully started an AMD Epyc VM. Since it was emulated it was very ssssllllloooowwww, but it worked .
I first booted the minimal installation CD but that didn't include hwmon modules. Then i tried the LiveCD, but KDE kept crashing before i could open a terminal to have a look. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3683 Location: Rasi, Finland
|
Posted: Tue Aug 13, 2024 6:31 pm Post subject: |
|
|
pa4wdh wrote: | My impression is that the virtual CPU's are always the same as the host CPU's (apart from full emulation where you emulate a completely different architecture). So that would mean i can only emulate intel on my machine, or am i missing something? | My impression is that you can virtualize a different cpu as long as the virtualized CPU doesn't have any CPU instructions that aren't found from the host CPU. try this: | qemu-system-x86_64 -cpu help | ... should list all the available CPUs... You could use Code: | -accel kvm -cpu host | so that you get virtualization acceleration... Also investigate -smp and -numa options.
My experience stop there. _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Wed Aug 14, 2024 5:55 am Post subject: |
|
|
Thanks for the tips Zucca.
In my experiments (my post before yours) i used exactly that. Exception is that i didn't use KVM because my host CPU is very simple and any AMD CPU usable in multi-socket configuration exceeds what my CPU can do. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
logrusx Advocate
Joined: 22 Feb 2018 Posts: 2380
|
Posted: Thu Aug 15, 2024 7:11 am Post subject: |
|
|
Today my computer started stuttering and I noticed the following:
Code: | ^C2024-08-15 10:05:58: Received signal 2, exiting.
2024-08-15 10:05:58: Set scaling frequency to CPU's minimum frequency
|
Why'd you do that? Then I have to manually adjust the scaling frequency.
p.s. that was with schedutil, so it seems it respects at least scaling frequency.
Best Regards,
Georgi |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3683 Location: Rasi, Finland
|
Posted: Thu Aug 15, 2024 8:40 am Post subject: |
|
|
eshowkw -O cputemp2maxfreq: | Keywords for sys-power/cputemp2maxfreq:
| | u |
| a a p s l r a | n |
| m r h p p i o i s l m m | e u s | r
| d a m p p c a x a o s 3 p 6 i | a s l | e
| 6 r 6 p p 6 r 8 6 n c 9 h 8 p | p e o | p
| 4 m 4 a c 4 c 6 4 g v 0 a k s | i d t | o
-------+-------------------------------+-------+------
0.2 | ~ o o o o o o o o o o o o o o | 8 # 0 | zucca
0.3 | ~ o o o o o o o o o o o o o o | 8 # | zucca
0.4 | ~ o o o o o o o o o o o o o o | 8 # | zucca
0.5 | ~ o o o o o o o o o o o o o o | 8 o | zucca
9999 | o o o o o o o o o o o o o o o | 8 o | zucca | ;)
I'll install 0.5 and start experimenting with it. _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Thu Aug 15, 2024 3:12 pm Post subject: |
|
|
logrusx wrote: | Today my computer started stuttering and I noticed the following:
Code: | ^C2024-08-15 10:05:58: Received signal 2, exiting.
2024-08-15 10:05:58: Set scaling frequency to CPU's minimum frequency
|
Why'd you do that? Then I have to manually adjust the scaling frequency.
|
My personal goal with this program was my passively cooled desktop, which means that it can overheat when the daemon is not running. As a safety measure it sets the CPU frequency to it's minimum when it exits (either a normal exit or due to an error). I could make that behavior optional if that makes more sense.
Thanks for updating you overlay Zucca. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3683 Location: Rasi, Finland
|
Posted: Thu Aug 15, 2024 4:30 pm Post subject: |
|
|
pa4wdh wrote: | I could make that behavior optional if that makes more sense. | I vote for:
Change governor to powersave and adjust frequency to minimum, unless configured otherwise.
Anyways... What frequency governor you guys use with this daemon? _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
pa4wdh l33t
Joined: 16 Dec 2005 Posts: 881
|
Posted: Thu Aug 15, 2024 5:11 pm Post subject: |
|
|
I'm always using the Conservative governor, which is also the default for my program.
They seem to play nice together: When the CPU is loaded the governor raises the frequency, when the CPU gets too hot my program lowers it. When the CPU load goes down, so does the frequency and the temperature, so my program allows the CPU to go to it's maximum if needed. _________________ The gentoo way of bringing peace to the world:
USE="-war" emerge --newuse @world
My shared code repository: https://code.pa4wdh.nl.eu.org
Music, Free as in Freedom: https://www.jamendo.com |
|
Back to top |
|
|
|