코어 분리와 PREEMPT_RT가 성능에 어떤 영향을 미치나요?

코어 분리와 PREEMPT_RT가 성능에 어떤 영향을 미치나요?

여러 라이브 시스템 간의 차이점을 찾으려고 노력 중입니다.

지금까지 나는 PREEMPT_RT 패치를 사용해 코어를 분리하고 이를 RT 애플리케이션에 남겨두었습니다.

지금까지 다음을 사용하여 테스트했습니다.

    taskset -c 3 cyclictest -m -t1 -p 80 -n -i 500 -l 100000
    hackbench -l 100000
    cat /dev/zero > /dev/null
    cat /dev/zero > /dev/null
    cat /dev/zero > /dev/null

내 테스트 설정은 Raspberry Pi 3에서 실행되었습니다. 하지만 나는 특정 하드웨어가 아닌 일반적인 그림에 관심이 있습니다.

PRREMPT_RT를 사용하면 최대 150μs의 응답 시간을 제공하는 반면, 격리된 코어는 50μs 미만의 응답 시간을 제공합니다. 따라서 코어를 분리하는 것이 PRREMPT_RT보다 더 잘 작동하는 것 같습니다.

내 결과를 검증하거나 PREEMPT_RT에 유리하게 상황을 전환하려면 어떤 테스트 사례를 추가해야 합니까?

이 두 가지 방법 각각의 장점과 단점은 무엇입니까?

관련 정보