콘텐츠로 이동하기
Systems

머신러닝으로 더 빨라지는 5세대 분산 컴퓨팅 시대의 도래

2024년 3월 14일
https://storage.googleapis.com/gweb-cloudblog-publish/images/Distributed-Computing-HeroBanner-2436x1200.max-2500x2500.jpg
Amin Vahdat

VP/GM, Machine Learning, Systems, and Cloud AI

Try Gemini 1.5 Pro

Google's most advanced multimodal model in Vertex AI

Try it

*본 아티클의 원문은 2024년 2월 16일 Google Cloud 블로그(영문)에 게재되었습니다.

Editor’s note: 오늘은 ML, 시스템, Cloud AI 부문 부사장 총괄 책임자인 Google 펠로우 Amin Vahdat의 의견을 들어보겠습니다. Amin은 2023 워싱턴 대학교 Allen School 특강 시리즈를 위한 기조 연설 처음 내용을 발표했습니다. 게시물에서는 분산 컴퓨팅의 역사와 현재 상황, 그리고 차세대 컴퓨팅 서비스에 대해 기대할 있는 부분에 대한 Amin의 생각을 살펴봅니다.


지난 50년에 걸쳐 컴퓨팅과 통신은 용량과 효율성, 기능 측면에서 기하급수적인 성장을 이어가며 사회의 혁신을 이끌었습니다. 기간 동안 기술 커뮤니티는 CPU 트랜지스터의 수를 5,000 늘렸고 인터넷 규모는 4노드에서 53 9,000 노드 성장시켰습니다.

자체로도 놀라운 발전이지만, 이러한 발전의 결과로 얻게 인간의 능력은 더욱 경이로운 수준에 이르렀으며 그중에는 이전까지 공상과학 소설에나 나왔을 법한 능력도 있습니다. 계속 진화하는 인간의 지식에 이제 거의 즉각적으로 액세스할 있습니다. 우리가 이해할 있는지가 관건일 외에는 한계가 없습니다. 실시간 언어 번역을 통해 인간 의사소통의 근본적인 장벽을 허물고 있습니다. 감지 기술과 네트워크 속도가 이에 상응하는 수준으로 발전하면서 원거리에서도 의미 있는 상호작용을 지원하는 홀로그래픽 프로젝션 기술을 실시간으로 구현할 있게 되었습니다. 컴퓨팅 역량의 같은 폭발적인 발전은 당대의 가장 어려운 과학 엔지니어링 과제를 해결하고 있는 차세대 AI 시스템을 움직이는 근간이 되고 있기도 합니다. 이러한 시스템은 예를 들어 단백질의 3D 구조를 거의 즉각적으로, 원자 단위의 정확도로 예측하거나 첨단 텍스트 이미지 변환 (text-to-image diffusion)기술 구현하여 사용자의 프롬프트에 맞는 실사 수준의 고품질 출력을 제공할 있습니다.  

기반이 되는 기술 발전의 속도를 유지하는 일은 쉽지 않습니다. 우리는 10~15년마다 근본적인 과제에 직면하는데, 인프라 효율성과 규모의 기하급수적인 성장을 유지하고 이를 통해 완전히 새로운 범주의 서비스를 가동하기 위해서는 근원적인 발명과 혁신으로 과제를 해결해야 합니다. 마치 1,000개의 요소가 모두 갈수록 어려운, 극복해야 새로운 근본적인 한계를 드러내면서 혁신의 기회 창출하는 것과 같습니다. 컴퓨팅에 대한 근본적인 수요가 끝없이 높아지고 있는 지금이 바로 그러한 분수령의 순간, 세대에 있을까 말까 과제에 직면하는 순간이자 놀라운 발전 속도를 유지하고 가속할 있는 기회의 순간입니다.

컴퓨팅의 역사를 간단히 돌아보면 각각 컴퓨팅의 '세대' 나름대로 정의할 있는 중대한 전환의 시기가 지금까지 4 있었습니다. 이제 5세대 컴퓨팅을 정의하고 이끌어야 분명한 필요성을 지적하는 역사적 분류 체계가 있습니다. 5세대 컴퓨팅은 데이터 중심의, 선언적이고 결과 지향적인 소프트웨어 정의 컴퓨팅으로 사람들에게 선제적으로 인사이트를 제공하는 중점을 둡니다. 과거의 세대가 이전까지 상상할 없었던 일상을 만들었다면, 이번 5세대는 지식과 기회에 대한 접근을 범용화하는 가장 변화를 가져올 것입니다. 그러나 이를 위해서는 여러 스택에 걸쳐 컴퓨팅에서 본질적으로 가장 어려운 가지 과제를 극복해야 합니다.

