Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4장. tuna

Tuna 툴을 사용하여 스케줄러 튜닝 가능 항목을 조정하고 스레드 우선 순위, IRQ 처리기를 조정하며 CPU 코어와 소켓을 분리할 수 있습니다. Tuna는 튜닝 작업 수행의 복잡성을 줄이는 것을 목표로 합니다.
tuna 패키지를 설치한 후 인수 없이 tuna 명령을 사용하여 Tuna 그래픽 사용자 인터페이스(GUI)를 시작합니다. tuna -h 명령을 사용하여 사용 가능한 CLI(명령줄 인터페이스) 옵션을 표시합니다. tuna(8) 도움말 페이지는 작업과 수정자 옵션을 구분합니다.
Tuna GUI 및 CLI는 동등한 기능을 제공합니다. GUI는 문제를 식별하는 데 도움이 되도록 한 화면에 CPU 토폴로지를 표시합니다. Tuna GUI를 사용하면 실행 중인 스레드를 변경하고 변경 결과를 즉시 확인할 수 있습니다. CLI에서 Tuna는 여러 명령줄 매개 변수를 수락하고 순차적으로 처리합니다. 애플리케이션 초기화 스크립트에서 이러한 명령을 구성 명령으로 사용할 수 있습니다.
The Monitoring tab of the Tuna GUI
Tuna GUI의 모니터링 탭
중요
tuna --save=filename 명령을 설명 파일 이름과 함께 사용하여 현재 구성을 저장합니다. 이 명령은 Tuna가 변경할 수 있는 모든 옵션을 저장하지 는 않지만 커널 스레드 변경 사항만 저장합니다. 변경 시 현재 실행되지 않는 프로세스는 저장되지 않습니다.

4.1. Tuna를 사용하여 시스템 검토

변경을 수행하기 전에 Tuna를 사용하여 현재 시스템에서 수행되는 작업을 표시할 수 있습니다.
현재 정책 및 우선순위를 보려면 tuna --show_threads 명령을 사용합니다.
# tuna --show_threads
		    thread
pid   SCHED_ rtpri affinity             cmd
1      OTHER     0      0,1            init
2       FIFO    99        0     migration/0
3      OTHER     0        0     ksoftirqd/0
4       FIFO    99        0      watchdog/0
PID에 해당하거나 명령 이름과 일치하는 특정 스레드만 표시하려면 --show_threads 앞에 --threads 옵션을 추가합니다.
# tuna --threads=pid_or_cmd_list --show_threads
pid_or_cmd_list 인수는 쉼표로 구분된 PID 또는 명령 이름 패턴 목록입니다.
현재 인터럽트 요청(IRQ) 및 선호도를 보려면 tuna --show_irqs 명령을 사용합니다.
# tuna --show_irqs
# users            affinity
0 timer                   0
1 i8042                   0
7 parport0                0
IRQ 번호 또는 IRQ 사용자 이름과 일치하는 특정 인터럽트 요청만 표시하려면 --show_irqs 앞에 --irqs 옵션을 추가합니다.
# tuna --irqs=number_or_user_list --show_irqs
number_or_user_list 인수는 쉼표로 구분된 IRQ 번호 또는 사용자 이름 패턴 목록입니다.