Ubuntu CPU 스파이크 / IO 대기를 진단하는 방법은 무엇입니까?


19

나는 Ubuntu를 사용하고 있으며 매 2 분마다 1 초에서 1 초 동안 응답하지 않습니다. 일반적으로 문제는 아니지만 백 스페이스를 누르거나 코드를 탐색 할 때 코드가 매우 실망 스럽지만 아무 일도 일어나지 않습니다. 문제는 동결이 너무 짧아서 top이 CPU를 스파이 킹하는 것이 무엇인지 보여줄 시간이 없다는 것입니다.

이 성능 문제를 해결하는 방법을 아는 사람이 있습니까?

편집 : Unity 대신 Gnome Classic (No Effects)으로 로그인을 시도했지만 여전히 매번 정지됩니다.

편집 : CPU 그래프에 실제 스파이크가 표시되지 않는 것 같습니다. 그래서 당신이 옳았 고 문제가되는 CPU 스파이크의 원래 진단이 올바르지 않은 것 같습니다. 이제 IO 대기를 의심합니다. Windows 7 Starter를 실행 한 짧은 몇 주 동안 이런 일이 일어났다는 것을 기억하지 못합니다. 하드웨어가 아닌 것만 믿습니다. Ubuntu 11.10과 함께 Acer Aspire One D257을 사용하고 있습니다.

편집 :의 출력이 dmesg에있다 http://paste.ubuntu.com/1060054/ 및 kern.log는에있다 http://paste.ubuntu.com/1060055/


이 질문은 일반적인 경우 와 특정 질문 모두에서 흥미 롭습니다 .
Rafał Cieślak

1
CPU 그래프를 켜면 CPU 스파이크가 느려지고 있는지 확인할 수 있습니다. I / O는 다른 범인이거나 경우에 따라 네트워크 지연이 발생할 수 있습니다. 현재 어떤 프로그램을 사용하든 상관없이 발생합니까?
David Oneill

훌륭한 지적 데이빗, 내가 할게 나는이 기계에서 Vim과 Firefox 만 사용합니다. 항상 열려 있으며 전경에 관계없이 발생합니다. 처음에는 Vim에서 자동 ctag 생성이라고 생각했지만 해당 섹션을 주석 처리하고 전체 vimrc 파일을 지우면 문제가 계속 발생합니다. 그래프가 실제로 CPU 스파이크인지 IO 대기인지 확인하려고 시도합니다.
Jeff Welling

어떻게 반응이 없습니까? 마우스 포인터가 업데이트를 중지합니까?
AdamKG

지연된 응답에 대해 죄송합니다. 포인터가 멈추는 것 같지만 발생이 중지되었거나 최근에 그다지 알아 채지 못했습니다. 흥미롭게도, 최근에 암호화 된 USB 백업 드라이브를 연결하고 최근에 많이 마운트하여 관련이 있는지 궁금합니다. A) 관련 여부와 B) 이러한 정지 중에 포인터가 응답하지 않는지 확인하기 위해 드라이브를 연결하거나 연결하지 않고 더 많은 테스트를 수행하려고합니다.
Jeff Welling

답변:


12

체크 아웃 할 수있는 두 가지 추가 도구가 있습니다.

이 두 도구에서 원하는 것을 얻지 못하면 OProfile 또는 Sysprof 와 같은 개발자 도구를 사용해야 할 수도 있습니다 .

나열된 모든 도구는 우분투 저장소에서 사용할 수 있습니다

내가들은 바에 따르면 USB를 사용한 관찰과 관련하여 일부 USB 컨트롤러는 특정 하드웨어에서 약간의 비정상적인 동작을 일으켜 인터럽트 폭풍을 일으킬 수 있습니다. USB 인터럽트 스톰을 검색하면 꽤 많은 히트가 발생합니다.


흠, 확실히 인터럽트 폭풍을 조사 할 것이지만,이 시스템에서 USB 장치 사용을 정기적으로 중단 한 후에도 문제가 계속 발생합니다. 많은 시간 동안 나는 (교통) 출근길에 프로그래밍을 할 것입니다.
Jeff Welling

5

나는 몇 년 동안 htop을 사용했고 마침내 CPU 사용률을 숫자와 백분율로 얻는 방법을 찾았습니다.

아이오와 대기 이미지

F2를 누르십시오

"사용 가능한 미터"화살표

CPU 평균 강조

열에 추가 할 F5 또는 F6

"CPU [Bar]"항목으로 화살표

"CPU [Text]"가 표시 될 때까지 F4를 누르십시오.

당신은 또한 IORates를 얻을 수 있습니다

F2-> 열-> 사용 가능

IO_RATE, IO_READ_RATE, IO_WRITE_RATE 추가


2

이를 확인하는 가장 좋은 방법은 top또는 htop 과 같은 명령 줄 응용 프로그램을 사용하는 것 htop 설치입니다.

상단
상단

멈춤
멈춤

그러나 스파이크의 원인이 무엇인지 알 때까지 잠시 동안 지켜봐야 할 것입니다 (실제로 CPU 사용이 급증하고 입출력 대기가 아닌 스파이크 인 경우 모든 경우에 잡힐 수는 없습니다).


1
나는 top에 익숙하지만 htop은 아니지만 htop은 IO 대기를 표시합니까? 출력의 해당 부분을 어떻게 해석합니까? htop 웹 사이트에서 FAQ를 확인했지만 IO 대기에 대해서는 언급하지 않았습니다.
Jeff Welling

@ Jeffefelling : 그것은 afaik하지 않습니다. 그러나 둘 다 CPU 사용량으로 표시합니다.
RolandiXor

I / O 활동에 대한 추가 모니터가 있습니다. iotop이라고합니다 (danjo133s 답변 참조).
FuzzyQ

2

새롭고 매우 유용한 도구는 cpustat 입니다. 시간이 지남에 따라 여러 pid를 모니터링 할 수있는 그래픽 인터페이스가 있습니다.

여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.