먼저 0세대부터 돌아보겠습니다. 순수주의자들은 그보다 수천 과거까지 거슬러 올라가야 한다고 주장할 있고 말도 일리가 있지만, 글에서는 1947년부터 1969 사이에 일어나 현대적인 컴퓨팅과 통신의 토대를 마련한 컴퓨터 과학의 획기적이고 근본적인 발전부터 시작해 보겠습니다.

1947: 바딘, 브래튼, 쇼클리가 최초의 작동하는 트랜지스터를 발명함
1948: 섀넌이 모든 네트워크 통신의 기반인 정보 이론을 발표함
1949: 컴퓨터에 저장된 프로그램이 작동 가능해짐
1956: 수준 높은 프로그래밍 언어가 발명됨
1964: 다양한 하드웨어 세대에 걸쳐 공통된 명령 집합 아키텍처가 등장함
1965: 무어의 법칙(집적 회로당 트랜지스터 수가 18~24개월마다 배로 증가한다는 법칙) 발표됨
1967: 멀티 사용자 운영체제에서 보호되는 리소스 공유 기능을 제공함
1969: 현대 인터넷의 기반인 ARPANET 등장함

0세대의 끝에서 이러한 혁신은 현대적 컴퓨팅의 기반을 마련했습니다. , 안정적인 명령 집합 아키텍처를 실행하는 집적 회로 기반의 컴퓨터 4, 그리고 패킷 교환식 인터넷에 연결된 멀티 사용자 시간 공유 운영체제입니다. 얼핏 대단치 않아 보이는 기준이 이후 이어지는 세대에서의 기하급수적인 발전을 위한 토대가 되었습니다.

https://storage.googleapis.com/gweb-cloudblog-publish/images/Epoch_1.max-900x900.png

1세대에서 컴퓨터 네트워크는 주로 비동기식으로 사용되었습니다. 네트워크를 통해(예를 들어 FTP 통해) 데이터를 전송하고, 데이터로 작업을 수행한 다음, 결과를 돌려보내는 식이었습니다.

주요 발전 사항: SQL, FTP, 이메일, 텔넷(telnet)
컴퓨터 상호작용 시간: 100밀리초
특징:
대역폭은 낮고, 지연 시간은 높은 네트워크
고가의 컴퓨터 간에 쌍방 상호작용은 거의 없음
사람과의 문자 입력 상호작용
오픈소스 소프트웨어의 등장
혁신: 개인용 컴퓨터

https://storage.googleapis.com/gweb-cloudblog-publish/images/Epoch_2.max-900x900.png

2세대에 이르러서는 네트워크 속도의 향상, 개인용 컴퓨터/워크스테이션의 보편화, 광범위하고 상호 운용 가능한 프로토콜(IP, TCP, NFS, HTTP) 덕분에 동기식의 투명한 컴퓨팅과 통신이 널리 확산되었습니다.

주요 발전 사항: 리모트 프로시저 호출, 클라이언트/서버 컴퓨팅, LAN, 리더 선출 합의
컴퓨터 상호작용 시간: 10밀리초
특징:
• 10Mbps 네트워크
• TCP/IP 덕분에 인터넷 아키텍처가 전역적으로 확장
완전한 32비트 CPU 단일 칩에 탑재
여러 컴퓨터 간의 공유 리소스
혁신: 월드 와이드 (WWW)

https://storage.googleapis.com/gweb-cloudblog-publish/images/Epoch_3.max-900x900.png

3세대에서는 HTTP WWW 진정한 혁신이 네트워크 컴퓨팅의 대중화를 이끌면서 개인 컴퓨팅의 한계를 돌파했습니다. 인터넷의 지속적이고 기하급수적인 발전과 세계 사용자의 니즈에 발맞춰 나가는 과정에서 현대 컴퓨팅의 많은 설계 패턴이 시기에 확립되었습니다

