← 모든 글

엔지니어링 철학: 짐 켈러, 트랜지스터는 공짜다

CPU 아키텍트 짐 켈러

핵심 요점

  • 트랜지스터는 싸고, 병목은 비쌉니다. 켈러의 대표적인 수법은 30년 세월과 십수 개의 칩에 걸쳐 반복되어 왔습니다. 바로 처리량을 가로막는 것을 없애기 위해 실리콘을 쏟아붓는 것입니다 — 더 넓은 파이프라인, 더 많은 실행 유닛, 더 빠른 인터커넥트로 말이죠. 쓰지 않은 트랜지스터는 곧 낭비한 트랜지스터이기 때문입니다. 추가한 하드웨어가 바쁜 유닛을 놀게 두지 않고 계속 일감을 공급할 때, 이 도박은 보상을 돌려줍니다.17
  • 그는 여러분이 손대는 컴퓨팅의 절반을 떠받치는 칩을 설계해 왔습니다. DEC의 Alpha, AMD의 Athlon(K7)과 K8 — 여기서 그는 x86-64(AMD64) 명령어 집합과 HyperTransport를 공동 설계했습니다 — 이어서 아이폰 4와 초대 아이패드를 떠받친 Apple A4와 A5, 그다음 AMD의 Zen 부활, 그다음 테슬라의 자율주행 컴퓨터, 그다음 Intel SVP로서의 한 시기까지. 이토록 많은 제품 라인을 빚어낸 엔지니어는 드뭅니다.123
  • 무어의 법칙은 죽지 않았습니다 — 사람들이 그 아래에 깔린 혁신들을 세는 일을 그만뒀을 뿐입니다. 강연에서, 그리고 공식적으로 켈러가 밝혀 온 입장은 트랜지스터 미세화에 아직 10년에서 20년이 남았다는 것입니다. 집적도는 하나의 묘수가 아니라 수천 개의 혁신이 쌓여 나오기 때문입니다. 현대 트랜지스터의 핀(fin)은 여전히 원자 100개가 넘는 폭이고, 아래로 내려갈 길은 멀기만 합니다.47
  • 펜실베이니아 주립대 전기공학 학위에서 RISC-V 전도사까지. 1958년경에 태어나 펜실베이니아 주립대학교에서 전기공학을 전공했고, 이후 DEC → AMD → Broadcom → P.A. Semi → Apple → AMD → Tesla → Intel로 이어지는 경력을 밟았습니다. 그리고 지금은 개방형 RISC-V 명령어 집합 위에서 개방형 AI 가속기를 만드는 Tenstorrent의 CEO입니다.156

원칙

“세상은 무어의 법칙이 죽었다고 생각하지만, 팹과 기술자들은 그렇지 않다고 봅니다. 그리고 이제 모두가 무어의 법칙에 대한 10년 로드맵을 발표했죠.” — 짐 켈러4

대부분의 엔지니어는 하드웨어를 고정된 예산으로 다룹니다. 트랜지스터 개수, 전력 한도, 공정 노드를 건네받고, 그 안에서 최적화합니다 — 여기서 한 사이클을 깎고, 저기서 한 단계를 접고, 실리콘을 아껴 씁니다. 켈러는 정반대로 일합니다. 그는 트랜지스터를 싼 자원으로, 병목을 비싼 자원으로 봅니다. 단 하나의 유닛이 나머지 기계를 굶기고 있다면, 답은 그 유닛을 더 똑똑하게 만드는 게 아닙니다. 실리콘을 더 쓰는 것입니다 — 복제하고, 파이프라인으로 만들고, 그곳으로 가는 길을 넓혀서 — 그래야 병목이 사라지고 그 아래의 모든 것이 계속 바쁘게 돌아갑니다.7

업계가 여기에 붙인 표현이 “트랜지스터는 공짜다”입니다. 문자 그대로 사실은 아니고, 켈러 자신도 그것을 압니다 — 실리콘에는 돈과 전력이 듭니다. 핵심은 비교에 있습니다. 엔지니어의 시간은 희소하고, 설계상의 위험은 위험하며, 놀고 있는 실행 유닛은 순수한 낭비입니다. 그것들에 견주면, 한계 트랜지스터 하나는 여러분이 가장 풍족하게 가진 자원이고, 무어의 법칙은 몇 년마다 그것을 더 쥐여 줍니다. 그러니 절제 있는 수는 풍족한 자원을 써서 희소한 자원을 아끼는 것입니다. 어떤 자원이 실제로 싼지를 새로 짚어 보는 이 단 하나의 재구성 — 그것이 그의 칩이 똑똑하고 좁기보다는 넓고 공격적이며 처리량에 굶주린 모양을 띠는 이유입니다.17

