xpenguin

holypsycho.egloos.com

포토로그

 


Per-core DVFS on Intel CPU using Intel p-state

ref: https://www.kernel.org/doc/html/v4.12/admin-guide/pm/intel_pstate.html
ref: https://www.kernel.org/doc/Documentation/cpu-freq/intel-pstate.txt

주의: CPU에 따라 안 될 수도 있음. 아래 글은 "Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz" 기준.
1. kernel command line option 추가
kernel command line option에 "intel_pstate=per_cpu_perf_limits"를 추가해야 한다.
Grub 2를 사용하는 경우, 아래와 같이 kernel command line option 추가한다.

1) 기본 설정 변경
$ vi /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_pstate=per_cpu_perf_limits"

2) custom menuentry를 사용할 경우 아래와 같이 변경
$ vi /etc/grub.d/06_custom
menuentry 'Ubuntu, with Linux 4.14.32-pfs' --class ubuntu --class gnu-linux --class gnu --class os {
    ......
    echo    'Loading Linux 4.14.32-pfs ...'
    linux   /boot/vmlinuz-4.14.32-pfs root=UUID=4697aa0b-3947-4cc4-ad89-8ff53c831757 ro console=ttyS0,115200 earlyprintk=serial,ttyS0,115200 schedstats=enable splash intel_pstate=per_cpu_perf_limits
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-4.14.32-pfs
}

2. 옵션 추가한 커널로 재부팅

3. [optional] turbo boosting 끄기
Turbo boosting은 안 꺼도 per-core DVFS는 동작하겠지만, 지정한 frequency로 동작하지 못 하는 경우인지 아닌지 미리 판단하기 어려움.

$ echo 1 | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo

4. frequency 설정: max_freq와 min_freq를 설정함으로써 설정된 frequency로만 동작하게 하기
(아래는 코어0번 기준. 다른 코어에 대해서는 빨간 숫자만 바꾸면 됨)
$ echo 1500000 | sudo tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
$ echo 1500000 | sudo tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

5. 현재의 동작 frequency 확인하기
(아래는 코어0번 기준. 다른 코어에 대해서는 빨간 숫자만 바꾸면 됨)
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
1500029



덧글

댓글 입력 영역