3세대를 이끈 동력 하나는 단일 CPU 코어의 최대 클록 주파수를 본질적으로 제한했던 데나드 스케일링 종말이었습니다. 이러한 한계로 인해 업계에서는 멀티코어 아키텍처를 도입하게 되었고 비동기식, 멀티 스레드, 동시 실행 개발 환경으로 전환해야 했습니다.

주요 발전 사항: HTTP, 3계층 서비스, 대규모 클러스터, 검색
컴퓨터 상호작용 시간: 1밀리초
특징:
• 100Mbps~1Gbs 네트워크
자율 시스템/BGP
복잡한 앱이 이상 단일 서버에 맞지 않아 다수의 서버로 확장
색인 생성 검색, 인구 규모의 이메일
혁신: 클러스터 기반 인터넷 서비스, 모바일 우선 설계, 멀티스레딩, 명령어 수준 병렬 처리

https://storage.googleapis.com/gweb-cloudblog-publish/images/Epoch_4.max-900x900.png

4세대는 보편적인 이동통신 기기를 통해 수십억 명의 사람들이 사용할 있는 세계적 규모의 서비스를 구현했습니다. 이와 함께 머신러닝의 르네상스는 많은 실시간 제어와 인사이트를 이끌어냈습니다. 모든 것의 근간은 방대한 데이터 세트를 실시간으로 처리하는, 고속 네트워크로 상호 연결된 대규모 상용 컴퓨터 클러스터였습니다.

주요 발전 사항: 전역적인 모바일 데이터 범위, 세계적인 규모의 서비스, 동영상의 보편화
컴퓨터 상호작용 시간: 100마이크로초
특징:
• 10~100Gbps 네트워크, 플래시
• CPU 소켓당 여러 개의 코어
여러 LAN 걸쳐 확장되는 인프라(: GFS, MapReduce, Hadoop)
모바일 , 전역적인 모바일 데이터 범위
혁신: 주류 머신러닝, 특수한 컴퓨팅 하드웨어를 손쉽게 사용 가능, 클라우드 컴퓨팅

https://storage.googleapis.com/gweb-cloudblog-publish/images/Epoch_5.max-900x900.png

이제 5번째 세대로 전환했으며, 세대는 가지 상반된 추세의 중첩을 특징으로 합니다. 우선, ASIC 트랜지스터 수는 계속해서 기하급수적인 속도로 증가하는 반면 클록 속도는 정체되어 있으며 트랜지스터의 비용도 거의 일정하게 유지되고 있습니다. 가지 모두 작은 피처 크기를 달성하기 위해 필요한 복잡성과 투자 비용의 증가로 인해 제약을 받고 있습니다. 이는 모든 컴퓨팅, DRAM, 스토리지, 네트워크 인프라의 비용 개선 또는 성능 효율로 정규화된 성능이 일정 수준에 머무르고 있음을 의미합니다. 이와 동시에 보편적인 네트워크 범위, 광범위하게 배포된 센서, 막대한 데이터가 필요한 머신러닝 애플리케이션으로 인해 원시 컴퓨팅 인프라에 대한 수요가 기하급수적으로 증가하고 있습니다.

주요 발전 사항: 머신러닝, 생성형 AI, 개인 정보 보호, 지속 가능성, 사회적 인프라
컴퓨터 상호작용 시간: 10마이크로초
특징:
• 200Gbps~1+Tb/s 네트워크전력 효율적인 고속 무선 네트워크를 어디서나 사용 가능
갈수록 전문화되는 가속기: TPU, GPU, 스마트 NIC
소켓 수준의 패브릭, 광학 기술, 연합형 아키텍처
연결된 공간, 차량, 어플라이언스, 웨어러블
혁신: 수많은 혁신이 예상됨

컴퓨팅 설계 조직에 대한 근본적인 혁신이 없다면 컴퓨팅 인프라에 대한 사회적 수요를 충족하는 기술 커뮤니티의 능력은 흔들리게 것입니다. 이러한 한계를 극복하기 위한 새로운 아키텍처와 함께 새로운 하드웨어, 그리고 갈수록 비중이 커지는 소프트웨어 아키텍처가 컴퓨팅의 5번째 세대를 정의하게 것입니다.