이것은 또한 그가 무어의 법칙이 죽지 않았다고 그토록 목소리를 높이는 이유를 설명합니다. 트랜지스터가 더 이상 싸지지 않게 된다면, 전략 전체가 무너집니다. 그래서 켈러는 화려하지 않은 일을 합니다 — 숫자를 들어, 미세화에 10년에서 20년이 남았다고 주장하는 것이죠. “무어의 법칙”은 결코 하나의 혁신이 아니라 저마다 자기만의 수확체감 곡선을 가진 수천 개의 혁신이 모여 지수함수를 이룬 것이라고요.7 싼 자원을 써서 병목을 없애고, 그 싼 자원이 여전히 싸다는 것을 계속 증명하라. 나머지는 전부 세부사항입니다.

배경

제임스 B. 켈러는 1958년경에 태어나 펜실베이니아 주립대학교에서 전기공학 학사를 받고 1980년에 졸업했습니다.1 그 뒤로 이어진 것은 업계 역사상 가장 있을 법하지 않은 이력서 중 하나입니다 — 어느 한 칩 때문이 아니라, 보통은 서로 경쟁사인 회사들을 넘나들며 한 시대를 규정한 칩이 그토록 많기 때문입니다.

그는 1982년 Digital Equipment Corporation에 합류해 1998년까지 일하며 VAX 8800을 거쳐 Alpha 라인 — 21164와 비순차(out-of-order) 방식의 21264(EV6) — 을 다뤘습니다. 당대 가장 빠른 마이크로프로세서였죠.1 1998년에는 AMD로 옮겨 Athlon(K7) 출시를 도왔고 K8 마이크로아키텍처의 수석 아키텍트를 맡았습니다. 가장 중요했던 것은 K8입니다. 켈러는 x86을 64비트로 확장한 x86-64(AMD64) 명령어 집합과, 여러 프로세서를 함께 묶는 HyperTransport 인터커넥트를 공동 설계했습니다. AMD64는 Intel을 포함해 PC와 서버 세계 전체가 돌아가는 64비트 표준이 되었습니다.12

그러고는 방랑이 시작됐습니다. 1999년 SiByte(MIPS 네트워킹 칩), 2000년 Broadcom에 인수되어 2004년까지 수석 아키텍트, 2004년부터 P.A. Semi에서 엔지니어링 부사장으로 저전력 모바일 프로세서를 만들었습니다. 2008년 Apple이 P.A. Semi를 인수했고, 켈러는 A4와 A5 시스템온칩 설계를 이끌었습니다 — 아이폰 4, 아이폰 4S, 초대 아이패드, 아이패드 2 안에 들어간 실리콘이죠. 이 칩들은 Apple의 자체 실리콘 프로그램을 싹틔웠고, 그 혈통이 끝내 Apple Silicon을 낳았습니다.13 그는 2012년 AMD로 돌아와 Zen을 설계했습니다. AMD를 무의미에 가까운 처지에서 진짜 경쟁의 자리로 끌어올린 마이크로아키텍처죠.1 이어 2016년부터 테슬라에서 오토파일럿 하드웨어 부사장으로, 피트 배넌과 함께 완전자율주행(FSD) 컴퓨터를 이끌었고, 2018년부터 2020년까지 Intel에서 실리콘 엔지니어링 수석 부사장을 지냈습니다.12 2020년 말부터는 Tenstorrent에서 — CTO를 거쳐 2023년부터 CEO로 — RISC-V 위에 AI 가속기를 만들고 있습니다.56

이 모든 것을 관통하는 줄기는 회사를 향한 충성이 아닙니다. DEC, AMD, Apple, Tesla, Intel에서 차례로 이길 만큼 이식성이 높은 방법론을 향한 충성입니다.

작업

파이프라이닝과 “트랜지스터는 공짜다”

다른 모든 것의 밑바탕이 되는 발상에서 시작합시다. 여기서 켈러의 직관이 산술로 바뀌기 때문입니다. 프로세서는 명령어를 여러 단계로 나눠 실행합니다 — 명령어를 가져오고, 해독하고, 피연산자를 읽고, 연산을 하고, 결과를 씁니다. 소박한 기계는 다음 명령어를 시작하기 전에 한 명령어를 이 단계들 끝까지 통과시킵니다. 문제는 연산 유닛이 일하는 동안 가져오기와 해독 하드웨어는 놀고 있고, 결과를 쓰는 동안 거의 나머지 전부가 아무것도 안 한다는 것입니다. 값비싼 실리콘 대부분이 대부분의 시간 동안 캄캄하게 꺼져 있습니다.

