Casey Muratori가 파헤친 '조기 최적화'의 뿌리: BSC 2026 발표
Casey Muratori – The Root of the Root of All Evil – BSC 2026 [video]
BSC 2026에서 Casey Muratori가 '조기 최적화는 모든 악의 근원'이라는 유명한 격언의 기원과 실제 의미를 추적합니다. 1960년대 컴퓨터 과학의 역사적 자료와 실제 사례를 통해, 이 격언이 단순한 금기시가 아니라 성급한 최적화가 초래하는 문제를 정확히 짚은 통찰임을 보여줍니다. 2시간이 넘는 강연과 gingerBill과의 Q&A를 포함하며, 프로그래밍의 본질과 성능에 대한 깊이 있는 논의를 제공합니다.
조기 최적화가 모든 악의 근원이라는 말은, 단순히 성능을 신경 쓰지 말라는 뜻이 아니라, 무엇이 정말로 중요한지 이해하지 못한 채 최적화에 매달리는 태도를 경계하라는 의미입니다.
HN 토론
133- Almondsetat
케이시가 현재 소프트웨어 엔지니어링의 역사, 배운 교훈과 잊힌 교훈, 그리고 출판되었지만 아직 실무에서 주목받지 못한 좋은 내용들을 모두 정리한 책이나 기사 시리즈를 쓸 만큼 가장 정보에 밝은 사람이라고 생각합니다.
- FacelessJim
훌륭한 발표입니다. 하지만 한 가지 의견이 있습니다:
그가 Knuth가 언급한 핫 루프에 대한 논증을 무시한 부분은 좀 더 깊이 탐구할 수 있었을 것 같습니다. 그가 당시와 지금의 프로그램 유형 차이를 언급하지 않은 것이 이상했습니다. 오늘날에도 과학 코드에서는 여전히 런타임의 상당 부분이 단일한 매우 뜨거운 루프에서 발생하는 경우가 많습니다. 라이브러리에 숨겨져 있을 수는 있지만, 존재합니다.
그는 대신 '프로그램 크기'에만 초점을 맞춥니다.
Knuth가 샘플링한 프로그램은 (오늘날 기준으로) 매우 작은 FORTRAN 프로그램이었습니다. 오늘날의 프로그램은 더 크지만, '루프에서 계산을 수행하자'는 기본적인 수치 연산 프리미티브는 여전히 남아 있습니다. 단지 데이터 로딩, 병렬 처리, 디스패칭 등의 추가적인 잡다한 것들 아래 묻혀 있을 뿐입니다.
이제 우리는 70년대 컴퓨터로 하던 것과는 완전히 다른 종류의 프로그램을 훨씬 더 많이 다루고 있습니다. I/O가 훨씬 더 많이 관여됩니다. 그리고 핫 루프는 I/O 바운드가 되는 것을 좋아하지 않습니다.
- torginus
개인적으로 이것이 매우 흥미로울 것이라고 확신하지만, 이걸 듣기 위해 3시간을 낼 수는 없습니다. 2배속으로 1.5시간도 너무 깁니다.
차라리 글로 적힌 것을 선호합니다. 그래야 제 속도에 맞춰 흡수할 수 있으니까요. 선물을 받고도 뭐라 하는 건 알지만, 그래도요.
- ex-aws-dude
Muratori와 Blow 둘 다 이해가 안 되는 점은, 그들이 누군가가 그냥 좋은 품질과 빠른 성능을 위해 소프트웨어를 만들지 않는 것에 대해 믿기지 않는다는 듯이 반응한다는 것입니다.
마치 이런 일들이 인센티브가 있을 때만 일어난다는 사실을 이해하지 못하는 것 같습니다.
제 생각에 그 이유는 그들이 게임 업계에서 일하고 있고, 거기에는 성능에 대한 비즈니스 인센티브가 있으며, 사용자들은 게임에서 프레임 속도가 떨어지면 크게 신경 쓰기 때문입니다.
그들은 게임에 너무 익숙해서 성능에 대한 비즈니스 인센티브가 존재한다는 것을 당연하게 여깁니다.
AAA 게임과 빅테크 양쪽에서 일해본 사람으로서, 그들은 저에게는 다소 순진해 보입니다.
- fantasizr
그가 생성형 AI의 온라인 도난과 관련된 윤리를 설명할 때 주목했습니다. AI가 콘텐츠를 온라인에 올리면 노출과 사용을 교환하던 자연스러운 질서를 깨뜨렸다는 점에서요. https://youtu.be/bjO-s4rNPlY?si=uAtBTb6V_Sw1puBU&t=2244
- kshallvari
전설적인 게임 프로그래머
- register
그의 발표의 핵심 주장은 무엇인가요? 볼 가치가 있나요?
- cuechan
그는 게임 프로그래밍에 있어서 그야말로 전설적입니다.