CPU 선호도를 전역적으로 설정

CPU 선호도를 전역적으로 설정

taskset내가 의도적으로 설정한 프로세스를 제외한 모든 프로세스를 만들 거나 특정 코어/메모리만 사용 하는 방법이 있습니까 numactl(각 프로세스의 모든 스레드를 반복하여 직접 설정하지 않고)?

자세한 내용: 각각 4개 코어/8개 스레드와 총 256GB RAM을 갖춘 2개의 물리적 CPU 칩이 있습니다. 메모리는 두 CPU 메모리 버스 사이에 고르지 않게 분배됩니다. 나는 메모리가 훨씬 적은 CPU를 범용 CPU로 사용하고 대부분의 프로그램(예: 백그라운드 작업)이 해당 CPU와 해당 메모리에서 실행되기를 원합니다. 그런 다음 대부분의 메모리를 보유한 CPU에서 특수 작업을 실행하면서 속도를 측정하고 CPU 경합, NUMA 또는 이와 유사한 문제가 발생하지 않기를 바랍니다.

답변1

이는 systemd 구성을 수정하여 달성할 수 있습니다. 먼저 다음을 추가하여 기본 연결 설정을 변경합니다 /etc/systemd/system.conf.

[Manager]
CPUAffinity=1

그런 다음 장치에서 선호도를 지우고 원하는 CPU로 재설정하세요.

[Exec]
CPUAffinity=
CPUAffinity=2-4

관련 정보