해법은 파이프라이닝입니다. 작업을 여러 단계로 쪼개 조립 라인처럼 겹쳐 돌리는 것이죠. 명령어 1이 연산 단계에 있는 동안, 명령어 2는 해독되고 명령어 3은 가져와집니다. 각 명령어는 여전히 같은 수의 단계를 거치지만, 이제 기계는 다섯 사이클마다가 아니라 매 사이클마다 하나씩 완성합니다. 어느 단계도 결코 놀지 않기 때문입니다. 함정은 작업을 겹치는 데 하드웨어가 든다는 것입니다 — 단계 사이의 래치, 의존성을 추적하는 로직, 명령어 2가 명령어 1이 아직 만들어 내지 못한 결과를 필요로 하는 경우를 처리하는 기계 장치 말이죠. 유닛을 계속 바쁘게 두려고 트랜지스터를 치르는 셈입니다.1

켈러의 칩은 그 도박을 세게 밀어붙입니다. 수퍼스칼라로 가는 것 — 실행 유닛을 여럿 둬서 사이클당 하나가 넘는 명령어를 끝내는 것 — 과 비순차로 가는 것 — 멈춰 선 명령어가 준비된 명령어를 막지 않도록 명령어 순서를 재배치하는 것 — 둘 다 장부 관리에 막대한 실리콘이 듭니다. Alpha 21264는 공격적인 비순차 설계였고, AMD의 K7과 K8은 넓은 수퍼스칼라 기계였으며, Zen은 그 길을 다시 한 번 넓혔습니다.1 어느 경우든 논리는 같습니다. 실행 유닛이 핵심이고, 노는 유닛은 낭비이며, 그것들에 일감을 계속 공급하는 데 필요한 트랜지스터는 건물 안에서 가장 싼 것입니다. 실리콘을 써서 병목을 없애라. 그것이 원칙이고, 파이프라인은 그 원칙의 가장 단순한 형태입니다.

강연하는 짐 켈러

AMD의 부활과 AMD64 혈통

업계를 가장 크게 다시 빚은 작업은 K8이었습니다. 2000년대 초가 되자 x86의 32비트 주소 공간이 한계에 다다르고 있었습니다 — 메모리 4 GB가 진짜 천장이 되어 가고 있었죠. 앞으로 나아갈 길은 둘이었습니다. Intel의 도박인 Itanium은 x86을 버리고 깔끔한 새 64비트 아키텍처를 만드는 것이었습니다. 산더미 같은 기존 소프트웨어와의 호환성을 깨면서요. 켈러가 아키텍처를 이끈 AMD의 도박은 정반대였습니다. x86을 64비트로 확장하되 기존 32비트 코드 전부를 온전한 속도로 돌릴 수 있게 유지하는 것이었죠. 그것이 x86-64, 다른 이름으로 AMD64였습니다.12

실용적인 도박이 결정적으로 이겼습니다. 소프트웨어를 다시 쓸 필요가 없었고, 업그레이드 경로는 고통이 없었으며, 레거시 코드의 성능도 손해 보지 않았습니다. AMD64는 표준이 되었고, 결국 Intel이 그 반대가 아니라 AMD의 확장을 채택했습니다 — 오늘날 사실상 모든 PC와 서버 CPU에 들어간 아키텍처가 바로 켈러의 팀이 명세한 것입니다. 그와 나란히, HyperTransport는 AMD의 Opteron 서버에 여러 프로세서를 묶는 빠른 점대점(point-to-point) 방식을 안겨, “트랜지스터는 공짜다” 직관이 늘 사냥하는 메모리·인터커넥트 병목을 공략했습니다.12 켈러가 2012년 AMD로 돌아와 Zen을 설계했을 때, 그는 고성능 경쟁에서 거의 떨어져 나갈 뻔한 회사를 상대로 같은 패턴을 되풀이했습니다. Intel과의 격차를 좁히고 AMD에 다시 믿을 만한 제품 라인을 안긴, 넓고 깔끔하며 모듈식인 코어였죠.1 두 번 그는 AMD에 걸어 들어갔고, 두 번 다 그 다음 10년을 규정할 아키텍처를 남기고 떠났습니다.

바닥부터 쌓아 올린 Apple 실리콘

가장 긴 그림자를 드리운 장(章)은 가장 조용한 것입니다. 2008년 Apple이 P.A. Semi를 인수했을 때, 켈러는 A4 — 2010년 아이폰 4와 초대 아이패드에 실린 Apple 최초의 자체 시스템온칩 — 와 그 후속작인 A5 — 아이폰 4S와 아이패드 2에 실린 — 를 설계한 팀을 이끌었습니다.13 그전까지 Apple은 모바일 프로세서를 기성품으로 사 왔습니다. A4는 Apple이 자기 실리콘을 직접 장악하기로 결심한 순간이었고, 켈러가 세우는 데 힘을 보탠 그 팀과 규율은 오늘날 모든 아이폰·아이패드·맥을 굴리는 A 시리즈와 M 시리즈 칩을 낳는 프로그램의 토대가 되었습니다.