5번째 컴퓨팅 세대에 어떤 혁신이 이루어질지 예측할 수는 없지만 이전의 세대에 걸쳐 보안과 안정성을 개선하면서 규모와 효율성, 가격 대비 성능이 100 이상 향상되었다는 점은 분명합니다. 규모와 용량에 대한 수요가 계속해서 증가하고 있기 때문에 무어의 법칙과 데나드 스케일링이라는 순풍이 없다면 이러한 성과를 달성하기는 어려울 것입니다. 다만 다음과 같은 폭넓은 움직임이 나타날 것으로 예상됩니다.

  • 선언적 프로그래밍 모델: 전용 프로세서에서 순차적으로 코드를 실행하는 노이만 모델 수십년 동안 개발자들에게 매우 유용했습니다. 그러나 분산 멀티 스레드 컴퓨팅의 부상으로 추상화가 깨지면서 현대의 명령형 코드 대부분은 비동기성, 이기종성, 꼬리 지연 시간, 낙관적 동시 실행, 장애를 관리하기 위해 방어적이고 종종 비효율적인 구조에 집중하게 되었습니다. 앞으로도 복잡성은 계속 증가할 것이므로 의도, 사용자, 비즈니스 로직에 집중하는 새로운 선언적 프로그래밍 모델이 필요합니다. 이와 동시에, 실행 흐름을 관리하고 변화하는 배포 조건에 대응하는 작업은 갈수록 정교해지는 컴파일러와 ML 기반 런타임 위임해야 합니다.

  • 하드웨어 세분화: 이전 세대에서는 CPU, 메모리, 스토리지, 네트워킹이 균형을 이룬 시스템을 사용한 범용 서버 아키텍처가 데이터 센터 전반의 워크로드 니즈를 효율적으로 충족할 있었습니다. 그러나 전문적인 컴퓨팅 니즈와 ML 학습, 추론, 동영상 처리에 맞게 설계하는 경우 스토리지, 메모리 용량, 지연 시간, 대역폭, 통신을 위한 요구사항이 상충하게 되고 이로 인해 이기종 설계가 급격히 확산됩니다. 범용 컴퓨팅 성능이 매년 1.5배씩 개선되었을 때는 워크로드의 10% 대해 5배의 개선을 추구한다는 것은 복잡성을 감안할 타당하지 않았습니다. 그러나 지금은 이러한 개선을 이상 무시할 없습니다. 간극을 해소하기 위해서는 구성 가능한 하드웨어 ASIC 메모리 유닛을 년이 아닌 개월 내에 설계, 확인, 검증, 배포하기 위한 새로운 접근 방법이 필요합니다.

  • 소프트웨어 정의 인프라: 기반 인프라가 복잡해지고 분산되면서 메모리부터 CPU 이르기까지 여러 가상화 계층이 개별 애플리케이션에 대해 단일 서버 추상화를 유지해 왔습니다. 인프라가 계속해서 수평 확장되고 더욱 이기종화됨에 따라 이러한 추세는 향후 세대에도 계속될 것입니다. 하드웨어 세분화, 선언적 프로그래밍 모델, 수천 개의 서버로 구성된 분산 컴퓨팅 환경의 필연적인 결과로 가상화는 개별 서버의 한계를 넘어 단일 서버, 여러 서버, 스토리지/메모리 배열, 클러스터에서 분산 컴퓨팅을 포함하도록 확장되며, 때에 따라서는 최종 결과를 효율적으로 제공하기 위해 캠퍼스 전체의 리소스를 한데 모으게 것입니다.

  • 검증 가능한 보안 컴퓨팅: 지난 세대에서는 컴퓨팅을 효율적으로 유지해야 필요성으로 인해 의도하지 않게 보안 안정성 희생시켰습니다. 그러나 사람들의 일상이 갈수록 온라인으로 옮겨가면서 개인과 기업, 정부를 불문하고 개인 정보 보호와 기밀 유지에 대한 필요성도 급격히 증가하고 있습니다. 정부 정책을 준수하기 위해서뿐만 아니라 갈수록 증가하는 ML 생성 콘텐츠의 계보를 투명하게 공개하기 위해서도 데이터 주권, 데이터(파생된 데이터까지) 물리적인 위치를 제한해야 필요성이 점점 높아질 것입니다. 기본 성능에 얼마간의 희생이 따르더라도 이를 가장 중요한 요구사항이자 제약조건으로 여겨야 합니다.

  • 지속 가능성: 컴퓨팅의 처음 3 세대에서는 고정 전력 대비 기하급수적인 성능 개선이 이루어졌습니다. 4세대에 이르러 데나드 스케일링이 끝나면서 컴퓨팅과 관련된 세계 전력 소비량이 빠르게 증가했고, 이러한 증가분의 일부는 이전의 온프레미스 설계에 비해 전력 효율성이 2~3 높은 클라우드 호스팅 인프라로의 전환을 통해 상쇄되었습니다. 또한 클라우드 제공업체들은 탄소 중립을 먼저 달성한 다음 무탄소 전원으로 전환하기 위한 광범위한 작업에 착수했습니다. 그러나 5세대에서는 데이터와 컴퓨팅에 대한 수요가 계속 증가할 것이며, 속도도 빨라질 가능성이 높습니다. 따라서 전력 효율성과 탄소 배출이 가장 중요한 시스템 평가 측정항목이 것입니다. 특히 인프라 구축과 제공의 수명 주기 전체에 걸친 내재 탄소 대해 나은 가시성과 최적화가 필요하게 됩니다.

  • 알고리즘 혁신: 기하급수적인 성능 향상이라는 순풍으로 인해 이제까지 소프트웨어의 효율성 개선이 무시되는 경우가 많았습니다. 기반 하드웨어 구성요소의 개선 속도가 느려지면서 앞으로는 소프트웨어와 알고리즘 기회로 초점이 옮겨갈 것입니다. 연구 따르면 시스템 코드에는 소프트웨어 최적화를 2~10 개선할 기회가 많다고 합니다. 이와 같은 소프트웨어 최적화 기회를 효율적으로 파악하고, 그에 따른 혜택을 프로덕션 시스템에 대규모로 원활하게 안정적으로 전달하기 위한 기법을 개발하는 일이 중요한 기회가 것입니다. 최근 코딩 LLM 혁신을 활용하여 작업을 부분적으로 자동화하면 5세대의 촉진제가 것입니다

