Radeon 동적 전원 관리 기능을 활성화하는 방법은 무엇입니까?


16

최근에는 Linux Kernel 3.11의 RC가 출시되었습니다. 아시다시피이 새로운 커널에는 오픈 소스 Radeon 드라이버 사용자를위한 동적 전원 관리 기능이 포함되어 있습니다. Ubuntu 13.04의 기본 커널에 전원 관리 문제가 있으므로 시도해보고 싶었습니다.

누군가 Kernel Testing PPA에서 최신 커널 RC를 다운로드하여 설치 한 후이 새로운 기능을 활성화하는 방법을 알고 있습니까?

편집 : 더 구체적으로, 나는 이것에 대해 이야기하고 있습니다 : http://www.phoronix.com/scan.php?page=news_item&px=MTM5NjE


3.11이 아직 출시되지 않았으며 우분투에는 이미 공식 미러가 있습니까? 새로운 소식입니다. 아마도 커널 테스트 PPA를 의미 합니까?
mikewhatever

네, 그게 제 말입니다! 거기에서 최신 RC (작성 당시 rc2)를 다운로드했습니다.
Gladen

1
@ mikewhatever : 더 명확하게하기 위해 질문을 편집했습니다. 내 생각 에이 질문은 전혀 주제가 아닙니다. 현재 CURRENT Ubuntu 버전 (13.04)에 새 커널을 설치하는 것에 대해 이야기하고 있습니다. 누군가이 질문이 왜 종결되었는지 명확히 할 수 있습니까?
Gladen

1
당신 말이 맞아요, 다시 열어야합니다. 성급한 (부정확 한) 투표에 대한 사과가 마감되었습니다.
Tom Brossman

@Gladen-tlp을 의미합니까? 여기에는 일반적으로 노트북 비서에 대한 전원 관리가 포함되며 전원 사용도 처리합니다.
dschinn1001

답변:


14

업데이트 (8-05-2014) : 예상대로 Ubuntu 14.04에서는 모든 최신 AMD GPU (HD 4000-HD 7000 시리즈)에 대해 DPM이 기본적으로 활성화되어 있습니다. 지원되는 그래픽 카드와 함께이 릴리스를 실행중인 경우이 기능을 사용하기 위해 아무 것도하지 않아도됩니다.

업데이트 (28-11-2013) : Ubuntu 13.10은 기본적으로 3.11 커널과 함께 제공됩니다. 따라서이 릴리스를 사용하는 경우 Linux 커널에 매개 변수를 추가하기 만하면됩니다. 그에 따라 가이드를 업데이트했습니다. 또한 Ubuntu 14.04에서는 DPM이 기본적으로 활성화 되므로이 안내서는 더 이상 사용되지 않을 것입니다. ;)

좋아, 지난 며칠 동안 나는 조금 실험하고 그것을 가능하게했다! 사용 방법을 알게되면 실제로는 정말 쉽습니다 .. 시도하고 싶은 사람들을 위해 모든 단계를 설명하겠습니다. 새 커널 설치부터 시작하십시오.

먼저 고려해야 할 몇 가지 사항이 있습니다. Radeon DPM 지원은 Radeon HD 2000 (R600) 시리즈 그래픽 카드 이상에서만 지원됩니다. 정말 오래된 ATI Radeon 그래픽 카드를 사용하는 경우 전원 관리 지원은 이미 오픈 소스 드라이버에서 시작됩니다.

Ubuntu 13.04 이하의 단계 만 해당 :

Radeon DPM을 사용하려면 Linux 3.11 커널 이상이 필요합니다. Ubuntu 메인 라인 커널 PPA를 사용 하고이 kernel.ubuntu.com 디렉토리 에서 안정적인 최신 3.11 Linux 커널 이미지를 다운로드 할 수 있습니다 . 향후 커널 업데이트도 괜찮으며이 디렉토리에서도 찾을 수 있습니다.

동적 전원 관리 기능을 사용하려면 그래픽 카드의 업데이트 된 펌웨어가 필요합니다. 최신 Radeon 마이크로 코드 / 펌웨어는 이 디렉토리 에서 다운로드 할 수 있습니다 . 6 월부터 * _smc.bin 파일 이 필요합니다 . 특정 그래픽 카드 코드 이름을 잘 모르는 경우 일반적으로 lspci -v | less ... 파일은 / lib / firmware / radeon 내에 있어야합니다 . 펌웨어없이 Radeon DPM을 사용하려고하면 GPU에서 가속이 비활성화됩니다. > 3.11 커널을 설치 하기 전에 / lib / firmware / radeon 에 업데이트 된 펌웨어가 있는지 확인해야합니다 . 자동으로 설치된 이미지로 가져옵니다.