전략적 논리는 새로운 영역에 적용된 똑같은 처리량·장악 직관입니다. 휴대전화의 가장 빡빡한 제약은 와트당 성능입니다. 데스크톱의 전력 예산으로 힘으로 밀어붙일 수 없죠. 설계를 처음부터 끝까지 소유하는 것 — 벤더의 범용 부품을 받아들이는 대신 — 은 작업 부하가 필요로 하는 바로 그 자리에, 그리고 필요로 하지 않는 자리에는 한 톨도 쓰지 않으면서, 트랜지스터를 정확히 배치하게 해 줍니다. 그것이 배터리를 위해 뒤집힌 “트랜지스터는 공짜다” 원칙입니다. “실리콘을 마음껏 더하라”가 아니라 “설계 전체를 소유하니 트랜지스터 하나하나를 의도적으로 놓아라”인 것이죠. A4에서 오늘날의 Apple Silicon으로, 그리고 존 카맥이 유명하게 만든 하드웨어를 꿰뚫는 성능 작업으로 이어지는 선은 그 2008년의 결정을 곧장 관통합니다.3

짐 켈러

제1원리, 그리고 Tenstorrent의 개방형 하드웨어

이 회사들을 하나로 묶는 방법론은 제1원리 사고 — 물려받은 가정을 내던지고 문제가 실제로 무엇을 요구하는지 묻는 의지 — 입니다. 켈러는 아키텍처가 썩는다고 거리낌 없이 말합니다. 대략 5년마다 옛것을 땜질하기보다 처음부터 새로 설계해야 한다는 것이죠. 다시 쓴 것이 결국 그것이 대체하는, 켜켜이 쌓인 판본보다 더 빠르면서도 덜 복잡해지기 때문입니다.7 규율은 두 공정 노드 전에는 참이었지만 지금은 참이 아닌 제약들을 벗겨낸 채, 정말로 하려는 게 무엇인지 계속 묻는 것입니다.7

그 직관이 그가 “무어의 법칙은 죽었다”는 합의를 거부하는 이유입니다. 그의 논거는 신앙이 아니라 기계적입니다. 트랜지스터 집적도는 저마다 자기만의 수확체감 곡선 위에 있는 수천 개의 독립적인 혁신의 합이고, 그 합은 여전히 지수함수라는 것이죠. 오늘날 FinFET의 핀은 원자 100개가 넘는 폭입니다. 바닥에 닿기 전에 한 변이 원자 10개인, “백만 배 더 작은” 트랜지스터를 상상해 볼 수 있습니다. 그의 표현대로, “그러니 우리는 원자가 동나고 있는 게 아닙니다.”47 그가 보기에 비관론자들은 혁신 하나만 세고 그 연쇄(cascade)를 놓치고 있는 것입니다.

그가 CEO로 있는 Tenstorrent에서는 제1원리 도박이 제도화되어 있습니다. 이 회사는 RISC-V — 라이선스 비용도 독점적 통제도 없는 개방형 명령어 집합 — 위에 AI 학습·추론 가속기를 만들고, 칩만 파는 게 아니라 자사 소프트웨어 스택을 오픈소스로 공개하고 CPU와 AI 코어 IP를 라이선스할 작정입니다.56 켈러가 공개적으로 품은 확신은 “앞으로 5년에서 10년 안에 RISC-V가 모든 데이터센터를 장악할 것”이라는 것입니다.5 그 내기는 개방형 하드웨어가 그 전의 개방형 소프트웨어처럼 제1원리에서 이긴다는 것입니다. 장벽을 낮추고, 많은 주체가 만들게 하면, 개방형 생태계가 폐쇄형 생태계를 혁신으로 앞지른다는 것이죠. x86을 표준으로 만든 바로 그 사람이, 이제는 그 표준이 누구도 소유하지 않는 것이어야 한다는 데 걸고 있는 것입니다.

방법론

Alpha, AMD64, Zen, A4, Tenstorrent를 두루 읽어 보면 같은 수가 거듭 나타납니다. 켈러의 방법론은 구호라기보다 한 묶음의 변치 않는 다짐입니다.

싼 자원을 써서 병목을 없애라. 그를 규정하는 습관은 어느 자원이 실제로 풍족한지를 — 대개 트랜지스터죠 — 가려내고, 처리량을 굶기는 것이라면 무엇이든 없애기 위해 그것을 아낌없이 쓰는 것입니다. 더 넓은 파이프라인, 더 많은 유닛, 더 빠른 인터커넥트로요. 일반적인 교훈으로도 옮겨집니다. 모든 제약을 똑같이 아껴 쓰지 말고, 가장 많이 가진 자원을 찾아 가장 적게 가진 자원과 맞바꾸라는 것이죠. 그것은 실리콘 차원의 품질만이 유일한 변수다입니다 — 정확성과 처리량이 목표이고, 트랜지스터 예산은 여러분이 생각하는 그런 제약이 아닙니다.7

