![Ubuntu의 각 CPU 코어에서 모든 프로세스를 실행하는 방법은 무엇입니까?](https://linux55.com/image/107057/Ubuntu%EC%9D%98%20%EA%B0%81%20CPU%20%EC%BD%94%EC%96%B4%EC%97%90%EC%84%9C%20%EB%AA%A8%EB%93%A0%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%EB%A5%BC%20%EC%8B%A4%ED%96%89%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
저는 CPU 코어가 48개 있는 Ubuntu14.04 서버를 사용하고 있습니다. sar 정보를 보면 하나의 코어가 CPU 사용량이 높다는 것을 알 수 있습니다. 그래서 해당 코어에서 어떤 프로세스가 실행되고 있는지 알고 싶습니다. Ubuntu의 각 CPU 코어에서 모든 프로세스를 실행하려면 어떻게 해야 합니까?
답변1
ps -aeF
다음을 사용하여 이 작업을 수행 C
할 수 있습니다 .
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 2015 ? 00:08:07 /sbin/init
또는 을 사용하여 열을 htop
표시하도록 구성하고 PROCESSOR
,
CPU 선호도를 설정하려면 다음을 사용할 수 있습니다.작업 세트주문하다
답변2
Normal은 top
마지막으로 사용한 CPU도 표시할 수 있습니다.
홈 화면을 보는 동안 을 누르고 아래쪽 화살표를 누른 다음 또는 스페이스바를 사용하여 f
필드 관리 화면에 들어가야 합니다 . 또는 종료를 눌러 홈 화면으로 돌아갑니다.P = Last Used CPU (SMP)
d
q
출력의 가장 오른쪽 P 열이 마음에 들지 않으면 필드 관리 화면에서 P 열을 위로 이동해야 할 수도 있습니다.
답변3
이것이 오래되었다는 것을 인식하십시오. 그러나 ps 명령을 통해 어떤 프로세스가 어떤 코어를 사용하고 있는지 확인하려는 사람들을 위해 원하는 열은 psr입니다. C는 CPU 사용률입니다.
핵심 번호는 0-N입니다. 다음을 통해 핵심 세부정보를 볼 수 있습니다.
cat /proc/cpuinfo
4개의 코어가 있고 4번째 코어를 사용하는 모든 프로세스를 보고 싶다고 가정해 보겠습니다.
CORENUM=3; ps -e -o pid,psr,cpu,cmd | grep -E "^[[:space:]][[:digit:]]+[[:space:]]+${CORENUM}"
위의 명령을 분석해 보세요.
변수 "CORENUM"을 생성하고 "3"(네 번째 코어)으로 설정합니다. 세미콜론으로 명령문을 종료하십시오(여기서 Enter를 누를 수 있음).
다음과 같이 ps 명령을 실행합니다. -e = 모든 프로세스 선택 -o = 사용자 정의 형식. 하나 이상의 쉼표로 구분된 형식 지정자로 구성됩니다. 이는 ps man("man ps") 페이지의 표준 형식 지정자 섹션에서 찾을 수 있습니다.
(슬래시를 사용하여 매뉴얼 페이지에서 검색하십시오).
원래 목록을 보려면 "L" 옵션("-" 제외)을 입력하면 됩니다.
ps L
따라서 여기에서는 사용자 정의 형식에 프로세스 ID, 프로세서, CPU 사용률, 마지막으로 명령이 나열됩니다.
그런 다음 grep으로 파이프되어 -E 옵션을 사용하여 확장 regx를 활성화하여 CORENUM 변수에 저장된 CPU 번호와 관련된 프로세스만 정확하게 출력하도록 시도합니다.