4.3. Tuna를 사용하여 IRQ 조정
시스템에서 현재 실행 중인 IRQ 목록을 보려면 Tuna GUI의 모니터링 탭 또는
/proc/interrpupts
파일을 참조하십시오. tuna --show_irqs 명령을 사용할 수도 있습니다.
명령의 영향을 받을 IRQ 목록을 지정하려면
--irqs
매개변수를 사용합니다.
#
tuna --irqs=irq_list --run=COMMAND
인터럽트를 지정된 CPU로 이동하려면
--move
매개변수를 사용합니다.
#
tuna --irqs=irq_list --cpus=cpu_list --move
irq_list 인수는 쉼표로 구분된 IRQ 번호 또는 사용자 이름 패턴 목록입니다.
cpu_list 인수는 쉼표로 구분된 CPU 번호 목록입니다. 예를 들면 --cpus=0,2 입니다.
예를 들어 이름이
sfc1
로 시작하고 두 개의 CPU에 분배되는 모든 인터럽트를 대상으로 지정하려면 다음을 수행합니다.
#
tuna --irqs=sfc1\* --cpus=7,8 --move --spread
설정한 변경 사항을 확인하려면
--move
매개변수를 사용하여 IRQ를 수정하기 전과 후에 --show_irqs
매개변수를 사용합니다.
#
tuna --irqs=128 --show_irqs # users affinity 128 iwlwifi 0,1,2,3#
tuna --irqs=128 --cpus=3 --move#
tuna --irqs=128 --show_irqs # users affinity 128 iwlwifi 3
이렇게 하면 변경 전후에 선택한 IRQ의 상태를 비교할 수 있습니다.
참고
Tuna GUI를 사용하면 특정 시나리오에서 더 편리합니다. CPU 마스크를 생성하는 여러 단계가 필요하기 때문에 실행할 CPU를 지정하여 IRQ 및 스레드를 이동하는 것은 시간이 오래 걸릴 수 있습니다. Tuna GUI는 프로세스를 자동화합니다. Tuna GUI에서는 스레드와 IRQ를 선택하고 의도한 CPU를 통해 드래그하여 토폴로지를 더 쉽게 변경할 수 있습니다.