일정에 맞춰 처음부터 다시 지어라. 대략 5년마다, 땜질하기보다 설계를 처음부터 다시 하십시오. 물려받은 가정은 굳어 버리고, 다시 쓴 것이 더 단순하게 나오기 때문입니다. 작동하지만 낡은 작업을 버리는 용기는 드물고 또 큰 짐을 떠받칩니다 — 리누스 토르발스가 더 이상 맞지 않는 서브시스템을 내던지게 하는 바로 그 직관이죠.7

지난 설계가 가정한 것이 아니라, 문제가 실제로 무엇을 요구하는지 물어라. 제1원리 사고란 두 노드 전에는 참이었으나 지금은 참이 아닌 제약을 벗겨내는 것입니다. 규율은 물려받은 짐이 떨어져 나갈 때까지 “우리가 정말로 하려는 게 뭐지”를 계속 묻는 것입니다 — 남의 주장이 아니라 자기 자신의 가정을 겨눈 증거 관문이죠.7

예산이 빡빡할 때는 트랜지스터 하나하나를 의도적으로 놓아라. “트랜지스터는 공짜다”의 뒷면은 휴대전화입니다. 면적이 아니라 전력이 벽일 때, 여러분은 설계 전체를 소유하므로 작업 부하가 필요로 하는 바로 그 자리에 실리콘을 놓을 수 있습니다. 자신이 어느 국면에 있는지 — 풍족한지 희소한지 — 를 알고 그에 맞춰 설계하는 것이 실제 기량이지, 일률적인 규칙이 아닙니다.3

개방성에 제1원리로 걸어라. RISC-V와 개방형 소프트웨어 스택은 장벽을 낮추면 더 많은 사람이 만들게 되고 개방형 생태계가 폐쇄형을 혁신으로 앞지른다는 내기입니다. 그것은 플랫폼 전체에 적용된 최소한의 가치 있는 제품 논리입니다 — 오직 자신만 만들 수 있는 폐쇄된 것이 아니라, 남들이 그 위에 쌓아 올릴 수 있는 개방된 것을 내놓는 것이죠.56

영향의 사슬

그를 빚은 이들

DEC와 Alpha 문화. 켈러는 디지털에서, Alpha 라인에서 고성능 설계를 배웠습니다. 거의 모든 것에 앞서 날것의 속도와 공격적인 비순차 실행을 떠받든 조직에서요. 처리량으로 이기기 위해 실리콘을 쓴다는 신념은 그 시대 가장 빠른 마이크로프로세서들 위에서 거기서 벼려졌습니다. (형성적 영향)

더크 마이어와 피트 배넌. 켈러의 가장 중요한 작업은 협업에서 나왔습니다 — 더크 마이어와 함께 Alpha의 비순차 EV6를 공동 설계했고, 이어서 Apple의 실리콘 프로그램으로 나란히 길을 밟은 피트 배넌과 함께 테슬라의 FSD 컴퓨터를 이끌었죠. 그 협업들은 곁가지가 아닙니다. 가장 어려운 칩은 팀 경기이고, 켈러의 거듭된 공동 아키텍트들은 그가 그들의 작업을 빚은 만큼이나 그의 작업을 빚었습니다. (직접적 영향)

무어의 법칙 그 자체. “트랜지스터는 공짜다” 전략 전체는 트랜지스터가 계속 싸진다는 데 달려 있습니다. 켈러의 세계관은 고든 무어의 관찰에서 흘러나온 것입니다 — 그가 그것을 그토록 맹렬히 옹호하는 이유죠. 미세화 혁신의 연쇄가 멈추면, 방법론도 바뀌어야 합니다. (형성적 영향)

그가 빚은 이들

Apple Silicon. P.A. Semi 인수 이후 켈러가 Apple에 세우는 데 힘을 보탠 A4와 A5 팀과 규율은 오늘날 모든 A 시리즈와 M 시리즈 칩을 낳는 프로그램의 토대가 되었습니다. 지난 10년 가장 중대했던 소비자 실리콘은 그가 중심에 섰던 한 결정으로 거슬러 올라갑니다.

AMD의 두 차례 부활. K8/AMD64는 AMD를 서버 경쟁자로 만들고 세상이 굴러가는 64비트 표준을 세웠습니다. Zen은 10년 뒤 AMD를 고성능 경쟁으로 다시 끌어올렸습니다. 두 아키텍처 모두 그가 떠난 뒤로도 여러 해 동안 AMD의 경쟁 위치를 규정했습니다.

