21.2. 지연 시간 측정
cnf-tests
이미지는 세 가지 도구를 사용하여 시스템 지연 시간을 측정합니다.
-
hwlatdetect
-
순환 테스트
-
oslat
각 도구에는 특정한 용도가 있습니다. 신뢰할 수 있는 테스트 결과를 얻으려면 도구를 순서대로 사용하세요.
- hwlatdetect
-
베어메탈 하드웨어가 달성할 수 있는 기준을 측정합니다. 다음 지연 시간 테스트를 진행하기 전에
hwlatdetect
에서 보고된 지연 시간이 필요한 임계값을 충족하는지 확인하세요. 운영 체제를 조정하여 하드웨어 지연 시간 급증을 해결할 수 없기 때문입니다. - cyclictest
-
hwlatdetect가
검증을 통과한 후 실시간 커널 스케줄러 지연 시간을 확인합니다.cycltest
도구는 반복 타이머를 예약하고 원하는 트리거 시간과 실제 트리거 시간의 차이를 측정합니다. 이러한 차이점을 통해 인터럽트나 프로세스 우선순위로 인해 발생하는 튜닝의 기본적인 문제를 발견할 수 있습니다. 해당 도구는 실시간 커널에서 실행되어야 합니다. - oslat
- CPU를 많이 사용하는 DPDK 애플리케이션과 유사하게 동작하며 CPU를 많이 사용하는 데이터 처리를 시뮬레이션하는 바쁜 루프에 대한 모든 중단과 교란을 측정합니다.
테스트에서는 다음과 같은 환경 변수를 도입합니다.
환경 변수 | 설명 |
---|---|
| 테스트가 실행되기 시작할 때까지의 시간을 초 단위로 지정합니다. 변수를 사용하면 CPU 관리자 조정 루프가 기본 CPU 풀을 업데이트하도록 할 수 있습니다. 기본값은 0입니다. |
| 지연 테스트를 실행하는 Pod가 사용하는 CPU 수를 지정합니다. 변수를 설정하지 않으면 기본 구성에는 모든 분리된 CPU가 포함됩니다. |
| 지연 시간 테스트를 실행해야 하는 시간을 초 단위로 지정합니다. 기본값은 300초입니다. 참고
지연 테스트가 완료되기 전에 Ginkgo 2.0 테스트 모음의 시간이 초과되는 것을 방지하려면 |
|
작업 부하와 운영 체제에 대해 허용되는 최대 하드웨어 지연 시간을 마이크로초 단위로 지정합니다. |
|
|
|
|
| 최대 허용 지연 시간을 마이크로초 단위로 지정하는 통합 변수입니다. 사용 가능한 모든 지연 도구에 적용됩니다. |
지연 도구에 특정한 변수는 통합 변수보다 우선합니다. 예를 들어, OSLAT_MAXIMUM_LATENCY가
30마이크로초로 설정되고 MAXIMUM_LATENCY가
10마이크로초로 설정된 경우 oslat
테스트는 최대 허용 지연 시간인 30마이크로초로 실행됩니다.