13장. RHEL for Real Time의 타이머를 사용하여 스케줄링 대기 시간 측정
rtla- 툴은 타이머 추적기를 위한 인터페이스입니다. timerlat 타이머 모음 추적기는 실시간 스레드의 레이닝 대기 시간 소스를 찾습니다. 타이머 내역 추적기는 실시간 우선 순위를 사용하여 CPU당 커널 스레드를 생성하고 이러한 스레드는 주기적인 타이머를 설정하여 잠자기 상태로 돌아갑니다. 슬림에서 타이머는 정보를 찾아서 수집하며 운영 체제 타이머 대기 시간을 디버깅하는 데 유용합니다. timerlat 추적기에서는 출력을 생성하고 모든 활성화 시 다음 두 행을 출력합니다.
-
타이머 내역 추적기에서는 타이머 인터럽트 요청(IRQ) 처리기에서 표시되는 타이머 대기 시간을 주기적으로 출력합니다. 스레드 활성화 전에hardirq컨텍스트에 표시되는 첫 번째 출력입니다. -
두 번째 출력은 스레드의 타이머 대기 시간입니다.
ACTIVATION ID필드는 해당 스레드 실행에 대한 인터럽트 요청(IRQ) 성능을 표시합니다.
13.1. 스케줄링 대기 시간을 측정하도록 타이머lat 추적 프로그램 구성 링크 복사링크가 클립보드에 복사되었습니다!
추적 시스템의 curret_tracer 파일에 추적기를 구성할 수 있습니다. timerlat 을 추가하여 타이머current_tracer 파일은 일반적으로 /sys/kernel/tracing 디렉터리에 마운트됩니다. 타이머 내역 추적기는 인터럽트 요청(IRQ)을 측정하고 스레드 대기 시간이 100 마이크로초를 초과하면 분석을 위해 추적 출력을 저장합니다.
프로세스
현재 추적기를 나열합니다.
# cat /sys/kernel/tracing/current_tracer nopno operations(nop)는 기본 추적기입니다.추적 시스템의
current_tracer파일에timerlat추적기를 추가합니다.# cd /sys/kernel/tracing/ # echo timerlat > current_tracer추적 출력을 생성합니다.
# cat trace # tracer: timerlat
검증
다음 명령을 입력하여
타이머가 현재 추적기로 활성화되어 있는지 확인합니다.# cat /sys/kernel/tracing/current_tracer timerlat