엔비디아, A100 GPU에 탑재된 TF32로 AI 훈련 가속화 지원
엔비디아, A100 GPU에 탑재된 TF32로 AI 훈련 가속화 지원
  • 박채균 기자
  • 승인 2020.05.22 09:50
  • 댓글 0
이 기사를 공유합니다

TF32를 통해 A100 GPU는 볼타 GPU 대비 최대 20배 향상된 AI 성능을 제공한다.
TF32를 통해 A100 GPU는 볼타 GPU 대비 최대 20배 향상된 AI 성능을 제공한다.

[아이티비즈 박채균 기자] 엔비디아(CEO 젠슨 황)는 자사 A100 GPU의 중심이 되는 암페어(Ampere) 아키텍처에 추가된 새로운 연산모드인 TF32를 통해 AI 훈련 가속화를 지원한다고 22일 밝혔다.

TF32는 AI와 특정 HPC 애플리케이션에서 핵심적으로 사용되는 텐서연산이라고도 불리는 행렬연산 처리를 위한 엔비디아 A100 GPU의 새로운 연산모드다. TF32는 A100 GPU의 텐서 코어에서 실행되며, 볼타 GPU의 단정밀도부동소수점연산(FP32)에 비해 최대 10배 빠른 속도를 제공할 수 있다. 또한, A100에서 TF32와 구조적 희소성 기능을 결합하면 볼타 대비 최대 20배 성능을 향상할 수 있다.

한 형식의 지수 내에서 비트의 수는 개체 크기를 측정할 수 있는 범위를 결정한다. 정밀도는 기수나 소수점 뒤에 있는 부동소수점 숫자에 해당하는 가수에 사용된 비트의 수에 따라 결정된다. 좋은 형식은 균형을 이루고 있다. 정밀도를 전달하기 위해서는 너무 많은 bit를 사용하지 않고 적정한 양의 비트를 사용해 처리속도를 늦추지 않고 메모리를 차지하지 않아야 한다.

범위와 정확도 성능 측면에서 균형 잡힌 모습을 보여주는 TF32
범위와 정확도 성능 측면에서 균형 잡힌 모습을 보여주는 TF32

상기 차트는 TF32가 어떻게 텐서연산에서 균형을 맞춰 하이브리드 방식을 취했는지 나타낸다. TF32는 반정밀도(FP16) 수학과 동일한 10비트 가수를 사용하며 AI 워크로드에서 요구되는 정밀도를 충분히 충족시킨다. 이와 동시에 TF32는 FP32와 동일한 8비트 지수를 사용하므로, 동일한 숫자 범위를 지원할 수 있다.

TF32는 이 조합을 통해 단정밀도수학과 특히 딥 러닝과 많은 HPC 애플리케이션에서 핵심적인 역할을 하는 대규모 곱셈 누적 연산을 충분히 대체할 수 있다. 사용자는 엔비디아 라이브러리를 사용하는 애플리케이션으로 코드 변경없이 TF32의 이점을 활용할 수 있다. TF32 텐서 코어는 FP32 인풋에서 작동하며 FP32에서 결과를 도출한다. 비행렬연산에서도 FP32를 사용한다.

A100은 최대 성능을 내기위해 16비트 연산 기능이 강화돼 FP16과 BF16을 TF32의 두 배 비율로 지원한다. 사용자는 자동혼합정밀도을 사용해 몇 줄의 코드만으로 2배 높은 성능을 얻을 수 있다.

TF32는 가장 까다로운 대화형 AI 모델 중 하나인 BERT를 FP32 대비 6배 빨리 훈련시킨다. 행렬연산에 의존하는 AI 훈련과 HPC 애플리케이션의 애플리케이션-레벨 결과는 워크로드에 따라 다를 것이다. TF32의 정확성을 검증하기 위해 컴퓨터 비전부터 자연어 처리, 추천 시스템까지 다양한 애플리케이션 분야에서 TF32를 AI 네트워크를 훈련하는데 활용했다. 그 결과, TF32는 FP32와 동일한 수준의 수렴-정확도를 보였다. 

TF32는 BERT를 FP32 대비 6배 빨리 훈련시킨다
TF32는 BERT를 FP32 대비 6배 빨리 훈련시킨다

이에, 엔비디아는 뉴럴 네트워크의 핵심 연산을 가속화하는 cuDNN 라이브러리의 기본값으로 TF32를 채택했다. 엔비디아는 또한 AI 프레임워크를 개발하는 오픈소스 커뮤니티와 협력해 A100 GPU에서도 TF32를 기본 교육 모드로 사용할 수 있도록 하고 있다. 개발자들은 6월부터 엔비디아 GPU 최적화 소프트웨어 허브인 엔비디아 GPU 클라우드(NGC)에서 TF32 지원 파이토치(PyTorch) 프레임워크 버전과 텐서플로우(TensorFlow) 프레임워크 버전을 사용할 수 있다.

텐서플로우 제품 관리 디렉터 케말 엘 무자 히드는 “TF32는 FP32 수준의 정확도를 유지하면서 AI 훈련과 추론용 애플리케이션의 성능을 획기적으로 개선한다. 텐서플로우에서 TF32을 기본적으로 지원해 데이터 사이언티스트들이 코드를 변경하지 않아도 엔비디아 A100 텐서 코어 GPU에서 획기적으로 빠른 속도를 경험할 수 있도록 할 것”이라며 소감을 밝혔다.

파이토치 팀의 관계자는 “머신 러닝 연구원, 데이터 사이언티스트, 엔지니어는 솔루션 개발 시간이 단축되길 원한다. TF32가 파이토치에 기본으로 통합되면, 엔비디아 암페어 아키텍처 기반 GPU를 사용할 때 FP32의 정확성을 유지하면서도 코드를 바꿀 필요없이 성능을 향상시킬 수 있다”고 말했다.

반복행렬수학 연산 알고리즘인 선형 솔버(linear solver)라고 불리는 HPC 애플리케이션들도 TF32의 이점을 활용할 수 있다. 이는 지구 과학, 유체 역학, 헬스케어, 재료 과학, 원자력뿐 아니라 석유와 가스 탐사 등 광범위한 분야에서 사용된다.

FP32를 사용해 FP64 정밀도를 달성한 선형 솔버는 이미 30년 이상 사용됐다. 작년에 실시한 국제열핵융합실험로(ITER) 융합반응연구에서 혼합정밀법이 엔비디아 FP16 텐서 코어를 이용한 솔버들의 처리속도를 3.5배 향상시켰다는 점이 입증됐다. 이 연구에 사용된 동일한 기술을 통해 서밋 슈퍼컴퓨터는 HPL-AI 벤치마크에서 성능이 3배 향상된 된 것으로 나타났다.

신형 솔버 외에도 HPC의 다른 도메인은 FP32 행렬연산을 사용한다. 엔비디아는 업계와 협업해 현재 FP32을 사용하고 있는 곳에 TF32의 적용 사례를 늘려가며 연구할 계획이다. 



댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.