RISC-V와 개방형 하드웨어 운동. 개방형 명령어 집합에 공개적으로, 그리고 상업적으로 거는 업계에서 가장 믿을 만한 아키텍트 중 한 사람으로서, 켈러는 하드웨어가 소프트웨어를 따라 개방성으로 갈 수 있다는 주장에 무게를 싣습니다. Tenstorrent가 그 증명입니다.

관통하는 줄기

켈러는 이 시리즈에서 알맞은 자원을 쓴다는 실타래가 금속과 만나는 지점입니다. 존 카맥은 기계를 사이클 단위까지 이해함으로써 고정된 소비자 하드웨어에서 불가능해 보이는 성능을 짜냈습니다. 켈러는 그 아래 층에서 일합니다 — 그는 기계를 설계하고, 병목에 대한 그의 답은 그것을 우회하도록 코딩하는 데 그치지 않고 그것을 없애는 실리콘을 더하는 것입니다. 비야네 스트롭스트룹은 쓰지 않는 것에 대해서는 비용을 치르지 말아야 한다는 무비용 추상화 원칙 위에 C++를 지었습니다. 켈러의 “트랜지스터는 공짜다”는 그것의 하드웨어 거울입니다 — 기계를 바쁘게 두는 것에 쓰고, 놀고 있는 것에는 한 톨도 낭비하지 마라. 그리고 안드레이 카르파티가 손으로 작성하는 대신 데이터로부터 컴파일되는 프로그램, “소프트웨어 2.0”을 묘사하는 그곳에서, 켈러는 그 새로운 작업 부하가 요구하는 실리콘을 짓고 있습니다 — 옛 범용 CPU가 결코 그 모양으로 빚어진 적 없는 문제를 위해, 제1원리에서 설계된, 개방형 RISC-V 위의 AI 가속기를요. 카맥은 주어진 하드웨어를 통달하라 말하고, 스트롭스트룹은 쓰지 않는 것에 비용을 치르지 마라 말하며, 켈러는 말합니다. 하드웨어가 병목일 때는, 더 나은 것을 지어라 — 그리고 아직 쓸 원자가 남아 있다는 것을 계속 증명하라. (시리즈 다리)

내가 여기서 얻는 것

켈러에게서 내가 간직하는 교훈은 어느 자원이 실제로 싼지 알아낸 다음, 죄책감 없이 그것을 쓰라는 것입니다. 모든 것을 똑같이 아껴 쓰기 — 모든 제약을 구속력 있는 것으로 다루고 그 전부 안에서 소심하게 최적화하기 — 는 쉽습니다. 켈러의 습관은 한 자원은 풍족하고 나머지는 희소하다는 것을 알아채고, 그 풍족함이 허락하는 방향으로 과감히 맞바꾸는 것입니다. 트랜지스터는 싸고, 노는 유닛과 엔지니어의 시간은 비싸다. 그러니 트랜지스터를 써서 병목을 없애라. 내 일에서 풍족한 자원은 좀처럼 실리콘이 아닙니다 — 흔히 연산이거나, 모델의 토큰이거나, 초안을 값싸게 다시 만들어 내는 능력입니다. 수는 똑같습니다. 가장 많이 가진 것을 아껴 쓰기를 멈추고, 그것을 실제로 나를 가로막고 있는 것에 겨누는 것이죠.

두 번째 교훈은 일정에 맞춰 처음부터 다시 시작하는 의지입니다. 몇 년마다 처음부터 다시 설계해야 한다는 — 다시 쓴 것이 땜질한 원본보다 더 단순하게 나오기 때문에 — 켈러의 주장은, 이미 해 놓은 작업을 지키려는 모든 본능에 거스릅니다. 하지만 그가 옳습니다. 가정은 굳어 버리고, 한때 참이었던 제약은 슬그머니 참이 아니게 되며, 켜켜이 쌓인 설계는 그 모든 것의 무게를 짊어집니다. 규율은 신선한 눈으로 문제가 지금 실제로 무엇을 요구하는지를 주기적으로 묻고, 옛 답이 더 이상 맞지 않을 때 그것을 내던질 배짱을 갖는 것입니다. 내가 작년에 지은 것은 작년의 제약을 위해 지어진 것입니다. 켈러의 경력은 용감한 수 — 실제로 이기는 수 — 가 제1원리에서 그것을 다시 짓는 것이라는 긴 논증입니다.

자주 묻는 질문

짐 켈러의 엔지니어링 철학은 무엇인가요?

