CPU 성능은 시스템의 성능. CPU 성능 모니터링은 모든 시스템 내부의 프로세스를 디버그하고, 시스템 리소스를 관리하고, 시스템 결정을 내리고, 실시간으로 시스템을 평가하고 검사하는 데 필수적입니다.
모니터링 및 표시 할 수있는 많은 도구가 있습니다. CPU 성능. 운영 체제에는 이러한 도구가 성능 판독 값을 추출하는 데 사용하는 시스템 호출이 내장되어 있습니다.
이 자습서에서는 Linux 기반 배포판에서 최고의 CPU 사용량 모니터링 도구와 그 사용법을 탐색합니다.
p>
1) Top
top 명령은 시스템에서 실행중인 모든 프로세스의 성능 관련 데이터를 실시간으로 표시합니다. 기본적으로 top 명령은 5 초마다 데이터를 업데이트합니다. 시스템 성능과 관련된 통계 데이터를 보려면 터미널에서 “top”을 입력하십시오.
# top
top 명령의 출력을 수정하려면 다음을 누르십시오.
“P”는 CPU 사용량을 기준으로 정렬합니다.
“I”는 디스플레이에서 유휴 프로세스를 제거하고 다시 되돌리려면 “I”를 다시 누릅니다.
“M”은 메모리 사용량별로 데이터를 정렬합니다.
“S”는 프로세스가 실행 된 기간별로 정렬합니다.
“P”는 CPU 사용량별로 정렬합니다.
“U”는 특정 사용자가 소유 한 프로세스를 봅니다.
“K”는 프로세스를 종료합니다.
“R”은 프로세스를 다시 만듭니다.
2) Iostat
iostat 명령은 CPU 사용률, 장치 사용률 및 네트워크 파일 시스템 사용률을 나열합니다. 이 유틸리티는 마지막 재부팅 이후 시스템의 평균 CPU 사용률을 표시합니다. 옵션없이 다음 명령을 실행하면 세 가지 보고서가 모두 표시됩니다.
# iostat
개별 보고서를 나열하려면 CPU 사용률에 -c, -d 및 -h 스위치를 사용합니다. , 장치 활용 및 네트워크 파일 시스템 활용. 다음 명령은 CPU 사용률을 사용자 프로세스, 시스템 프로세스, I / O 대기 및 유휴 시간으로 나눕니다.
# iostat -c
다음 명령은 확장 된 통계를 표시합니다 ( -x), 각 보고서가 CPU 사용률 (-c)에 대해 표시되어야하는 횟수 (-t)입니다.
# iostat -xtc 5 2
3) Vmstat
vmstat 명령은 시스템 프로세스, 메모리, 스왑, I / O 및 CPU 성능에 대한 통계를 표시합니다. 통계를 표시하기 위해 명령이 마지막으로 실행 된 시점부터 현재까지 데이터가 수집됩니다. 명령이 실행되지 않는 경우 데이터는 마지막 재부팅부터 현재 시간까지입니다.
여러 CPU 시스템에서 vmstat는 출력에 대한 CPU 수의 평균을 계산합니다. vmstat 명령은 top 명령과 같이 출력을 업데이트합니다.
다음 명령은 인터럽트가 발생할 때까지 5 초마다 보고서를 업데이트합니다.
# vmstat 5
다음 명령은 5 초마다 업데이트되는 데이터를 표시하고 값은 1 초마다 재 측정 및보고됩니다.
# vmstat 1 5
The 첫 번째 줄은 컴퓨터가 마지막으로 재부팅 된 이후의 평균 값을 인쇄합니다. 나머지 줄은 각각의 현재 값을 표시합니다. 일반 사용자는 vmstat 명령을 실행할 수 있습니다.
4) Mpstat
Mpstat는 Linux에서 sysstat 패키지의 일부입니다. mpstat 명령은 사용 가능한 각 프로세서의 활동에 대한 표준 출력에 기록하며 프로세서 0이 첫 번째 프로세서입니다. 활동을 선택하지 않은 경우 기본 보고서는 CPU 사용률 보고서입니다.
옵션이없는 mpstat는 모든 CPU의 글로벌 평균 활동을 표시합니다.
# mpstat
mpstat with -p 옵션 및 “ALL”은 모든 CPU에 대한 통계를 0부터 하나씩 나열합니다.
# mpstat -P ALL
다음 명령은 2 초 후 각각 4 번 동안 평균 CPU 사용량을 나열합니다.
# mpstat -P ALL 2 4
5) Sar
sar는 다음을위한 성능 모니터링 도구입니다. 성능 데이터를 수집,보기 및 기록하고 시스템이 항상 수행하는 작업을 나열 할 수 있습니다. Sar 명령은 보고서를 생성하여 시스템 관리자에게 이메일로 보낼 수 있습니다. sar에서보고하는 통계에는 I / O 전송률, 페이징 활동, 프로세스 관련 활동, 인터럽트, 네트워크 활동, 메모리 및 스왑 공간 사용률, CPU 사용률, 커널 활동 및 TTY 통계 등이 포함됩니다. 옵션없이 sar를 실행하고 출력을 확인하십시오. 10 분마다의 기본 출력 목록 통계 및 최종 평균입니다.
# sar
2 초 간격으로 CPU 통계를 3 번 표시합니다.
# sar 2 3
다음 명령은 2 초마다 총 3 번 모든 CPU의 누적 실시간 CPU 사용량을 표시합니다.
# sar -u 2 3
“-P ALL”옵션은 모든 개별 Core에 대한 통계를 표시합니다. 시스템에 4 개의 코어가있는 경우 “CPU 열”에는 해당 CPU 코어 번호를 나타내는 숫자 0, 1, 2, 3이 포함됩니다.”2 3″옵션은 3 번 동안 2 초마다 통계를 표시합니다.
# sar -P ALL 2 3
“-P 2″옵션은 2 초마다 세 번째 코어에 대한 통계를 표시합니다. 3 회.
# sar -P 2 2 3
6) CoreFreq
CoreFreq는 Intel 아키텍처가있는 64 비트 프로세서 용으로 설계된 CPU 성능 모니터링 소프트웨어입니다. Atom, Core2, Nehalem, SandyBridge 및 superior, AMD 제품군. CoreFreq는 높은 정밀도로 CPU 데이터를 검색하기위한 프레임 워크를 제공합니다. 커널 모듈, 데몬 및 사용자 영역 명령 줄 인터페이스 (CLI)는 Corefreq의 세 부분입니다. 커널 모듈은 호스트에 대한 전체 액세스 권한을 갖습니다. 낮은 수준의 데이터를 수집하는 것은 그 책임입니다. userland 데몬은 데이터를 수집합니다. 데몬을 실행하려면 루트 사용자 여야합니다. 마지막으로 CoreFreq는 사람이 읽을 수있는 좋은 형식으로 데이터를보고하는 터미널 인터페이스와 함께 제공됩니다. 해당 CLI 도구는 일반적인 프로세스이며 최종 사용자가 사용할 수 있습니다.
전제 조건
i) CoreFreq는 하위 수준 카운터를 사용하므로 먼저 /를 통해 NMI 감시를 비활성화해야합니다. etc / default / grub. / etc / default / grub을 편집하고 “nmi_watchdog = 0″커널 명령 줄 인수를 추가 한 다음 update-grub을 실행합니다.
# vi /etc/default/grub
.................... .................... GRUB_CMDLINE_LINUX="nmi_watchdog=0" .................... ....................
# update-grub && reboot
ii) 가상화 없음. VM은 CoreFreq 드라이버가 사용하는 레지스터에 대한 액세스를 제공하지 않습니다.
CoreFreq 설치
insmod를 사용하여 커널 모듈 설치
# sudo insmod corefreqk.ko
lsmod를 사용하여 CoreFreq 모듈 나열
# lsmod | grep corefreq corefreqk 49152 0
dmesg 명령의 출력은 CoreFreq가 프로세서에 의해 인식되었음을 보여줍니다.
# sudo dmesg | grep CoreFreq CoreFreq: Processor Architecture CPU
CoreFreq 데몬 시작
# sudo ./corefreqd
read more