TECH 으로 돌아가기
TECH HACKER NEWS 오늘 2분 읽기 23 READS

C++ 연산 비용, CPU 클럭으로 환산하면 충격적입니다

현대 CPU에서 모든 연산은 평등하지 않습니다. 이 인포그래픽은 C++ 연산들이 실제로 몇 클럭을 잡아먹는지 한눈에 보여줍니다. 단순 산술이나 L1 캐시 접근은 1~몇 클럭에 불과하지만, L2는 약 10클럭, 메인 메모리 접근은 100클럭을 훌쩍 넘깁니다. 즉 캐시 미스 한 번이 덧셈 수십 번 값어치라는 뜻입니다. 분기 예측 실패는 10~20클럭, 가상 함수 호출과 간접 점프도 예측 실패 시 비슷한 비용을 치릅니다. 정수 나눗셈은 곱셈보다 훨씬 비싸고, 메모리 할당(new/malloc)은 수백~수천 클럭, C++ 예외 발생은 수천 클럭 이상으로 가장 비싼 축에 듭니다. 시스템 콜과 스레드 컨텍스트 스위칭은 그보다 더 무겁습니다. 핵심 교훈은 명확합니다. 성능을 좌우하는 건 연산 자체가 아니라 메모리 접근 패턴과 예측 가능성입니다. 데이터를 캐시 친화적으로 배치하고, 할당과 예외, 분기 오예측을 줄이는 것이 마이크로 최적화보다 훨씬 큰 효과를 냅니다. 추측 대신 이 수치를 기준으로 병목을 판단하세요.

SOURCE · HACKER NEWS
원문 전체 보기 → https://6it.dev/blog/infographics-operation-costs-in-cpu-clo...
SHARE
처리 중...