CUDA 20년, AI 혁명을 설계한 엔비디아의 숨은 엔진
ITWorld Korea
|
|
{'이벤트': '📰', '머신러닝/연구': '📰', '하드웨어/반도체': '📰', '취약점/보안': '📰', '기타 AI': '📰', 'AI 딜': '📰', 'AI 모델': '📰', 'AI 서비스': '📰', 'discount': '📰', 'news': '📰', 'review': '📰', 'tip': '📰'} 하드웨어/반도체
#ai 메모리
#ai 인프라
#미스트랄 ai
#삼성전자
#하드웨어/반도체
요약
엔비디아 CEO 젠슨 황은 2016년 오픈AI에 AI 슈퍼컴퓨터를 직접 배달했던 일화를 자주 꺼낸다. 당시 오픈AI는 지금처럼 주목받는 기업이 아니었다. 그 슈퍼컴퓨터 안에는 엔비디아의 CUDA 툴킷이 핵심 구성요소로 탑재돼 있었다. CUDA 툴킷은 오픈AI의 초기 실험을 현대 AI 애플리케이션의 토대로 전환하는 데 결정적 역할을 했다. 황은 CUDA를 엔비디아가 AI 및 고성능 컴퓨팅 분야에서 성공을 거둔 기반으로 평가한다. 출시 20주년을 맞은 CUDA는 지금도 현역이다. 엔비디아가 양자 컴퓨팅부터 로보틱스, 첨단 기계 장비, 자율주행까지 새 영역을 개척하는 과정에서도 CUDA가 그 토대를 이루고 있다. CUDA 툴킷은 프로그래밍 도구, 컴파일러 스택, 라이브러리로 구성되며, GPU의 컴퓨팅 성능을 실질적으로 해방한다. 스티븐 존스는 약 20년간 CUDA 아키텍트로 재직하며 툴킷의 진화를 직접 이끌어왔다. CUDA 개발을 주도했던 고(故) 존 니컬스 등 선배 엔지니어의 작업을 이
왜 중요한가
본문
엔비디아 CEO 젠슨 황은 2016년 오픈AI에 AI 슈퍼컴퓨터를 직접 배달했던 일화를 자주 꺼낸다. 당시 오픈AI는 지금처럼 주목받는 기업이 아니었다. 그 슈퍼컴퓨터 안에는 엔비디아의 CUDA 툴킷이 핵심 구성요소로 탑재돼 있었다. CUDA 툴킷은 오픈AI의 초기 실험을 현대 AI 애플리케이션의 토대로 전환하는 데 결정적 역할을 했다. 황은 CUDA를 엔비디아가 AI 및 고성능 컴퓨팅 분야에서 성공을 거둔 기반으로 평가한다. 출시 20주년을 맞은 CUDA는 지금도 현역이다. 엔비디아가 양자 컴퓨팅부터 로보틱스, 첨단 기계 장비, 자율주행까지 새 영역을 개척하는 과정에서도 CUDA가 그 토대를 이루고 있다. CUDA 툴킷은 프로그래밍 도구, 컴파일러 스택, 라이브러리로 구성되며, GPU의 컴퓨팅 성능을 실질적으로 해방한다. 스티븐 존스는 약 20년간 CUDA 아키텍트로 재직하며 툴킷의 진화를 직접 이끌어왔다. CUDA 개발을 주도했던 고(故) 존 니컬스 등 선배 엔지니어의 작업을 이어받아 현재까지 발전을 지속하고 있다. Computerworld가 최근 존스를 만나 CUDA와 AI, 그리고 컴퓨팅의 미래에 대해 이야기를 나눴다. CUDA 아키텍트 스티븐 존스는 엔비디아에서 약 20년간 CUDA 툴킷의 진화를 총괄하며 방향을 이끌어왔다.Nvidia — CUDA 20년을 어떻게 돌아보나? 한 마디로 파란만장한 여정이었다. 자신이 만든 도구를 가지고 사람들이 전혀 생각지 못했던 방식으로 무언가를 해낼 때, 그것이 엔지니어링의 진정한 보람이기 때문이다. CUDA는 병렬 프로그래밍에 강한 도구를 목표로 시작됐는데, 결국 모두가 병렬 프로그래밍을 필요로 한다는 사실이 드러났다. 챗GPT는 현재 전 세계 인구의 약 3분의 1이 사용하는 수준에 이르렀다. CUDA 창립 멤버는 아니지만, CUDA 1.0 출시 이후 합류해 초기 멤버 12명 안에 들었다. 현재 CUDA는 전 세계에서 매일 수억 명이 챗GPT를 통해 간접적으로 사용하고 있다는 점에서, 최고의 엔지니어링은 눈에 보이지 않는다는 것이 지론이다. — AI 붐이 오기 전, 하드웨어 개발 단계에서 이미 AI의 도래를 예견했나. 프로그래밍 수준에서 어떻게 준비했나? AI의 분수령은 2012년 AlexNet이었다. 수학의 한 세부 분야에서 갑자기 인간을 넘어서는 성과가 나왔고, AI 연구가 흥미롭고 강력한 영역으로 주목받기 시작한 것이다. 당시 엔비디아 내부에서는 이미 CuDNN의 전신이 될 작업이 진행 중이었고, AlexNet은 그 속도를 극적으로 높이는 계기가 됐다. 사실 CUDA를 최대한 범용적인 기반으로 구축하기 위해 공을 들였다. AI만 해도 6개월마다 판도가 바뀌는데, AI는 전체의 일부일 뿐이며 슈퍼컴퓨팅·로보틱스·기계 제어 등 다양한 영역이 있다. 단일 목적의 도구를 만들지 않고 범용성을 확보하는 것이 핵심 목표이며, 누군가 흥미로운 방식으로 기술을 활용하면 그 방향으로 확장해나간다는 것이 개인적인 개발 철학이다. AI 혁명 이후 새로운 시도들이 폭발적으로 늘어나면서 항상 예상치 못한 영역이 새로 생겨나고 있다. — CUDA는 어떻게 진화해왔나? CUDA는 2006년 발표됐고 버전 1.0은 2007년 초에 정식 출시됐다. 초기에는 거의 아무것도 제대로 작동하지 않았으며, 피드백을 받으면서 조금씩 유용한 기능을 쌓아가는 방식으로 개발이 이뤄졌다. 엔비디아 입사 첫 주에 CUDA로 프로그램을 짜보라는 지시를 받았는데, 디버깅 방법을 물었더니 printf 함수가 없다는 답이 돌아왔다. 그래서 직접 printf를 구현했고, 이것이 엔비디아에서 한 일 중 가장 유용한 작업이었다. 디버깅은 개발의 필수 요소이기 때문이다. 업무에서 가장 어려운 점은 실패 사례는 논문에 실리지 않는다는 현실이다. 많은 논문이 CUDA로 코드 성능을 100배 높였다고 보고하지만, 실제로 무엇이 어려웠는지는 공개되지 않는다. 여러 사람이 똑같은 방식으로 어려움을 겪는 것을 발견하면 빠진 부분이 있다는 신호로 받아들인다. CUDA 개발의 방향도 기능을 충분히 갖추는 것에서 어떤 방향으로 확장할 것인가로 전환됐다. 이 전환은 당시 급격한 채택률 증가로 가능해졌다. 사람들이 CUDA 코드를 덜 작성해도 되도록 만드는 것이 성공의 척도이며, 더 적은 노력과 코드로 GPU를 활용할 수 있어야 한다는 것이 지론이다. — CUDA를 먼저 구축하고 GPU 설계를 결정하나, 아니면 하드웨어와 소프트웨어가 함께 설계되나? CUDA 아키텍트로서 업무 시간의 절반을 하드웨어 팀과 협업하는 데 쓴다. 엔비디아가 탁월하게 잘해온 것은 바로 하드웨어와 소프트웨어의 공동 설계다. 하드웨어 팀이 구상 중인 기능을 공유하면 CUDA 측에서 소프트웨어로 이를 확장할 수 있도록 세부 조정을 요청하고, 반대로 사용자에게 부족한 부분이 있으면 하드웨어 차원에서 이를 해결할 수 있는지 논의한다. 칩 하나를 만드는 데 약 4년이 걸리며, CUDA 팀은 그 전 과정에 참여한다. 루빈(Rubin)이 출시를 앞두고 있지만, 아직 이름도 정해지지 않은 그 이후 세대 칩도 이미 개발이 시작됐다. 하드웨어를 먼저 만들고 소프트웨어를 나중에 맞추는 방식은 없으며, 전체를 통합적으로 설계한다는 것이 엔비디아의 개발 원칙이다. — AI는 전혀 새로운 컴퓨팅 방식이다. CUDA 스택을 어떻게 변화시켰나? CUDA는 단일한 무언가가 아니라 수백 가지 구성요소로 이뤄진 거대한 스택이며, 필요에 따라 선택적으로 활용할 수 있다. CUDA 위에 구축되는 외부 생태계 없이는 CUDA 자체만으로는 아무것도 할 수 없다. AI와 고성능 컴퓨팅(HPC)이 사실상 같은 연산 기반 위에서 돌아간다는 점이 흥미롭다. 슈퍼컴퓨팅을 위해 구축한 도구들이 AI 세계에 그대로 적용됐고, AI에서 얻은 교훈이 다시 슈퍼컴퓨팅으로 환류되고 있다. 방향이 양쪽으로 모두 작동하고 있는 것이다. 전통적인 폰 노이만 컴퓨팅은 50년간 이어온 논리적이고 반복 가능하며 체계적인 방식인 반면, AI는 확률적이고 비반복적이며 근사치 기반이다. 대규모 언어 모델은 같은 입력에도 매번 다른 토큰을 생성할 수 있는데, 은행 계좌 잔액이라면 동일한 숫자를 요구하는 것과 대조된다. AI의 행렬 연산 부하가 물리 법칙, 무어의 법칙, 정보 이론의 한계에 부딪히면서 연산 정밀도 감소를 이끌고 있다. 모델이 어떤 형태가 될지는 예측하기 어려웠지만, 모델이 작동하는 데 필요한 조건은 물리 법칙으로 규정된다. 새롭게 열린 AI 세계를 활용하기 위해 세상이 부과하는 제약에 대응하는 것이 핵심이다. — CUDA 신기능 출시부터 기업 도입까지의 간격이 줄어들고 있나? CUDA처럼 규모가 큰 플랫폼에서는 사람마다 기능을 받아들이는 속도가 다르다. 학술 연구자들은 출시 즉시 적용하지만, 리스크를 기피하는 기성 기업은 더 많은 시간이 걸린다. 기성 비즈니스와 소프트웨어 스택을 보유한 기업은 새 기능을 바로 도입하기 어렵고, 코드가 100만 줄에 달하면 1만 줄짜리 프로젝트보다 변경 비용이 훨씬 크다. 어떤 기능이든 얼리어답터, 중간 도입자, 후기 도입자로 나뉘며 그 과정에서 기능도 계속 진화한다. 다만 대형 플레이어의 도입 속도가 빨라지고 있는 것은 AI가 이끄는 변화의 속도 때문이다. 엔비디아 내부에서도 AI 도구를 적극 활용하고 있으며, 도구를 만들기 위해 도구를 쓰는 방식이 보편화되면서 소프트웨어 개발 방식 자체가 달라지고 있다. 완성된 기능을 일방적으로 전달하는 것이 아니라, 사용자의 필요에 반응하며 구축하는 과정에서 피드백 루프가 작동한다. CUDA 초기에 개발을 이끌었던 바로 그 피드백 루프가 지금 AI에서, 그리고 양자 컴퓨팅에서도 나타나고 있다. 양자 컴퓨터 기술이 성숙하기 전부터 GPU에서 양자 알고리즘을 개발하는 연구자들이 이미 존재하며, 양자 기술이 따라왔을 때 처음부터 시작하지 않아도 되도록 하기 위해서다. — 컴퓨팅의 미래를 추적하는 입장에서 가장 기대되는 것은 무엇인가? AI가 전례 없는 새로운 문들을 열고 있다. 몇 달 전 스탠퍼드대학교를 방문해 신생업체 아이디어를 논의하는 우수 학부생·대학원생들을 만났을 때, 젊은 연구자들이 가진 에너지를 보며 솔직히 부러움을 느꼈다. 인터넷이 막 등장하던 1990년대에 성장했으며, 당시 닷컴의 가능성에 매료됐다. 그러나 지금은 그보다 훨씬 큰 도약이 이뤄지고 있으며, 지금 대학을 나오는 세대는 아직 아무도 생각하지 못한 수없이 많은 선택지를 앞에 두고 있다. 젊은 세대가 만들어낼 것이 엔비디아 같은 플랫폼 기업이 구축하는 방향에도 영향을 미칠 것이다. 앞으로 10년은 파란만장할 것이며, 지금까지 훌륭한 여정을 보냈지만 25세가 된다면 무한한 가능성 앞에 서 있을 것이다[email protected]