Linux에서 벤치마크 테스트를 균일하게 실행하는 방법

Linux에서 벤치마크 테스트를 균일하게 실행하는 방법

저는 Linux를 확장 가능한 멀티 코어 아키텍처에 적용하는 프로젝트를 진행하고 있습니다. Linux의 성능을 테스트하기 위해 벤치마크를 사용하고 있습니다. 시스템에서 벤치마크를 실행하면 시스템에서 다른 프로그램(예: 백그라운드 프로세스)이 실행되고 있습니다. 백그라운드 프로세스로 인해 발생하는 시스템 부하가 고정되어 있지 않기 때문에 시스템 부하 변화에 따라 벤치마크 실행 시간이 달라질 수 있다고 생각합니다. 그렇다면 벤치마크를 균일하게 실행하는 방법은 무엇입니까? 온라인에서 검색하고 연구자들에게 이 문제에 대해 문의했지만 이 문제에 대한 해결책을 찾지 못했습니다. 가능하다면 저를 도와주세요.

답변1

보세요벤치소스 코드. 네, 오래된 것 같아요. 그럼에도 불구하고 lmbench 벤치마크는 시스템 부하 효과를 제거하기 위해 많은 노력을 기울였습니다. 일부 벤치마크에서는 여러 계산을 수행하고 가장 낮은 타이밍 값을 선택하는 등의 작업을 수행합니다. 이로 인해 해당 벤치마크에 대한 최대 성능 값이 발생합니다. 다른 벤치마크에서는 타이밍을 수행하기 전에 "캐시를 경고"합니다. lmbench를 통해 많은 것을 배울 수 있다고 믿습니다.

답변2

상식을 적용하는 한(예: 비활성화)예약 된 일들그리고 테스트를 하는 동안 온라인 상태에 있지 마십시오.) 시간을 측정하는 시간은 완전히 무관하지 않으며 벤치마크는 균등하게 나올 것입니다. 한번 시도해 보십시오.

테스트를 50회 또는 100회 실행하고 설명할 수 없는 차이점이 많이 발견되면 문제가 있는 것이므로 해결책이 필요하지 않습니다. 그렇지 않다면 그렇지 않을 것입니다. 일반적인 Linux 단일 사용자 데스크탑 시스템은 사용자가 지시한 것 이상으로 아무것도 수행하지 않습니다.

관련 정보