[GeForce]에서 인공지능[AI]으로: [CUDA]에 관한 [NVIDIA]의 결정은 왜 기업의 미래를 바꿨을까?

서론: 오늘의 이익을 포기하고 내일의 컴퓨팅 세계를 만들 수 있을까?
한 기업이 고객이 당장 요구하지 않는 기능에 큰돈을 씁니다. 기능을 추가하면 생산비가 올라가지만 고객은 돈을 더 낼 생각이 없습니다. 그런데도 기업은 물러서지 않습니다. 새 제품을 파는 데 그치지 않고, 다른 사람들이 미래에 자신의 결과물을 만들 수 있는 컴퓨팅 플랫폼[Computing Platform]을 구축하려 하기 때문입니다.
이것이 [NVIDIA]가 [GeForce] 그래픽 프로세서[GPU]에 [CUDA]를 도입한 결정의 바탕입니다. Jensen Huang은 이 결정이 즉각적인 성공을 가져오지 않았다고 설명합니다. 비용과 이익 압박, 오랜 기다림이 뒤따랐습니다. 하지만 나중에는 딥러닝[Deep Learning] 성장의 기반 중 하나가 됐습니다.
1. 특정 작업용 가속기에서 폭넓은 컴퓨팅 플랫폼[Computing Platform]으로
초기 [NVIDIA]는 특정 작업을 빠르게 처리하는 기업이었습니다. 그 전문성이 강점이었지만, 좁은 시장에만 의존하면 연구개발[Research and Development] 역량도 제한될 수 있었습니다.
여기에는 상충하는 문제가 있었습니다. 지나치게 특화하면 일반적인 컴퓨팅 작업이 어려워질 수 있습니다. 모든 일을 하려 하면 원래의 전문 능력을 잃을 수 있습니다. Huang은 두 요구 사이를 단계적으로 이동하는 방식을 택했습니다.
그는 첫 단계가 프로그래밍 가능한 픽셀 셰이더[Programmable Pixel Shader]였다고 설명합니다. 다음에는 셰이더[Shaders]에 IEEE 호환 32비트 부동소수점 연산[IEEE-compatible FP32]이 도입됐습니다. 연구자들은 그래픽용 프로세서를 다른 계산에도 쓸 수 있는지 묻기 시작했습니다.
이후 프로그래밍 언어 (C)를 바탕으로 한 [Cg]가 나왔습니다. 그 여정은 결국 [CUDA]로 이어졌습니다. 하루아침에 생긴 마법 같은 해법이 아니라, 하나의 기술 역량을 다음 역량으로 연결한 연속적인 과정이었습니다.
2. [CUDA]를 만든 것보다 어디에 보급했는지가 중요했다
훌륭한 기술을 만들었다고 사람들이 저절로 사용하지는 않습니다. 프로그램을 작성할 개발자[Developers]와 그 프로그램을 이용할 수 있는 많은 사람이 필요합니다.
컴퓨팅 플랫폼[Computing Platform]의 힘은 설계의 우아함뿐 아니라 이미 얼마나 많은 사람이 보유하고 있는지에도 있습니다. Huang은 이를 설치 기반[Installed Base]의 중요성으로 설명합니다.
그는 많은 비판에도 광범위한 보급 덕분에 살아남은 [x86] 아키텍처를 예로 듭니다. 반면 정교하게 설계된 일부 축소 명령어 집합 아키텍처[RISC Architectures]는 기대한 성공을 거두지 못했다고 말합니다. 모든 [RISC] 설계가 실패했다는 뜻은 아닙니다. 기술적 우수성만으로 플랫폼의 성공을 보장할 수 없다는 것이 핵심입니다.
당시 [GeForce]는 이미 매년 수백만 개씩 판매되고 있었습니다. 따라서 [NVIDIA]에는 새로운 컴퓨팅 능력을 사람들에게 전달할 준비된 경로가 있었습니다.
3. 모든 [GeForce] 프로세서에 [CUDA]: 수요보다 먼저 마련한 기반
[CUDA] 기능을 일부 고가 연구 장비에만 넣을 수도 있었습니다. 그렇게 했다면 접근할 수 있는 사람은 훨씬 적었을 것입니다.
대신 기업은 [GeForce]를 통해 널리 보급된 개인용 컴퓨터[PC]에 그 기능을 제공하기로 했습니다. 게임용 제품이 연구 기회도 제공하게 된 것입니다. 학생, 대학 연구실, 직접 컴퓨터를 조립하는 연구자가 이미 가진 장비로 새로운 계산을 시도할 수 있게 됐습니다.
이것을 모든 컴퓨터에서 [CUDA]가 실행됐다는 뜻으로 받아들여서는 안 됩니다. [GeForce]의 보급 기반을 출발점 삼아 더 많은 사람에게 그 기능을 제공했다는 의미입니다.
Huang은 장비 공급뿐 아니라 대학 교육, 책 집필, 강의 개설도 진행했다고 말합니다. 플랫폼 구축은 제품 판매로 끝나지 않습니다. 그것을 사용할 지식과 공동체도 만들어야 합니다.
4. 즉각적인 대가: 비용 증가와 이익 압박
경제적 부담은 작지 않았습니다. Huang은 [CUDA] 기능을 추가하자 프로세서 원가가 약 50% 늘었고, 당시 회사의 매출총이익률[Gross Margin]은 약 35%였다고 회상합니다.
게이머는 사용하지 않는 계산 기능에 추가 비용을 내지 않습니다. 따라서 회사가 비용을 흡수해야 했습니다. 그는 그것이 회사의 매출총이익 금액[Gross Profit Dollars]을 전부 소모할 정도였다고 설명합니다.
이 두 비율을 단순히 빼서 재무 상태를 판단할 수는 없습니다. 하나는 생산 원가를 기준으로 하고, 다른 하나는 매출에서 계산하는 이익률입니다. 그가 강조하는 것은 단순 산술이 아니라 내일의 플랫폼을 위해 오늘의 수익을 희생해야 했던 어려움입니다.
그는 당시 시가총액[Market Capitalisation]이 대략 60억~80억 미국 달러였고, 나중에는 약 15억 미국 달러까지 하락했다고도 회상합니다. 기억에 근거한 근삿값입니다. 전체 변화가 오직 [CUDA] 때문이었다고 결론 내릴 수는 없습니다.
그럼에도 기대한 효과가 나타나기까지 약 10년 걸렸다는 설명은 중요합니다. 다음 분기 이익을 위한 결정이 아니었습니다.
5. 왜 딥러닝[Deep Learning]의 토대가 됐을까?
새로운 연구의 장애물 중 하나는 장비에 접근하는 비용과 어려움입니다. 이미 많은 사람이 가진 장비로 실험을 시작할 수 있다면 그 장벽의 일부가 낮아집니다.
[GeForce]를 통해 확산된 [CUDA]는 연구자들이 공통 프로그래밍 환경[Programming Environment]에서 실험할 기반을 마련했습니다. 그곳에서 얻은 지식과 프로그램, 경험은 다음 작업에도 쓰일 수 있었습니다.
딥러닝[Deep Learning]이 성장했을 때, 대규모 병렬 컴퓨팅[Parallel Computing]에 적합한 장비와 사용법을 아는 사람들이 이미 존재했습니다. 이것이 중요한 선행 이점이었습니다.
딥러닝[Deep Learning]의 전체 역사가 한 기업이나 도구에만 달린 것은 아닙니다. 하지만 필요한 계산 기반을 널리 제공했다는 점에서 이 결정은 중요합니다. Huang이 [NVIDIA]를 '[GeForce]가 지은 집'이라고 강조하는 이유입니다.
6. 기술적 결정 이전에 쌓은 신뢰
지도자의 머릿속에는 미래가 명확할 수 있습니다. 하지만 이사회, 경영진, 직원, 고객, 협력사가 받아들이지 않으면 그 명확함만으로는 부족합니다.
Huang은 자신의 방식을 원인과 결과를 단계적으로 설명하는 과정이라고 말합니다. 새로운 정보, 연구 진전, 공학적 성과가 나올 때마다 주변 사람들에게 그것이 미래 방향과 어떻게 연결되는지 설명합니다.
중대한 결정을 발표하는 날 모두가 갑자기 놀라서는 안 된다는 생각입니다. 오히려 왜 이렇게 오래 걸렸는지 궁금해할 정도로 미리 토대를 마련해야 한다는 것입니다.
[CUDA] 결정 뒤에도 이런 장기적 신뢰와 인내가 있었습니다. 기술의 길을 선택하면서 그 비용을 부담할 기업도 그 여정에 대비시켜야 했습니다.
7. 제품을 넘어 협력사가 그 위에 구축할 수 있는 플랫폼
[NVIDIA]가 스스로를 컴퓨팅 플랫폼 기업[Platform Company]으로 보는 관점도 중요합니다. 각 계층에서 다른 기업이 기여하고 함께 구축할 공간을 마련하는 것이 핵심입니다.
모든 프로그램을 오픈소스[Open Source]로 제공한다는 뜻은 아닙니다. 협력사가 함께 만들 기회와 소스코드를 공개하는 일은 서로 다릅니다.
좋은 플랫폼은 만든 기업만으로 성장하지 않습니다. 연구자, 프로그래머, 기업, 교육기관이 그 위에 만드는 응용 프로그램을 통해서도 성장합니다. [CUDA] 결정은 그런 성장의 문을 열었습니다.
8. 오늘의 교훈: 프로세서 하나를 빠르게 하는 것으로는 부족하다
대규모 분산 작업[Distributed Workloads]에서 일부만 빠르게 해도 전체 시스템이 같은 비율로 빨라지지는 않습니다. 암달의 법칙[Amdahl's Law]이 이를 설명합니다.
어떤 작업 시간의 절반만 개선할 수 있다고 가정합시다. 그 절반을 아무리 빠르게 해도 나머지 절반은 그대로입니다. 개선한 부분의 시간이 0이 되더라도 전체 작업 속도는 최대 두 배까지만 빨라집니다.
따라서 그래픽 프로세서[GPU], 중앙처리장치[CPU], 네트워킹[Networking], 메모리[Memory], 전력 공급[Power], 냉각[Cooling]을 서로 맞게 설계해야 합니다. Huang은 이를 극도로 긴밀한 공동 설계[Extreme Co-design]라고 설명합니다.
여기에는 초기 [CUDA] 결정과의 연속성이 있습니다. 개별 도구의 능력만으로는 충분하지 않습니다. 그 도구를 사용하는 전체 환경이 함께 성장해야 합니다.
결론: 미래의 활용을 만들어 낸 결정
[CUDA] 도입의 의미는 새로운 프로그래밍 기능이 나왔다는 데만 있지 않습니다. 이미 대량 판매되던 [GeForce]와 결합해, 미래 사용자에게 미리 전달했다는 데 더 깊은 의미가 있습니다.
당시 비용만 봤다면 잘못된 결정처럼 보였을 수 있습니다. 하지만 [NVIDIA]는 컴퓨팅 플랫폼의 가치가 다른 사람들이 그 위에 만들 응용 프로그램에도 있다는 점을 이해했습니다.
기술, 넓은 보급, 교육, 개발자 공동체, 기업의 인내가 결합해 새로운 기회가 생겼습니다. 그 기회는 나중에 인공지능[AI]의 성장과 연결됐습니다. [CUDA] 결정의 교훈은 이렇습니다. 내일의 큰 변화에는 오늘 많은 사람이 구축을 시작할 수 있는 토대가 필요합니다.
Powered By K7
