프로세스가 실행중인 CPU 확인


19

Sysinternals의 Process Explorer를 사용하면 프로세스가 실행중인 CPU를 나타내는 데 사용할 수있는 열이 있습니까? 열이 없으면 다른 방법이 있습니까?



3
@DavidPostill-최고의 답변은 프로세스 탐색기의 웹 페이지를 가리 킵니다. 내 질문은 : 프로세스 탐색기 가 주어지면 프로세스가 시작되는 코어를 어떻게 결정합니까?
rory.ap

답변:


47

2005 년 요청 :

Process Explorer에 통합 된 기능에 깊은 인상을 받았지만 주 창에서 각 프로세스 CPU 선호도를 열 토글로 표시하는 옵션을보고 싶습니다.

응답 없음.

2007 년 요청 :

훌륭한 유틸리티에 감사드립니다. 내 요청은 탐색기를 처리하여 CPU 선호도를 표시하는 열 옵션을 추가하는 것입니다. 그게 다야.

응답 없음.

비슷한 논의 2013 년 :

프로세스가 실행중인 코어의 사용량 합계를 표시하는 코어 사용량이라는 새 프로세스 성능보기 열이 있으면 정말 좋습니다.

기본 시놉시스 : 할 수 없습니다.

스레드 는 프로세스가 아니라 처리를 위해 코어로 전송되는 것입니다. 대부분의 최신 프로세스에는 여러 스레드가 있습니다.

프로세스 의 선호도 를 수동으로 설정하면 프로세스의 모든 스레드가 단일 프로세서에 고정되어야합니다. 수동으로 설정 했으므로 어떤 CPU가 켜져 있는지 알아야합니다. ;)

그러나 지정하지 않으면 스레드와 OS가 기본 처리 하드웨어에 의해 제어되며 프로세서 사이를 돌파 할 수없는 속도로 이동합니다. 당신.

아마도이 SU 질문을 확인하십시오.

또한 StackOverflow에서 :

이제 프로그램을 작성한 경우 GetCurrentProcessorNumber 를 사용하면 함수가 호출 된 스레드에서 현재 사용중인 프로세서를보고 할 수 있습니다 .

이를 사용하면 스레드의 프로세서 사용량을 예상 할 수 있습니다. 스레드가 다음 주기로 한주기가 될 위치를 확실하게 알 수 없기 때문에 의도적으로 선호도를 설정하지 않는 한.

더 많은 정보:


3
좋은 답변 ... :)
DavidPostill

@DavidPostill-동의합니다.
rory.ap

구체적인 질문에 대한 답변으로 역사와 그 이유를 이해하고 개념을 이해하는 데 도움이되는 훌륭한 답변입니다.
Smithers 2016 년

1
Linux와 Windows 모두에서 스레드별로 선호도를 설정할 수 있습니다. 그러나 이것은 거의 유용하지 않으므로 거의 수행되지 않으므로 일반 모니터링 프로그램에서 스레드별로 선호도를 표시하는 경우 거의 쓸모가 없습니다. 대부분의 경우 커널이 원하는대로 일정을 잡을 수 있습니다.
Bob

OS는 심지어 GetCurrentProcessorNumber를 호출 한 직후 (그러나 실행을 시작하기 전에) 그리고 다시 리턴 한 직후에 스레드를 다른 프로세서로 전환 할 수 있으므로 호출 시점의 프로세서도 당시의 프로세서도 아닙니다 전화가 돌아옵니다!
gnasher729

8

이 작업은 xperf 추적을 캡처 하고 Windows Performance Toolkit에서 WPA.exe ( Windows Performance Analyzer )로 열어서 수행 할 수 있습니다. 여기에서 열 CPU를 추가하여 프로세스가 실행중인 CPU (코어)를 확인할 수 있습니다.

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


좋은. 각 CPU에서 동일한 프로세스를 나열합니까 (하나 이상을 사용하는 경우)? 캡처 된 xperf 추적을 사용하고 있기 때문에 실시간보고가 아닙니까?
Ƭᴇcʜιᴇ007

@ Ƭᴇcʜιᴇ007 ETW 이벤트는 런타임에 사용할 수도 있습니다. ETL 파일로 작성하는 것은 한 가지 방법 일뿐입니다. 예, 두 CPU를 모두 사용할 때 두 CPU 아래에 프로세스가 나열됩니다.
magicandre1981
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.