amd_pstate
최근에는 오버클럭 등을 통해 CPU 성능을 향상시키기 위해 new를 사용하고 싶습니다 .맞춤 제작보여주다여기, 나는 이것을 팔로우했습니다위키피디아내 모듈을 기반으로 grub
업데이트 되었습니다 .mkinitcpio
$ ls /usr/lib/modules/$(uname -r)/kernel/drivers/cpufreq/
acpi-cpufreq.ko.zst amd_freq_sensitivity.ko.zst amd-pstate-ut.ko.zst p4-clockmod.ko.zst pcc-cpufreq.ko.zst powernow-k8.ko.zst speedstep-lib.ko.zst
$ sudo cat /etc/mkinitcpio.conf
# https://forum.manjaro.org/t/testing-update-2022-06-03-linux-5-18-systemd-251-gnome-42-2-nvidia-mesa-pulseaudio-perl/112820/20
MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm amd_pstate_ut amd_freq_sensitivity)
...
HOOKS=(base udev autodetect keyboard keymap consolefont modconf block filesystems fsck)
...
$ sudo cat /etc/default/grub | grep -v \#
...
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet reboot=acpi nowatchdog nmi_watchdog=0 nvidia_drm.modeset=1 drm.debug=0x1ff nvidia.NVreg_RegistryDwords=EnableBrightnessControl=1 processor.ignore_ppc=1 processor.ignore_tpc=1 amd_pstate=active amd_pstate.shared_mem=1 amd_pstate.enable=1 initcall_blacklist=acpi_cpufreq_init "
하지만 journalctl
오류가 있어요
Jun 07 11:25:08 CzgArch kernel: amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled
Jun 07 11:25:08 CzgArch kernel: amd_pstate_ut: amd_pstate_ut_acpi_cpc_valid the _CPC object is not present in SBIOS!
Jun 07 11:25:08 CzgArch kernel: amd_pstate_ut: 1 amd_pstate_ut_acpi_cpc_valid fail!
Jun 07 11:25:08 CzgArch kernel: amd_pstate_ut: amd_pstate_ut_pstate_enable amd pstate must be enabled!
Jun 07 11:25:08 CzgArch kernel: amd_pstate_ut: 2 amd_pstate_ut_check_enabled fail!
Jun 07 11:25:08 CzgArch kernel: amd_pstate_ut: 3 amd_pstate_ut_check_perf success!
Jun 07 11:25:08 CzgArch kernel: amd_pstate_ut: 4 amd_pstate_ut_check_freq success!
그러다가 위의 위키에서 이것을 발견했습니다.
변경 가능CPPC"자동"에서 "활성화" 또는 유사한 설정으로 변경UEFI. 존재하지 않는 경우 상담해 주세요공급업체 웹사이트업데이트하세요.
efi 기반 grub을 사용하고 공급업체 웹 사이트에서 BIOS 업데이트를 확인했지만 현재 버전 이후 업데이트가 없습니다.
$ ls /boot/efi
EFI 'System Volume Information'
$ sudo dmidecode -t bios -q
BIOS Information
Vendor: LENOVO
Version: EUCN39WW
...
UEFI is supported
지원 확인
또한 커널을 읽은 후문서, 내 CPU와 커널이 이를 지원할 수 있는지 확인했습니다 amd_pstate
. 이 포럼을 기반으로Q&A, 현재는 알고 있습니다핵심지원하다 amd_pstate
. (이것은 CONFIG_X86_AMD_PSTATE_UT=m
커널 문서가 원하는 것과 동일합니다.)
$ zcat /proc/config.gz | grep PSTATE
CONFIG_X86_INTEL_PSTATE=y
CONFIG_X86_AMD_PSTATE=y
CONFIG_X86_AMD_PSTATE_UT=m
나도확인하다 CPU지원하다
$ lscpu | grep -e 'cppc\|msr'
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 cpuid 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 cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd 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 rdpid overflow_recov succor smca
펌웨어 업데이트를 시도해보세요
이것을 읽은 후우편 엽서, 하드웨어와 통신하기 위해 BIOS를 사용하는 대신 Linux에서 펌웨어를 직접 변경하는 것이 해결책일 수 있습니다. 그러나 나는 업데이트가 없다는 것을 알았습니다.
$ fwupdmgr get-updates
Firmware metadata has not been updated for 30 days and may not be up to date.
Update now? (Requires internet connection) [y|N]: y
Updating lvfs
Downloading… [********************************* ] Less than one minute remaining…Request failed : Error: connect ETIMEDOUT 142.251.42.238:443
Retrying in 15 seconds
Downloading… [************************************** ] Less than one minute remaining…
Successfully downloaded new metadata: 0 local devices supported
Devices with no available firmware updates:
• MSFT0001:00 04F3:3140
• MZVLB512HBJQ-000L2
• System Firmware
• UEFI Device Firmware
• USB2.1 Hub
No updatable devices
ps 네주제Lenovo 커뮤니티 "T14s Gen1" 노트북의 cpcc와 관련이 있지만 내 노트북 Legion r7000과 관련된 내용을 찾을 수 없습니다.
묻다:
1- 위의 문제는 다음과 같은 이유로 발생합니까?CPCC 없음내 컴퓨터에?
그렇다면 위 섹션에 나열된 대로 내 CPU와 설치된 커널이 CPCC를 지원합니까?"지원 확인"그리고는바이오스CPCC를 사용할 수 없는 근본 원인은 무엇입니까?
BIOS 문제인 경우 BIOS에 의존하지 않고 CPCC를 사용할 수 있는 방법이 있습니까? 또는 좀 더 구체적으로 말하자면, 나는 내 일을 할 수 있습니다펌웨어위에서 말한 "하나의 스레드"와 같이 Linux에서 CPCC를 활성화합니까?
2-위 목표를 달성하는 방법'주제''펌웨어를 뒤져보세요''(즉, 펌웨어에 무엇이 있는지 확인하세요.)?