3.3. tuna 툴을 사용하여 CPU 튜닝
tuna
툴 명령은 개별 CPU를 대상으로 지정할 수 있습니다. tuna
툴을 사용하면 다음 작업을 수행할 수 있습니다.
CPU 격리
- 지정된 CPU에서 실행되는 모든 작업은 사용 가능한 다음 CPU로 이동합니다. CPU를 격리하면 모든 스레드의 선호도 마스크에서 이 CPU를 제거할 수 없습니다.
CPU 포함
- 지정된 CPU에서 작업을 실행할 수 있습니다.
CPU 복원
- 지정된 CPU를 이전 구성으로 복원합니다.
사전 요구 사항
-
tuna
툴이 설치되어 있습니다. 자세한 내용은 tuna 툴 설치를 참조하십시오.
절차
모든 CPU를 나열하고 명령의 영향을 받을 CPU 목록을 지정합니다.
# ps ax | awk 'BEGIN { ORS="," }{ print $1 }' PID,1,2,3,4,5,6,8,10,11,12,13,14,15,16,17,19
tuna
인터페이스에서 스레드 목록을 표시합니다.# tuna show_threads -t 'thread_list from above cmd'
명령의 영향을 받을 CPU 목록을 지정합니다.
# *tuna [command] --cpus cpu_list *
cpu_list 인수는 쉼표로 구분된 CPU 번호 목록입니다(예:
--cpus 0,2
).현재 cpu_list 에 특정 CPU를 추가하려면 (예:
--cpus +0
)를 사용합니다.시나리오에 따라 다음 작업 중 하나를 수행합니다.
CPU를 분리하려면 다음을 입력합니다.
# tuna isolate --cpus cpu_list
CPU를 포함하려면 다음을 입력합니다.
# tuna include --cpus cpu_list
4개 이상의 프로세서가 있는 시스템을 사용하려면 모든
ssh
스레드가 CPU 0 과 1 과 CPU 2 및 3 에서 모든http
스레드에서 실행되도록 합니다.# tuna move --cpus 0,1 -t ssh* # tuna move --cpus 2,3 -t http\*
검증
현재 구성을 표시하고 변경 사항이 적용되었는지 확인합니다.
# tuna show_threads -t ssh* pid SCHED_ rtpri affinity voluntary nonvoluntary cmd 855 OTHER 0 0,1 23 15 sshd # tuna show_threads -t http\* pid SCHED_ rtpri affinity voluntary nonvoluntary cmd 855 OTHER 0 2,3 23 15 http
추가 리소스
-
/proc/cpuinfo
파일 -
시스템의
tuna(8)
도움말 페이지