싼 자원을 써서 병목을 없애라는 것입니다. 켈러는 트랜지스터를 풍족한 것으로 — “트랜지스터는 공짜다” — 그리고 엔지니어의 시간, 설계상의 위험, 노는 하드웨어를 비싼 것으로 봅니다. 그래서 그의 칩은 처리량을 높게 유지하려고 더 넓은 파이프라인, 더 많은 실행 유닛, 더 빠른 인터커넥트에 실리콘을 아낌없이 씁니다.17 그 밑바탕에는 제1원리 사고가 있습니다. 대략 5년마다, 땜질하기보다 처음부터 다시 설계하라는 것이죠. 물려받은 가정은 굳어 버리고 다시 쓴 것이 더 단순하게 나오기 때문입니다.7

짐 켈러는 어떤 칩들을 설계했나요?

경쟁사들을 넘나드는 놀라운 범위입니다. DEC의 Alpha 프로세서(비순차 21264 포함), AMD의 Athlon(K7)과 K8 — 여기서 그는 x86-64/AMD64 명령어 집합과 HyperTransport 인터커넥트를 공동 설계했습니다 — 아이폰 4와 초대 아이패드 뒤의 Apple A4와 A5 시스템온칩, 2012년 복귀 시 설계한 AMD의 Zen 아키텍처, 그리고 테슬라의 완전자율주행 컴퓨터까지요. 그는 또한 2018년부터 2020년까지 Intel에서 실리콘 부문 수석 부사장을 지냈습니다.123

짐 켈러는 왜 무어의 법칙이 죽지 않았다고 말하나요?

그의 설명에 따르면, 트랜지스터 집적도는 하나의 혁신이 아니라 저마다 자기만의 수확체감 곡선 위에 있는 수천 개의 독립적인 혁신의 합이고, 그 합이 지수함수를 이루기 때문입니다 — 그리고 그 합에는 아직 10년에서 20년이 남아 있습니다.7 그는 팹과 기술자들이 10년 로드맵을 발표했다는 점, 현대 FinFET의 핀이 여전히 원자 100개가 넘는 폭이라는 점, 그리고 한 변이 원자 10개인 — 백만 배 더 작은 — 트랜지스터를 상상해 볼 수 있다는 점을 짚습니다. “그러니 우리는 원자가 동나고 있는 게 아닙니다.”47

Tenstorrent는 무엇이고, 짐 켈러는 거기서 무엇을 하고 있나요?

Tenstorrent는 켈러가 2023년부터 CEO(그 전에는 CTO)로 있는 AI 칩 회사입니다. 개방형 RISC-V 명령어 집합 위에 AI 학습·추론 가속기를 만들고, 자사 소프트웨어 스택을 오픈소스로 공개할 작정이며, 칩 판매와 더불어 CPU와 AI 코어 IP를 라이선스합니다.56 켈러의 내기는 개방형 하드웨어가 개방형 소프트웨어가 걸었던 지배의 길을 따르리라는 것입니다 — 그는 “앞으로 5년에서 10년 안에 RISC-V가 모든 데이터센터를 장악할 것”이라고 믿는다고 말한 바 있습니다.5