Ubuntu 13.10 이하 또는 Radeon HD 3000 이하 사용자 :

Radeon DPM 지원은 기본적으로 Linux 커널 3.13 이하 또는 이전 GPU에서는 활성화되어 있지 않습니다. 이 경우 radeon.dpm = 1 매개 변수를 Linux 커널에 추가해야합니다 . Ubuntu에서 수행하는 단계 는 다양한 방법에 대한 Ubuntu Wiki 를 참조하십시오 .

새 커널이 설치되고 펌웨어가 업데이트되고 커널 매개 변수가 활성화되면 잘 가야합니다. 이제 시스템을 재부팅해야하며 이후에 모든 것이 작동하는지 확인할 수 있습니다

고양이 / sys / kernel / debug / dri / 64 / radeon_pm_info

참고 : 파일 것을 @ luca992 뾰족한 밖으로 radeon_pm_info이 다른 디렉토리에있을 수 있습니다 (예에서 / SYS / 커널 / 디버그 / DRI / 1 / 대신 DRI / 64 / 중). 모든 단계를 올바르게 수행했다고 확신하는 경우 상황에 맞는지 확인할 수 있습니다.

다음과 같이 보일 것입니다 :

uvd    vclk: 0 dclk: 0
power level 0    sclk: 22000 mclk: 25000 vddc: 900

/etc/rc.local 을 열고 다음 줄을 추가하여 DPM을 추가로 구성 할 수 있습니다 .

echo parameter > /sys/class/drm/card0/device/power_dpm_state

어디에서 "매개 변수" 가 될 수 있습니다

  • 배터리 ( 배터리 에서 최적의 작동을 목표로하는 일련의 성능 수준)
  • 균형 (일일 최적의 사용을 목표로하는 일련의 성능 수준)
  • 성능 (최고의 GPU 성능을 목표로하는 일련의 성능 수준)

출처 : http://www.botchco.com/agd5f/?p=57


1
내 노트북의 배터리 수명은 이제 독점 드라이버와 마찬가지로 좋습니다. 또한 더 무거운 부하에서 더 빠른 속도로 다시 클럭킹 할 수있는 부작용으로 인해 성능이 약간 향상됩니다. 결과에 깊은 인상을 받았습니다!
Gladen

당신이 얻는다면 command not found: glxinfo. 그런 다음 설치되지 않습니다. 설치하려면를 수행하십시오 sudo apt-get install mesa-utils.
meshy

설치해야하는 apt 패키지의 이름은 무엇입니까?
Entea

"지원되는 그래픽 카드와 함께이 릴리스를 실행하는 경우이 기능을 사용하기 위해 아무 것도 할 필요가 없습니다." – 기본 설정이 '밸런스'인 경우를 제외하고 전력 소비를 최소화하려면 '배터리'로 전환 할 수 있습니다.
otus

15.04에서 (Radeon HD 4850) /sys/class/drm/card0/device/power_method은 커널 명령 줄에서 활성화하지 profile않으면 수락 dynamic하지 않습니다 .
Sam Brightman

6

자, 이미 커널 3.11-GIT을 가지고 있고 r6xx-SI 또는 최신 ATI 카드를 가지고 있다고 가정합니다. 그런 radeom.dpm=1 다음 커널 모듈 매개 변수 로 추가하기 만하면 DPM을 활성화해야합니다.

/etc/default/grub파일 쓰기 에서 GRUB 매개 변수에있을 수 있습니다.

GRUB_CMDLINE_LINUX_DEFAULT="quiet radeon.dpm=1"
sudo update-grub

또는 디렉토리 .conf아래 의 파일에서 /etc/modprobe:

sudo su -
touch /etc/modprobe.d/radeon-dpm.conf
echo options radeon dpm=1 > /etc/modprobe.d/radeon-dpm.conf 
cat /etc/modprobe.d/radeon-dpm.conf 
# will output "options radeon dpm=1"

출처에서 인용 :

AMD Radeon 드라이버는 마침내 동적 전원 관리를 지원합니다! Radeon GPU의 경우 코어 클록 및 메모리 클록은 부하에 따라 전압과 함께 동적으로 조정되며 (다중 모니터 구성에 적용) PowerPlay에서 제공하는 기능 및 AMD Catalyst 드라이버의 기능과 거의 동일합니다. 이는 오픈 소스 Radeon Linux 드라이버를 사용할 때 전원 / 배터리를 절약하고 부팅 주파수가 정격 주파수보다 낮은 최신 GPU에 더 나은 성능을 제공하는 데 큰 도움이됩니다. 이 지원은 Radeon HD 2000 (R600) GPU로 돌아가지만 현재 기본적으로 활성화되어 있지 않지만 radeon.dpm = 1을 설정해야합니다 .

출처 :


