웹사이트 검색

PowerTOP - Linux의 전력 소비 분석 및 관리


특히 랩톱을 사용하는 좋은 Linux 시스템의 가장 중요한 특징 중 하나는 배터리 수명 연장 측면에서 전원 관리입니다.

Linux에는 배터리 성능을 모니터링하고 추적하는 데 도움이 되는 유틸리티가 있지만, 우리 중 많은 사람들이 여전히 전력 소비를 관리하고 배터리 수명을 향상시키기 위해 올바른 전원 설정을 얻는 데 어려움을 겪고 있습니다.

이 기사에서는 Linux 시스템에서 배터리 전원을 관리하기 위해 적절한 시스템 설정을 얻는 데 도움이 되는 PowerTOP이라는 Linux 유틸리티를 살펴보겠습니다.

파워탑이란 무엇인가요?

PowerTOPIntel에서 개발한 터미널 기반 진단 도구로, Linux 시스템이 전원에 연결되어 있지 않을 때 Linux 시스템에서 실행되는 프로그램의 전원 사용량을 모니터링하는 데 도움이 됩니다.

PowerTOP의 중요한 기능은 사용자가 다양한 전원 관리 설정을 시험해 볼 수 있는 대화형 모드를 제공한다는 것입니다.

요구사항

PowerTOP에는 다음 구성 요소가 필요합니다.

  • C++, g++, libstdc++, autoconf, automake 등의 개발 도구 libtool.
  • 위 항목 외에도 pciutils-devel, ncurses-devellibnl-devel 구성 요소도 필요합니다.
  • 커널 버전 => 2.6.38

Linux에 Powertop을 설치하는 방법

PowerTOP은 특정 Linux 배포판에 대한 해당 패키지 관리자를 사용하여 기본 시스템 저장소에서 쉽게 설치할 수 있습니다.

sudo apt install powertop         [On Debian, Ubuntu and Mint]
sudo yum install powertop         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/powertop  [On Gentoo Linux]
sudo apk add powertop             [On Alpine Linux]
sudo pacman -S powertop           [On Arch Linux]
sudo zypper install powertop      [On OpenSUSE]    
sudo pkg install powertop         [On FreeBSD]

중요: 기본 시스템 저장소에서 Powertop을 설치하면 이전 버전이 설치됩니다.

Powertop의 최신 버전(예: 2022년 9월 29일에 출시된 v2.15)을 설치하려면 해당 버전을 빌드하고 소스에서 설치해야 합니다. , 이를 위해서는 시스템에 다음 종속성이 설치되어 있어야 합니다.

------------------- On Debian based Systems -------------------
sudo apt install build-essential ncurses-dev libnl-dev pciutils-dev libpci-dev libtool
------------------- On RedHat based Systems -------------------
sudo dnf install gcc-c++ ncurses-devel libnl-devel pciutils-devel libtool

위의 필수 패키지를 모두 설치한 후 이제 PowerTop의 최신 버전을 다운로드하고 제안된 대로 설치해야 합니다.

wget https://github.com/fenrus75/powertop/releases/download/v2.15/powertop.tar.gz
tar -xvf powertop.tar.gz
cd powertop/
./configure
sudo make && make install

Linux에서 PowerTop을 어떻게 사용합니까?

이 도구를 사용하려면 Powertop이 애플리케이션의 전력 사용량을 측정하는 데 필요한 모든 정보를 시스템 하드웨어에서 직접 수집하므로 루트 권한이 필요합니다.

시스템에 미치는 영향을 확인하려면 노트북 배터리 전원으로 사용해 보십시오. 장치, 프로세스, 시스템 타이머, 시스템 타이머, 커널 작동인터럽트.

PowerTop 옵션 및 사용법 이해

대화형 모드 없이 조정 가능한 모든 옵션을 최상의 설정으로 설정하려면 --auto-tune 옵션을 사용하세요.

보정 모드에서 실행하려면 --calibrate 옵션을 사용하세요. 랩탑 배터리로 Powertop을 실행하면 시스템에서 실행 중인 프로세스뿐만 아니라 전력 소비도 추적하고 충분한 전력 측정을 얻은 후 전력 추정치를 보고합니다.

그런 다음 이 옵션을 사용하면 보다 적절한 추정치를 얻고 다양한 디스플레이 수준 및 작업 부하를 통해 보정 주기를 구현할 수 있습니다.

디버그 모드에서 실행하려면 --debug 옵션을 사용하세요.

--csv=filename을 사용하여 데이터 분석을 위한 보고서를 생성할 수도 있습니다. 생성된 보고서는 CSV 보고서라고 하며, 파일 이름을 직접 입력하지 않으면 기본 이름인 powertop.csv가 사용됩니다.

