ARM 멀티 코어 컴퓨터의 상위 명령 출력 이해

ARM 멀티 코어 컴퓨터의 상위 명령 출력 이해

topNew RPi3의 CPU 성능과 메모리 사용량을 확인하려면 브라우저 실행 중 명령어를 실행하세요 .

이제 하나가 생겼으니 4× ARM Cortex-A53, 1.2GHz결과를 어떻게 읽어야 할까요?

$ top

Mem: 327132K used, 620864K free, 29124K shrd, 5800K buff, 164492K cached
CPU:  80% usr   8% sys   0% nic   2% idle   0% io   0% irq   9% sirq
...
  • 프로세스의 80%가 최적화되지 않았습니다
  • 8% 시스템 프로세스
  • 2% 유휴 상태인가요?

    제가 이해한 바에 따르면 80%라고 하면 코어가 4개이므로 전체 용량 400%의 80%를 의미하는 것입니다. 그렇죠?

    top이는 명령이 올바르게 계산되지 않는다는 의미입니까 idle?

    각 코어의 사용량/유휴 비율을 확인하는 방법은 무엇입니까?

내 Linux(RPi3용 Yocto를 사용하여 빌드된 이미지)

root@raspberrypi3:~# uname -a
Linux raspberrypi3 4.1.18 #1 SMP Thu Mar 17 10:26:07 CET 2016 armv7l GNU/Linux

root@raspberrypi3:~# lsb_release -a
LSB Version:    core-4.1-noarch:core-4.1-arm
Distributor ID: poky
Description:    Poky (Yocto Project Reference Distro) 1.8.1
Release:    1.8.1
Codename:   fido

top버전

root@raspberrypi3:~# top --version
top: unrecognized option '--version'
BusyBox v1.23.1 (2015-10-19 16:33:36 CEST) multi-call binary.

Usage: top [-b] [-nCOUNT] [-dSECONDS]

답변1

버전에 따라 topCPU 사용량 요약은 100%를 사용하여 코어 값을 나타내거나 사용 가능한 총 CPU 양을 나타낼 수 있습니다. 귀하의 출력에 따르면 귀하는 top사용 가능한 총 CPU 시간을 100% 사용하는 BusyBox 버전을 사용하고 있는 것으로 나타납니다. 따라서 CPU는 완전히 바빠서 약 80%의 시간이 계산을 수행하고 약 19%의 시간을 계산에 사용합니다. /오오. 각 프로세스에 대한 항목은 사용 가능한 전체 처리 능력과 관련된 통계도 제공하므로 쿼드 코어 시스템에서 각 스레드의 최대 사용률은 25%입니다.

procps 버전 top(비임베디드 Linux의 버전, Raspbian의 기본값 등)은 다른 규칙을 사용합니다. 전역 CPU 소비의 경우 100%는 전체 CPU의 합계이지만 각 프로세스에 대해 100%는 의미합니다. 하나의 CPU의 가치.

맨 위더 나은 인터페이스를 갖추고 있으며 CPU당 CPU 사용량을 분류합니다. 여기에서 각 CPU의 사용률을 볼 수 있습니다. 단일 프로세스에서 htop은 procps 버전과 마찬가지로 CPU 값을 100%로 계산합니다.

계산이 정확하지는 않지만 샘플링을 기반으로 한다는 점을 명심하세요. (정확한 CPU 사용률 측정 자체는 특히 경쟁이 심한 조건에서 많은 CPU 시간을 소모할 수 있습니다.) 2% 유휴 상태와 완전히 사용 중인 상태 사이에는 큰 차이가 없습니다.

관련 정보