결국 5세대에서 가장 중요한 것은 MIPS 비용, DRAM GB 비용, Gb/s 비용 낮은 수준의 구성요소별 측정값보다는 전체적인 사용자-시스템 효율성(초당 유용한 응답 ) 것입니다. 또한 효율성 단위도 단순히 단위 비용당 성능으로 측정되는 것이 아니라 전력 소비와 탄소 배출을 명시적으로 반영하고 보안과 개인 정보 보호를 측정항목으로 사용하면서 사회의 의존도가 갈수록 높아지는 인프라에 대한 신뢰성 요구사항을 반영하게 것입니다. 종합적으로 보면 차세대 인프라를 제공하기 위한 아직 활용되지 않은 기회가 많이 있습니다.

  • 하드웨어와 소프트웨어 전반에 분산 인프라의 수평 확장 효율성을 10 이상 높일 있는 기회

  • 소프트웨어 정의 인프라를 통해 애플리케이션 균형점, 컴퓨팅, 가속기, 메모리, 스토리지, 네트워크와 같은 다양한 시스템 리소스 간의 비율을 맞추는 있어 다른 10배의 기회 

  • 기존의 획일적인 범용 컴퓨팅 아키텍처 대비 차세대 가속기 세그먼트별 하드웨어 구성요소에서 10 이상의 기회

  • 마지막으로, 정량화하기 어렵지만 개발자 생산성을 향상시키는 동시에 대폭 개선된 안정성과 보안을 제공하기 위한 절대적으로 중요한 기회

이러한 추세를 종합해 보면 지금은 차세대 인프라 서비스를 정의하고 차세대 컴퓨팅 서비스를 실현할 다른 극적인 1,000배의 효율성 향상을 목전에 시점입니다. 그리고 이것은 아마도 멀티모달 모델과 생성형 AI 혁신을 중심으로 이루어질 가능성이 높습니다. 차세대 컴퓨팅의 의미를 정의, 설계, 배포할 기회는 자주 오지 않습니다. 5번째 세대의 구조적 변화는 아마도 역사상 가장 기술적 변화와 과제를 수반할 것입니다. 이에 대응하기 위해서는 컴퓨팅의 초창기 시절부터 지금까지는 없었던 수준의 책임감과 협업, 비전이 필요할 것입니다.

https://storage.googleapis.com/gweb-cloudblog-publish/images/5_Epoch_Infographic.max-2000x2000.jpg
게시 위치