Oracle Linux 운영 체제를 사용하여 코어를 활성화하거나 비활성화하려면 이 절차를 수행하십시오. 이 작업은 응용 프로그램 실행 중 필요한 만큼 자주 수행할 수 있습니다.
시작하기 전에
이 작업은 Oracle Linux Unbreakable Enterprise Kernel에서 지원됩니다.
이 작업을 수행하려면 루트 권한이 필요합니다.
탄력적 컴퓨팅을 사용하려면 Intel Speed Step이 필요하며, 이 기능은 BIOS Setup Utility의 Advanced - CPU Power Management Configuration 화면에서 사용 또는 사용 안함으로 설정할 수 있습니다. 이 설정은 기본적으로 사용으로 설정되어 있습니다.
Linux 명령줄에서는 논리적 프로세서가 cpuNN으로 표시됩니다. 여기서 NN은 논리적 프로세서 번호입니다. 예를 들어 논리적 프로세서 18은 cpu18로 표시됩니다.
ls /sys/devices/system/cpu/cpu*/online | wc -l
하이퍼스레딩이 사용으로 설정된 경우 소켓 수 x 36이 반환됩니다.
하이퍼스레딩이 사용 안함으로 설정된 경우 소켓 수 x 18이 반환됩니다.
grep . /sys/devices/system/node*/cpulist
소켓 및 논리적 프로세서 목록이 반환됩니다.
하이퍼스레딩이 사용으로 설정된 경우 소켓당 18개의 프로세서가 두 개의 범위로 반환됩니다.
하이퍼스레딩이 사용 안함으로 설정된 경우 소켓당 18개의 프로세서가 한 개의 범위로 반환됩니다.
다음 예는 하이퍼스레딩이 사용으로 설정된 4 소켓 서버를 보여줍니다.
# grep . /sys/devices/system/node*/cpulist socket 0: 0-17, 72-89 socket 1: 18-35, 90-107 socket 2: 36-53, 108-125 socket 3: 54-71, 126-143
예를 들어 4 소켓 서버의 첫번째 소켓에서 마지막 코어를 비활성화하려면 다음 명령을 사용합니다.
echo 0 > /sys/devices/system/cpu/cpu17/online - 논리적 프로세서 17을 비활성화합니다.
echo 0 > /sys/devices/system/cpu/cpu89/online - 논리적 프로세서 89를 비활성화합니다.
하이퍼스레딩이 사용으로 설정된 경우에만 4 소켓 서버에서 논리적 프로세서 89를 비활성화해야 합니다.
예를 들어 4 소켓 서버의 첫번째 소켓에서 마지막 코어를 활성화하려면 다음 명령을 사용합니다.
echo 1 > /sys/devices/system/cpu/cpu17/online - 논리적 프로세서 17을 활성화합니다.
논리적 프로세서를 활성화하면 코어도 활성화됩니다.
echo 1 > /sys/devices/system/cpu/cpu89/online - 논리적 프로세서 89를 활성화합니다.
하이퍼스레딩이 사용으로 설정된 경우 논리적 프로세서 89만 4 소켓 서버에 있습니다.
다음 예는 하이퍼스레딩을 사용으로 설정하여 4 소켓 서버의 모든 소켓에서 마지막 코어를 비활성화하는 명령을 보여줍니다.
# echo 0 > /sys/devices/system/cpu/cpu17/online # echo 0 > /sys/devices/system/cpu/cpu89/online # echo 0 > /sys/devices/system/cpu/cpu35/online # echo 0 > /sys/devices/system/cpu/cpu107/online # echo 0 > /sys/devices/system/cpu/cpu53/online # echo 0 > /sys/devices/system/cpu/cpu125/online # echo 0 > /sys/devices/system/cpu/cpu71/online # echo 0 > /sys/devices/system/cpu/cpu143/online
다음 예는 이 작업을 반대로 수행하여 앞 예에서 비활성화된 모든 논리적 프로세서와 코어를 다시 활성화하는 방법을 보여줍니다.
# echo 1 > /sys/devices/system/cpu/cpu17/online # echo 1 > /sys/devices/system/cpu/cpu89/online # echo 1 > /sys/devices/system/cpu/cpu35/online # echo 1 > /sys/devices/system/cpu/cpu107/online # echo 1 > /sys/devices/system/cpu/cpu53/online # echo 1 > /sys/devices/system/cpu/cpu125/online # echo 1 > /sys/devices/system/cpu/cpu71/online # echo 1 > /sys/devices/system/cpu/cpu143/online
참조