프로그램 성능 테스트 엉터리로 하기 진짜 쉽다
예를 들어서 테스트 프로그램에 사이드이펙트가 전혀 없으면 dce 최적화로 테스트하고자 하는 코드가 날아갈 수 있음.
백그라운드에 다른 프로그램 틀어두고 측정하면 시간 더 걸림. (나는 유튜브로 노래 듣다가 당한적 있다)
캐시 때문에 테스트 돌리는 순서에 따라서 결과가 다르게 나올 수 있음.
입력 데이터의 크기, 그리고 완전 랜덤인지 규칙성이 있는지 여부에 따라서 성능이 달라짐.
막 클럭 고정하고 이런것 까진 아니어도 제대로 된 벤치라고 하려면 상당히 고려할게 많음.
그러니까 엉터리 테스트 한번 해보고 "이게 더 빠르네" 이런식으로 잘못된 생각이 박히지 않도록 주의하는게 좋음
* 아까 레퍼런스 잘 달자고 쓴 글은 괜히 활동 의욕 떨어트릴것 같고 그래서 지웠다.
cppcon에서는 실행시킬 프로젝트의 경로에 따라 벤치마크 결과가 달라지는 사례도ㅠ있었음
ㅋㅋㅋ 왜그런거야
https://youtu.be/koTf7u0v41o
온라인 저지보면 고민 많이하더라