html 보고서 파일을 생성하려면 --html=filename 옵션을 사용하세요. --time=seconds를 사용하여 보고서를 생성할 수 있는 시간(초)을 지정할 수 있습니다.

--workload=workload_filename을 사용하여 보고서를 생성하기 전에 교정의 일부로 실행할 워크로드 파일을 지정할 수 있습니다.

도움말 메시지를 표시하려면 --help 옵션을 사용하거나 맨페이지를 확인하세요.

--iteration 옵션을 사용하여 테스트를 실행해야 하는 횟수를 지정합니다.

예제를 통한 PowerTop 사용법

위 옵션 없이 Powertop을 실행하면 아래 출력과 같이 대화형 모드로 시작됩니다.

powertop
개요 화면

이 디스플레이 화면을 사용하면 CPU에 가장 자주 절전 모드 해제를 보내거나 시스템에서 가장 많은 전원을 사용하는 시스템 구성 요소 목록을 볼 수 있습니다.

유휴 상태 통계 화면

프로세서 C 상태에 대한 다양한 정보를 표시합니다.

빈도 통계 화면

이 화면에는 CPU의 절전 모드 해제 빈도가 표시됩니다.

장치 통계 화면

개요 표시 화면과 유사한 정보를 제공하지만 장치에만 해당됩니다.

튜너블 화면

이는 좋은 전력 소비를 위해 시스템을 최적화하기 위한 제안을 제공합니다.

위 출력에서 볼 수 있듯이 다양한 디스플레이 화면을 사용할 수 있으며 화면 간에 전환하려면 TabShift+Tab 키를 사용할 수 있습니다. 화면 하단에 표시된 대로 Esc 키를 눌러 전원 상단을 종료합니다.

시스템이 초당 깨어나는 횟수를 표시하며, 장치 통계 표시 화면을 볼 때 다양한 하드웨어 구성 요소 및 드라이버의 전력 사용량 통계를 보여줍니다.

배터리 전력을 최대화하려면 시스템 절전 모드 해제를 최소화해야 합니다. 이를 위해 튜너블 디스플레이 화면을 사용할 수 있습니다.

"나쁨"은 전력을 절약하지는 않지만 시스템 성능에는 좋을 수 있는 설정을 나타냅니다.

그런 다음 '좋음'은 절전 설정을 식별합니다. 다른 설정으로 전환하려면 튜너블에서 [Enter] 키를 누르세요.

아래 예는 --calibrate 옵션을 사용할 때의 출력을 보여줍니다.

powertop --calibrate

교정 주기가 끝나면 전원 상단에 아래와 같은 작업 요약이 포함된 개요 화면이 표시됩니다.

PowerTop CSV 보고서 생성 중

다음 예에서는 20초 동안 CSV 보고서를 생성하는 방법을 보여줍니다.

powertop --csv=powertop_report.txt --time=20s

이제 cat 명령을 사용하여 CSV 보고서를 살펴보겠습니다.

cat powertop_report.csv

PowerTop HTML 보고서 생성

다음과 같이 html 보고서를 생성할 수 있습니다. html 파일 확장자는 파일 이름에 자동으로 추가됩니다.

powertop --html=powertop

샘플 HTML 보고서 파일은 브라우저에서 볼 수 있습니다.

이 도구에는 최적의 절전을 위해 모든 튜너블을 자동으로 "Good"으로 설정하는 데 도움이 되는 데몬 서비스가 있으며 다음과 같이 사용할 수 있습니다.

systmctl start powertop.service

부팅 시 데몬 서비스가 시작되도록 하려면 다음 명령을 실행합니다.

systemctl enable powertop.service
요약

특정 튜너블은 데이터 손실이나 이상한 시스템 하드웨어 동작의 위험을 초래하므로 데몬 서비스를 사용할 때 주의가 필요합니다. 이는 데이터 변경 사항을 실제 디스크에 쓰기 전에 시스템이 기다리는 시간에 영향을 미치는 "VM 쓰기 저장 시간 초과" 설정에서 분명하게 나타납니다.

시스템의 전원이 모두 꺼지면 지난 몇 초 동안 데이터에 적용된 모든 변경 사항이 손실될 위험이 있습니다. 따라서 전력 절약과 데이터 보안 중에서 선택해야 합니다.

일정 기간 동안 이 도구를 사용하고 배터리 성능을 관찰해 보십시오. 댓글을 게시하여 다른 유사한 도구에 대해 알려주거나 Powertop 사용 및 발생한 오류에 대한 정보를 추가할 수 있습니다.

그러한 가이드를 더 많이 얻으려면 항상 Tecmint에 연결되어 있어야 한다는 것을 기억하십시오.