it-swarm-ko.com

Unix / Linux에서로드 평균은 무엇을 의미합니까?

uptime를 실행하면 다음과 같은 결과가 나타납니다.

10:50:30 up 366 days, 23:27,  1 user,  load average: 1.27, 2.06, 1.54

결국 그 숫자는 무엇을 의미합니까? 매뉴얼 페이지에 "최근 1, 5, 15 분 동안의 시스템로드 평균"이 표시됩니다. 그러나 규모는 무엇입니까? 1.27이 높습니까? 낮은? 시스템에 따라 다릅니 까?

69
John Fouhy

로드 평균은 평균적인 프로세스 수를 나타내는 동시에 CPU주의를 요구하는 게이지입니다.

일반적으로 하나의 프로세스가 100 %로 실행 중이고 영원 토록 그대로 유지되는 경우 모든 값이 '1'에 도달 할 것으로 예상 할 수 있습니다.

일반적으로 이는 컨텍스트 전환으로 인한 손실없이 얻을 수있는만큼 효율적인 컴퓨팅입니다.

그러나 최신 멀티 태스킹 OS에는 CPU주의가 필요한 것이 하나 이상 있으므로 단일 프로세스에서로드가 적당 할 경우로드 평균은 0.8에서 2 사이 여야합니다.

하나의 논리 프로세서 만 있음에도 불구하고 make -j 60로 커널을 작성하는 등 미친 짓을하기로 결정하면로드 평균이 60을 향해 돌진하고 컴퓨터가 당신에게 무용지물이됩니다 (컨텍스트 전환으로 인한 사망) .

또한이 지표는 코어/CPU 수에 관계없이 적용됩니다. 2 코어 시스템의 경우 전체 코어를 소비하는 하나의 프로세스를 실행하면 (다른 유휴 상태)로드 평균 1.0이 발생합니다. 시스템의로드 방법을 결정하려면 코어 수를 알고 나눗셈을 직접 수행해야합니다.

60
Kent Fredric

남자 5 proc :

/ proc/loadavg이 파일의 처음 세 필드는 실행 큐 (상태 R)의 작업 수를 제공하거나 1, 5 및 15 분 동안 평균 디스크 I/O (상태 D)를 기다리는로드 평균 수치입니다. . 가동 시간 (1) 및 기타 프로그램에서 제공 한로드 평균 수와 동일합니다.

9
fho

일반적으로 특정 시간에 활성 프로세스 수를 측정하지만 일부 시스템에서는이를 계산하는 데 사용되는 메트릭이 다릅니다. 내가 찾은 유일한 기사는 this one 입니다.

3
John T

코스의 참고 문헌을 인용합니다.

하중 평균은 주어진 기간 동안의 하중 수의 평균입니다. 다음과 같은 프로세스를 고려합니다.

  • CPU에서 활발히 실행 중입니다.
  • 실행 가능한 것으로 간주되지만 CPU가 사용 가능할 때까지 기다립니다.
  • 수면 : 즉, 어떤 종류의 리소스 (일반적으로 I/O)를 사용할 수있게되기를 기다리는 중입니다.

나는 부하 평균 해석에 대해 더 인용한다 :

다음 예와 같이 하중 평균은 세 가지 다른 숫자 세트를 사용하여 표시됩니다.

마지막 정보는 시스템의 평균 부하입니다. 시스템이 단일 CPU 시스템이라고 가정하면 0.25는 지난 1 분 동안 평균적으로 시스템이 25 % 활용되었음을 의미합니다. 다음 위치에서 0.12는 지난 5 분 동안 평균적으로 시스템이 12 % 활용되었음을 의미합니다. 최종 위치에서 0.15는 지난 15 분 동안 평균적으로 시스템이 15 % 활용되었음을 의미합니다. 두 번째 위치에서 1.00의 값을 보았을 경우 단일 CPU 시스템이 평균적으로 지난 5 분 동안 100 % 활용되었음을 의미합니다. 시스템을 완전히 사용하려면 좋습니다. 단일 CPU 시스템의 값이 1.00을 초과하면 시스템이 과도하게 사용되었음을 나타냅니다. 사용 가능한 CPU보다 CPU가 필요한 프로세스가 더 많았습니다.

쿼드 CPU 시스템과 같이 CPU가 둘 이상인 경우로드 평균 수를 CPU 수로 나눕니다. 예를 들어, 1 분로드 평균 4.00이 표시되면 시스템은 전체적으로 마지막 1 분 동안 100 % (4.00/4) 사용 된 것입니다.

단기 증가는 일반적으로 문제가되지 않습니다. 당신이 보는 높은 피크는 새로운 수준이 아닌 활동의 파열 일 가능성이 높습니다. 예를 들어, 시작할 때 많은 프로세스가 시작된 다음 활동이 정착됩니다. 5 분과 15 분의로드 평균에서 높은 피크가 보이면 우려 할 수 있습니다.

2
Ely