잊지 마십시오 : 'GRUB_CMDLINE_LINUX_DEFAULT = "quiet radeon.dpm = 1"을 수행 한 후'sudo update-grub '
Frank

친구, 이것이 Manjaro에서 ATI HD 4890 그래픽 카드를 수정하는 데 얼마나 도움이되었는지 전혀 모릅니다. 감사합니다.
TheFrack

1

tlp가 의도를 충족시키는 경우 :

sudo add-apt-repository ppa : linrunner / tlp

sudo apt-get 업데이트

sudo apt-get 설치 tlp tlp-rdw

씽크 패드의 경우 :

sudo apt-get 설치 tp-smapi-dkms acpi-call-tools

잘못되지 않은 경우-tlp는 커널 버전에 즉시 의존하지 않습니다-하드웨어에 더 의존합니다. 커널 3.11과 커널 3.10 사이에는 큰 차이가 없습니다.

phoronix 기사에는 커널 3.11의 새로운 변경 사항이 나와 있습니다.

http://www.phoronix.com/scan.php?page=news_item&px=MTQwODk

그러나 3.11에서는 일반적으로 전원 관리에 대한 변경 사항이 없습니다.

Radeon의 동적 전원 관리 변경 사항은 그래픽 카드의 전원 공급 장치 지원에만 영향을 미칩니다.

설치 후 tlp는 다음으로 시작합니다.

sudo tlp 시작


1
답변 주셔서 감사합니다! 그러나 그것은 내가 의미하는 바가 아닙니다. Phoronix에 대한이 기사에서 읽을 수 있듯이 실제로 전원 관리가 있습니다. phoronix.com/scan.php?page=news_item&px=MTM5NjE
Gladen

1

Gladen의 답변 외에도 dpm이 다른 사람들을 실망시키기 위해 노력하고 있음을 확인하는 추가 노력을 기울일 것이라고 생각했습니다.

나의 경우에는

cat /sys/kernel/debug/dri/64/radeon_pm_info

존재하지 않으므로 dpm이 작동하지 않는다고 생각했습니다.

그러나 분명히 그 파일은 다른 폴더에 있습니다.

cat /sys/kernel/debug/dri/65/radeon_pm_info

또는

cat /sys/kernel/debug/dri/1/radeon_pm_info

존재하고 동일한 정보를 나열합니다.


그것은 지금/sys/kernel/debug/dri/0/amdgpu_pm_info
brauliobo

0

@Gladen의 답변에 이어 나는

echo parameter > /sys/class/drm/card0/device/power_dpm_state

작동하지 않았다. 빠른는 ls -l /sys/class/drm/card0 이산 카드 통합 카드 및 card1을 말한다 저를 보여 주었다. 따라서 card1에서 다음이 작동합니다.

$ sudo -i

# cat /sys/class/drm/card1/device/power_dpm_state
balanced
# cat /sys/class/drm/card1/device/power_dpm_force_performance_level  
auto
# cat /sys/kernel/debug/dri/1/radeon_pm_info
uvd    vclk: 0 dclk: 0
power level 0    sclk: 15700 mclk: 20000 vddc: 900 vddci: 0
#
# echo "battery" > /sys/class/drm/card1/device/power_dpm_state
# cat /sys/kernel/debug/dri/1/radeon_pm_info
uvd    vclk: 0 dclk: 0
power level 0    sclk: 15700 mclk: 20000 vddc: 900 vddci: 0
#
# echo "low" > /sys/class/drm/card1/device/power_dpm_force_performance_level  
# cat /sys/kernel/debug/dri/1/radeon_pm_info
uvd    vclk: 0 dclk: 0
power level 0    sclk: 15700 mclk: 20000 vddc: 900 vddci: 0
# echo "performance" > /sys/class/drm/card1/device/power_dpm_state
# cat /sys/kernel/debug/dri/1/radeon_pm_info
uvd    vclk: 0 dclk: 0
power level 0    sclk: 15700 mclk: 20000 vddc: 900 vddci: 0
# echo "high" > /sys/class/drm/card1/device/power_dpm_force_performance_level  
-bash: echo: write error: Invalid argument
# # Not sure why the above happened!?
#
# cat /sys/kernel/debug/dri/1/radeon_pm_info
uvd    vclk: 0 dclk: 0
power level 2    sclk: 75000 mclk: 80000 vddc: 1120 vddci: 0
# echo "high" > /sys/class/drm/card1/device/power_dpm_force_performance_level  
#
# echo "battery" > /sys/class/drm/card1/device/power_dpm_state
# cat /sys/kernel/debug/dri/1/radeon_pm_info
uvd    vclk: 0 dclk: 0
power level 0    sclk: 15700 mclk: 20000 vddc: 900 vddci: 0
# 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.