출처


  1. “Jim Keller (engineer),” Wikipedia. 1958년경 출생, 펜실베이니아 주립대학교 전기공학 학사(1980). 경력: DEC(1982-1998)에서 VAX 8800과 Alpha 21164 및 비순차 21264 작업, AMD(1998)에서 Athlon(K7) 출시 및 K8 마이크로아키텍처 수석 아키텍트로서 x86-64 명령어 집합과 HyperTransport 인터커넥트 공동 설계, SiByte(1999)와 2000년 11월 인수 후 Broadcom 수석 아키텍트(2004년까지), 2004년부터 P.A. Semi 엔지니어링 부사장, 2008년 P.A. Semi 인수 후 Apple에서 아이폰 4, 4S, 아이패드, 아이패드 2에 쓰인 A4와 A5 SoC 설계, 다시 AMD(2012-2015)에서 Zen과 K12 마이크로아키텍처 개발 주도, 테슬라(2016-2018) 오토파일럿 하드웨어 엔지니어링 부사장, Intel(2018-2020) 수석 부사장, 2020년 12월부터 Tenstorrent(CTO를 거쳐 2023년 1월부터 CEO). 

  2. “Jim Keller (engineer),” Wikipedia, “Who is Jim Keller and what’s he doing at Tenstorrent?,” Electronic Specifier로 교차 확인. 켈러는 AMD K8의 수석 아키텍트였고 x86을 64비트로 확장한 x86-64(AMD64)와 멀티프로세서 통신에 쓰이는 HyperTransport 인터커넥트를 공동 설계했습니다. AMD64는 이후 PC와 서버 업계 전반에 채택된 64비트 표준이 되었습니다. 같은 프로필은 그의 작업을 Apple A4/A5, AMD Zen, 테슬라의 자율주행 칩, Intel의 실리콘 전략 뒤의 아키텍트로 요약합니다. 

  3. “Tesla Autopilot hardware,” Wikipedia, “FSD Chip – Tesla,” WikiChip. 이전에 오토파일럿 하드웨어 3.0이던 테슬라의 완전자율주행(FSD) 컴퓨터 설계는 2016년 짐 켈러와 피트 배넌이 이끄는 팀에서 시작되었고, 칩은 2018년 말 / 2019년 초에 삼성의 14 nm 공정으로 양산에 들어갔습니다. P.A. Semi 인수 이후의 Apple A4/A5 설계 역할은 1에서 인용한 짐 켈러 Wikipedia 프로필에 기록되어 있습니다. 

  4. “Moore’s Law is Not Dead,” UC 버클리 EECS 콜로퀴엄(짐 켈러, 2019년 9월 18일), “Moore’s law is far from death, according to Intel’s Jim Keller,” TweakTown 및 “I’m Not Dead Yet; Keller Channels Moore,” PC Perspective 보도. 켈러: “세상은 무어의 법칙이 죽었다고 생각하지만, 팹과 기술자들은 그렇지 않다고 봅니다. 그리고 이제 모두가 무어의 법칙에 대한 10년 로드맵을 발표했죠.” 원자 규모에 관해, 그는 FinFET의 핀이 여전히 원자 100개가 넘는 폭이고 한 변이 대략 원자 10개인 — 약 백만 배 더 작은 — 트랜지스터를 상상해 볼 수 있다고, 그러니 “우리는 원자가 동나고 있는 게 아니”라고 짚습니다. 

  5. “Jim Keller on AI, RISC-V, Tenstorrent’s Move to Edge IP,” EE Times. Tenstorrent CEO 켈러, RISC-V에 관해: “내 믿음은 앞으로 5년에서 10년 안에 RISC-V가 모든 데이터센터를 장악하리라는 것입니다.” 특히 과학 컴퓨팅과 HPC 분야에서요. Tenstorrent는 개방형 RISC-V 아키텍처 위에 AI 학습·추론 가속기를 만들고, 오픈소스 하드웨어 및 소프트웨어의 강력한 지지자로서 자사 AI 소프트웨어 스택을 오픈소스로 공개하고 CPU와 AI 코어 IP를 라이선스할 작정입니다. 

  6. “About Tenstorrent,” Tenstorrent, “Jim Keller (engineer),” Wikipedia. Tenstorrent는 개방형 RISC-V 명령어 집합 위에 AI 가속기와 CPU를 만들며, 오픈소스 소프트웨어 스택(Metalium, TT-NN 및 관련 도구 포함)과 자사 제품과 더불어 IP 라이선스 모델을 갖추고 있습니다. 켈러는 2020년 12월 CTO로 합류해 2023년 1월 CEO가 되었습니다. 

  7. “Jim Keller: Moore’s Law, Microprocessors, Abstractions, and First Principles,” Lex Fridman Podcast #70(2020년 2월), Happy Scribe를 통한 녹취록. 켈러는 무어의 법칙이 “말 그대로 수천 개의 혁신”에 의해 추동되며, 저마다 “자기만의 수확체감 곡선”을 가진 그 혁신들이 합쳐져 지수함수를 이룬다고 주장합니다. “앞으로 10년에서 20년의 미세화가 일어날 것”이며, 현대 트랜지스터는 대략 원자 100개 남짓의 폭이고 10×10×10 원자를 향해 줄어들 수 있다는 것, 컴퓨팅에는 “원자에서 데이터센터까지” 잘 이해된 추상화 계층이 있다는 것, 그리고 좋은 아키텍처란 땜질하기보다 주기적으로 “처음부터” 다시 설계하는 것을 뜻한다는 것 — 다시 쓴 것이 더 빠르면서도 덜 복잡하게 나오기 때문에 — 즉 물려받은 가정 없이 정말로 하려는 게 무엇인지 묻는 제1원리의 습관을 이야기합니다. 

관련 게시물

엔지니어링 철학: 소피 윌슨

소피 윌슨은 ARM 명령어 집합을 설계했습니다. 이제 지구상 거의 모든 휴대폰에 들어 있는 이 설계는, 단출한 팀과 RISC 특유의 가차 없는 효율로 빚어졌고, 저전력은 거의 우연처럼 따라왔습니다.

14 분 소요

엔지니어링 철학: 얀 르쿤, 세상을 배우다, 공개적으로

얀 르쿤은 합성곱 위에 딥 비전을 세웠고, 이후 진짜 지능은 더 큰 LLM이 아니라 세상을 비지도 방식으로 학습하고 그것을 공개적으로 발표하는 데서 나온다는 데 베팅했습니다.

13 분 소요

The Shader Gallery That Lied: Debugging 216 WebGL Presets

A user said the shader playground looked broken. Pixel-readback testing found 30 dead presets, 11 that never compiled, a…

11 분 소요