검색

35.3. 실시간 커널에서 스레드 중단

download PDF

스레드가 고가용성 임계값보다 긴 CPU 실행 큐에 있고 진행하지 않는 경우 발생합니다. 스레드 중단의 일반적인 원인은 CPU에 바인딩된 Cryostat _FIFO 또는 Cryostat _ RR 과 같은 고정 우선 순위의 폴링 애플리케이션을 실행하는 것입니다. 폴링 애플리케이션은 I/O를 차단하지 않으므로 kworkers 와 같은 다른 스레드가 해당 CPU에서 실행되지 않도록 할 수 있습니다.

스레드 래핑을 줄이기 위한 초기 시도는 실시간 제한으로 호출됩니다. 실시간 제한에서 각 CPU는 비 실시간 작업에 전용 실행 시간의 일부를 갖습니다. 제한의 기본 설정은 실시간 작업에 대해 CPU의 95%를 사용하고 5%는 비실시간 작업을 위해 예약되어 있습니다. 단일 실시간 작업이 있는 경우 결함이 발생하지만 CPU에 할당된 실시간 작업이 여러 개 있는 경우 작동하지 않습니다. 다음을 사용하여 문제를 해결할 수 있습니다.

stalld 메커니즘

stalld 메커니즘은 실시간 제한의 대안이며 일부 제한 결함을 피할 수 있습니다. stalld 는 시스템의 각 스레드 상태를 주기적으로 모니터링하는 데몬이며 실행 큐에 있는 스레드를 실행하지 않고 지정된 시간 동안 실행되는 스레드를 찾습니다. stalld 는 thread가 Cryostat _DEADLINE 정책을 사용하도록 일시적으로 변경되고 지정된 CPU에서 스레드에 작은 시간을 할당합니다. 그런 다음 스레드가 실행되고 time 슬라이스를 사용하면 스레드가 원래 스케줄링 정책으로 돌아가 스레드 상태를 계속 모니터링합니다.

하우스키핑 CPU는 모든 데몬, 쉘 프로세스, 커널 스레드, 인터럽트 처리기 및 분리된 CPU에서 디스패치할 수 있는 모든 작업을 실행하는 CPU입니다. 실시간 제한이 비활성화된 하우스키핑 CPU의 경우 stalld 는 기본 워크로드를 실행하는 CPU를 모니터링하고 Cryostat _FIFO 사용량 루프로 CPU를 할당하므로 이전에 정의된 허용 가능한 추가 노이즈에서 필요에 따라 stalled 스레드를 감지하고 스레드 우선 순위를 개선하는 데 도움이 됩니다. 실시간 제한 메커니즘으로 인해 기본 워크로드에서 복구할 수 없는 노이즈가 발생하는 경우 stalld 가 선호될 수 있습니다.

stalld 를 사용하면 starved 스레드를 강화하여 도입되는 노이즈를 보다 정확하게 제어할 수 있습니다. stalld 가 실행될 때 쉘 스크립트 /usr/bin/throttlectl 은 실시간 제한을 자동으로 비활성화합니다. /usr/bin/throttlectl show 스크립트를 사용하여 현재 제한 값을 나열할 수 있습니다.

실시간 제한 비활성화

/proc 파일 시스템의 다음 매개변수는 실시간 제한을 제어합니다.

  • /proc/sys/kernel/sched_rt_period_us 매개 변수는 마침표의 마이크로초 수를 지정하고 기본값은 1초입니다.
  • /proc/sys/kernel/sched_rt_runtime_us 매개 변수는 제한되기 전에 실시간 작업에서 사용할 수 있는 마이크로초 단위 수를 지정하고 기본값은 사용 가능한 CPU 주기의 950,000 또는 95%입니다. echo -1 > /proc/sys/kernel/sched_rt_runtime_us 명령을 사용하여 -1 값을 sched_rt_runtime_us 파일에 전달하여 제한을 비활성화할 수 있습니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.