게시자: John Barrus, Google Brain 팀 소속 Cloud TPU, Google Cloud 및 Zak Stone 담당 제품 관리자 겸 TensorFlow 및 Cloud TPU 담당 제품 관리자
Cloud TPU는 Google에서 설계한 하드웨어 액셀러레이터 제품군으로, TensorFlow로 프로그래밍한 특정 ML 워크로드를 가속화하고 확장하도록 최적화되었습니다. 맞춤형 ASIC를 기반으로 빌드된 Cloud TPU는 각각 최대 180테라플롭스의 부동 소수점 성능과 64GB의 고대역폭 메모리를 단일 보드에 통합한 제품입니다. 이 보드는 단독으로 사용하거나 초고속 전용 네트워크를 통해 함께 연결하여 수 페타플롭스 수준 성능의 ML 슈퍼컴퓨터를 형성할 수 있습니다. 이를 "TPU 포드(TPU pod)"라고 합니다. 올해 하반기에 GCP에서 규모가 더 큰 이러한 슈퍼컴퓨터를 제공할 계획입니다.
우리는 대상 TensorFlow 워크로드에 대해 비용 대비 뛰어난 성능을 제공하고 ML 엔지니어와 연구자가 더욱 신속하게 반복 작업을 수행할 수 있도록 Cloud TPU를 설계했습니다. 예를 들어 다음과 같습니다.
- 공유 컴퓨터 클러스터에서 작업이 예약할 때까지 기다리지 않고 직접 제어하고 사용자설정할 수 있는 Google Compute Engine VM을 통해 네트워크에 연결된 Cloud TPU에 대화식으로 독점 액세스할 수 있습니다.
- 비즈니스에 필요한 ML 모델을 훈련할 때까지 수일 또는 수 주 동안 기다릴 필요 없이, Cloud TPU에서 밤새 동일한 모델의 여러 변형을 훈련하고 그다음 날에 프로덕션 환경에 가장 정확히 훈련된 모델을 배포할 수 있습니다.
- 단일 Cloud TPU를 사용하고 이 튜토리얼을 따라 ResNet-50을 ImageNet 벤치마크 도전에서 기대되는 정확도 수준까지 훈련할 수 있으며, 이 작업은 하루가 채 안 걸리고 $200 미만의 비용으로 모든 작업이 가능합니다!
더욱 쉬워진 ML 모델 훈련
이전에는 맞춤형 ASIC 및 슈퍼컴퓨터를 위한 프로그램을 작성하려면 심층적인 전문 기술이 필요했습니다. 이와 반대로 고급 TensorFlow API를 사용하면 Cloud TPU를 프로그래밍할 수 있으며, 우리는 기준으로 사용할 수 있는 고성능 Cloud TPU 모델 구현 세트를 아웃소스로 제공하여 바로 시작하는 데 도움이 되도록 했습니다.
개발자가 들이는 시간과 수고를 덜기 위해, 우리는 성능은 물론이고 표준 데이터세트에 대해 기대되는 정확도의 충족 여부와 관련하여 이러한 모델 구현을 지속적으로 테스트하고 있습니다.
앞으로 계속해서 추가 모델 구현을 오픈소스로 제공할 예정입니다. 모험심이 강한 ML 전문가는 우리가 제공하는 문서와 도구를 사용하여 스스로 Cloud TPU를 위해 다른 TensorFlow 모델을 최적화할 수 있습니다.
지금은 우선 Cloud TPU로 시작하고 올해 하반기에 TPU 포드가 출시되면 짧은 시간 안에 정확도가 크게 향상된 제품을 이용할 수 있게 될 것입니다. 저희가 NIPS 2017에서 발표한 바와 같이, ResNet-50과 Transformer 훈련 시간이 거의 하루 꼬박 걸리던 데서 완전한 TPU 포드에서는 30분 미만으로 단축되는데, 이때 어떠한 코드도 변경할 필요가 없습니다.
업계 최고의 투자 관리 회사인 Two Sigma는 Cloud TPU의 사용 편의성과 성능에 깊은 인상을 받았습니다.
"우리는 여러 가지 이유에서 클라우드에 대한 딥 러닝 연구에 집중하기로 결정했지만, 주로 최신 머신러닝 인프라를 이용하기로 결정했습니다. Google Cloud TPU는 혁신적이고 빠르게 진화하는 딥 러닝 지원 기술을 잘 보여주는 예로서, 우리는 TensorFlow 워크로드를 TPU로 전환으로 말미암아 새로운 모델 프로그래밍 작업의 복잡성과 이러한 모델의 훈련 소요 시간이 모두 크게 단축됨으로써 생산성이 대폭 향상되었다는 사실을 확인했습니다. 다른 액셀러레이터 클러스터 대신 Cloud TPU를 사용함으로써 복잡한 클러스터 통신 패턴을 관리해야 하는 작업을 수행하는 데 주의를 뺏기지 않고 모델 빌드 작업에 집중할 수 있었습니다."
— Alfred Spector, Two Sigma의 기술 담당 최고 책임자
확장 가능한 ML 플랫폼
Cloud TPU는 ML 컴퓨팅 리소스 계획 및 관리 작업도 단순화합니다.
- 팀에 최첨단 ML 가속화를 제공하고 요구 사항의 변화에 따라 동적으로 수용 능력을 조정할 수 있습니다.
- 전문화된 전력, 냉각, 네트워킹 및 저장소 요구 사항에 맞게 현장에서 ML 컴퓨팅 클러스터를 설계, 설치 및 유지하는 데 필요한 자금, 시간 및 전문 기술을 쓰는 대신 수년에 걸쳐 Google에서 고도로 최적화되고 긴밀히 통합된 대규모 ML 인프라를 활용할 수 있습니다.
- 이제는 대규모 워크스테이션 및 서버 컬렉션에 걸쳐 드라이버를 최신 상태로 유지하느라 씨름할 필요가 없습니다. Cloud TPU는 사전 구성된 상태로 제공되므로 드라이버를 따로 설치할 필요가 없습니다!
- 모든 Google Cloud 서비스를 보호하는 이와 동일한 정교한 보안 메커니즘 및 관행을 통해 보호됩니다.
"Google Cloud TPU로 작업한 이후로 계속해서 아주 빠른 속도를 유지할 수 있었습니다. 일반적으로 수일이 걸리던 작업을 이제 몇 시간 내에 처리할 수 있습니다. 딥 러닝은 자율주행차를 운행하는 소프트웨어의 근간으로 빠르게 자리잡고 있습니다. 데이터가 많을수록 더 나은 결과를 얻을 수 있으며 매주 알고리즘에서 커다란 혁신이 이루어지고 있습니다. 이 부문에서 우리는 Cloud TPU를 통해 차량의 최신 내비게이션 관련 데이터와 연구 조사 커뮤니티를 통해 이루어지는 최신 알고리즘 발전을 통합함으로써 빠르게 작업을 수행할 수 있습니다."
— Anantha Kancherla, Lyft 자율주행 레벨 5 소프트웨어 책임자
Google Cloud에서 우리는 고객에게 모든 ML 워크로드에 최적인 클라우드를 제공하기를 원하며 앞으로 Cloud TPU와 함께 다양한 고성능 CPU(Intel Skylake 포함) 및 GPU(NVIDIA의 Tesla V100 포함)를 제공할 예정입니다.
Cloud TPU 시작하기
Cloud TPU에 대한 고객의 열렬한 반응을 보며 무척 흐뭇한 기분입니다. 수요 관리에 도움이 되도록 여기에 가입하여 Cloud TPU 견적을 요청하고 ML 요구 사항을 알려주시면 고맙겠습니다. 가능한 한 빨리 Cloud TPU를 이용하실 수 있도록 최선을 다하겠습니다.
Cloud TPU에 대한 자세한 내용을 알아보려면 2018년 2월 27일에 진행되는 Cloud TPU 웨비나에 참여하시기 바랍니다.