Skip to content

기글하드웨어기글하드웨어

인터넷 / 소프트웨어 : 윈도우즈, 리눅스, 기타 운영체제, 각종 어플리케이션, 프로그램, 소프트웨어, 인터넷, 인터넷 서비스에 대한 이야기, 소식, 테스트, 정보를 올리는 게시판입니다.

Extra Form
참고/링크 http://www.4gamer.net/games/076/G007660/20170518044/

1.jpg

 

GTC 2017에서 NVIDIA의 차세대 아키텍처인 볼타, 그리고 볼타를 사용한 GPU인 GV100이 발표됐습니다. 그리고 볼타 세대 GPU체는 새로운 CUDA인 CUDA 9이 쓰입니다.

 

2.jpg

 

 

이 CUDA 9에 대해 설명하는 세션인 CUDA 9 and Beyond가 Mr. CUDA라고도 불리는 Mark Harris(Chief Technologist GPU Computing, NVIDIA)에 의해 열렸습니다.

 

 

CUDA 9의 새로운 요소 1. 텐서 코어의 지원

 

3.jpg

 

CUDA 9의 새로운 특징은 위 4개를 꼽을 수 있습니다. 볼타 플랫폼 지원이라 써져 있으나 CUDA 9는 기존의 NVIDIA GPU도 지원합니다.

 

4.jpg

 

첫번재 새로운 요소는 볼타 세대 GPU에 탑재되는 텐서 코어(Tensor Core)의 지원입니다. 텐서 코어가 무엇인가에 대해서는 https://gigglehd.com/gg/1076083 여기에서 설명했으니 여기에선 간단히 소개하고 넘어가지만, 머신 러닝 AI에서 많이 쓰이는 대규모 행렬 계산이나 연산에 유용한 전용 연산 유닛입니다.

 

5.jpg


텐서 코어가 수행할 수 있는 가장 기본적인 계산은 4x4 행렬의 연산입니다.

 

6.jpg

 

볼타 세대 GPU는 4x4 행렬 계산을 두 세트로 묶어 하나의 Warp에서 처리할 수 있습니다.

 

7.jpg

 

볼타는 16x16 행렬 연산을 16개의 Warp로 분해해 실행합니다. CUDA 9는 WMMA(Warp Matrix Multiply and Accumulate)이라는 새로운 데이터 타입(계산 모델)을 이용해 거대한 크기의 행렬 계산을 할 수 있습니다. 물론 Warp로 분해해서 처리할 수 있습니다. 위 슬라이드는 8x8 행렬 계산인데 WMMA를 이용해 4x4 행렬로 분해해서 연산했습니다.

 

8.jpg

 

WMMA를 대상으로 한 로드/스토어 명령을 새로 만들어, 행렬 형태의 데이터를 Warp의 데이터 스레드에 배포하거나 반대로 메모리에 내보낼 수 있습니다.

 

9.jpg

 

CUDA 9 WMMA를 이용해 거대한 행렬 계산을 했을 때의 처리 능력을 볼타 GV100과 파스칼 GP100에서 비교했습니다. 볼타 세대의 GPU는 기존에 없던 행렬 계산 전용 프로세서인 텐서 코어가 있어 압도적인 성능 차이가 납니다. 이 그래프는 CUDA의 수학 라이브러리인 cuBLAS에서 GEMM(GEneral Matrix-matrix Multiplication)의 성능을 비교한 것인데 FP32에서 1.8배, FP16에서 9.3배 차이가 납니다.

 

 

CUDA 9의 새로운 요소 2. 데이터 스레드의 자유로운 그룹화

 

10.jpg

 

CUDA 9의 두번째 특징은 볼타 세대 이전, 구체적으로는 케플러~파스칼 세대 GPU에 도움을 주는 기능입니다. Warp를 원하는 크기로 그룹으로 나눠, 그룹 사이에 동기화하는 것이죠. NVIDIA GPU에서 일반적인 1 Warp는 32개의 데이터 스레드가 되는데, 이를 4개의 데이터 스레드로 구성된 8개의 그룹으로 나눌 수 있습니다.

 

11.jpg

 

그리고 이렇게 나뉘어진 데이터 스레드는 특정 그룹끼리 동기화를 할 수 있습니다. 그룹별로 처리하는 GPU가 다른 멀티 GPU 환경에서도 CUDA 9가 명시적인 동기화를 취할 수 있는 것입니다.

 

 

12.jpg

 

CUDA 8까지는 데이터 스레드의 처리가 끝난 시점을 동기화하는 시기로 잡았으나, cUDA 9는 개발자가 동기화 지점을 명시적으로 만들 수 있습니다. 또 데이터 스레드 동기화는 데이터 스레드 단위, Warp나 그보다 더 작은 수의 데이터 스레드로 구성된 그룹 사이의 동기화, 멀티 GPU 사이의 데이터 스레드 그룹 동기화가 가능합니다.

 

13.jpg

일반적인 GPU의 명성 실행은 SIMT(Single Instruction Multiple Threads). 하나의 명령으로 여러 데이터 스레드를 처리합니다. 다른 데이터 스레드에 같은 메모리 어드레스 데이터가 포함돼 있고, 거기에 대한 작업을 병렬로 실행한 경우 명시적인 동기화 지정이 불가능했습니다. CUDA 8 이전에는 동기화의 개념이 없어 모든 데이터 스레드에 대한 처리가 끝나면 종료시키는 구조였습니다. 그래서 예상한 결과가 나오지 않거나 디버깅하기 힘든 버그를 초래하기도 했지요.

 

 

14.jpg

 

CUDA 9는 데이터 스레드 단위부터 GPU 단위까지 다양한 단위로 동기화를 할 수 있습니다. 그래서 기존의 문제를 해결함은 물론, 파스칼 세대 이전 GPU에서도 사용할 수 있다는 게 큽니다.

 

 

15.jpg

 

명시적인 데이터 스레드 동기화는 복잡한 데이터 스레드의 병렬 실행을 안전하게 할 수 있는 구조입니다.

 

 

CUDA 9의 새로운 요소 3. 데이터 스레드 사이에 데이터를 보거나 작성 가능

 

동기화 기능은 파스칼 세대 이전 GPU에서도 쓸 수 있으나, 역시 볼타 세대 GPU에서 위력을 발휘합니다. 그리고 이것이 CUDA 9의 세번째 특징입니다. 볼타 세대 GPU는 데이터 스레드의 동기화는 물론이고, 데이터 스레드 사이에 메세지를 교환하거나 데이터 참조가 가능합니다.

 

16.jpg

 

A, B, C라는 세가지 목록 구조 데이터가 있고, A와 C에 GPGPU 처리가 이루어지고 있다고 칩시다. 처리 자체에는 문제가 없습니다. 그런데 A와 C는 서로의 메모리 어드레스를 참조하는 목록 구조의 데이터고, 거기에 다른 목록 구조의 데이터인 B를 통합하려 합니다. 목록 구조 데이터를 재조합한 다음 데이터를 지시 포인터(메모리 어드레스 값)에 재작성하기에, 포인터 갱신이 다른 GPGPU 처리에서 무시되지 않도록 A촤 C를 잠궈야 합니다.

 

 

17.jpg

 

그리고 A촤 C 사이에 B가 오도록 포인터를 갱신하고.

 

18.jpg

 

데이터 쓰기가 끝나면 잠금을 해제합니다. 이런 처리를 실현하려면 데이터 스레드에 여러 작업을 할 필요가 있으나, CUDA는 그런 처리는 하지 않는다는 전제로 설계한 플랫폼입니다.

 

19.jpg

 

파스칼 세대 이전의 GPU에선 하나의 Warp(데이터 스레드 32개)에 대해서 프로그램 카운터와 스택 포인터가 하나씩밖에 없었습니다. 프로그램 카운터가 가리키는 메모리 어드레스에 저장된 명령을 여러 데이터에 수행할 수밖에 없었지요.

 

20.jpg

 

그래서 조건 분기 프로그램 명령이 실행됐을 때, if 조건을 충족하는 데이터 스레드에 대해서만 A; 와 B; 작업을 수행하고, 그렇지 않은 else 조건의 데이터 스레드에는 X;와 Y; 작업을 수행하는 방식으로 여러 스레드에 작업을 했습니다.

 

Warp의 데이터 스레드는 공통 프로그램 카운터와 스택 포인터로 처리하기에 각 데이터 스레드에 별도의 처릴르 적용하는 매커니즘이 CUDA에 없었습니다. A;와 B;, X;와 Y;에 동기화를 처리하는 건 아키텍처 레벨에서 할 수 없었습니다.

 

21.jpg

 

이에 비해 볼타 세대 GPU는 Warp의 데이터 스레드가 별도의 프로그램 카운터와 스택 포인터를 가질 수 있도록 GPU 아키텍처가 개선됩니다. 32개의 데이터 스레드가 개별적인 프로그램 카운터와 스택 포인터를 갖게 되는 거지요.

 

22.jpg

 

따라서 if 조건을 만족하는 데이터 스레드 A; 처리가 끝난 단계에서 다른 데이터 스레드와 동기화하거나 다른 데이터 스레드 연산 내용을 참조하는 작업이 가능해졌습니다. 사실 이것은 프로그램 병렬도를 높여 성능을 끌어올리는 게 아니라 더 복잡한 프로그래밍 모델이 가능하게 되는 확장이지요.

 

23.jpg

 

그리고 모든 데이터 스레드가 데이터를 복사하거나 데이터 스레드 내용을 통합하는 처리랄 할 수 있습니다.

 

24.jpg

 

데이터 스레드마다 다른 작업을 수행하는 사례입니다. 비트 마스크라는 규칙을 여럿 준비하고, 규칙에 맞춰 데이터 스레드를 분류하고 여기에 여러 작업-스레드 사이의 동기화-를 처리하는 것이 볼타 세대 GPU에서 가능합니다.

 

 

지포스용 볼타에 텐서 코어가 들어갈 것인가?

 

CUDA 8에서 CUDA 9로 업데이트되며 프로그래밍 모델이 크게 향상돼 CUDA를 사용하는 개발자에 큰 영향을 미칠 것으로 보입니다. NVIDIA는 CUDA 8 이전의 CUDA 애플리케이션은 CUDA 9에서 다시 컴파일해 호환성을 유지할 수 있으나, 앞으로는 CUDA 9 스타일로 개발하길 권장하고 있습니다. 특히 데이터 스레드 동기화 시점의 명시는 CUDA 9에서 매우 중요한 요소입니다.

 

그럼 CUDA 9는 언제 나오느냐. GTC 2017에선 밝히지 않았습니다. 다만 볼타 GPU의 출시에 맞춰 등장하는 게 당연하기에 2017년 3분기가 될 것으로 보입니다. CUDA는 테슬라나 쿼드로는 물론이고 지포스에서도 동작하지만, 앞으로의 지포스에서 CUDA 9의 모든 기능이 동작할지는 아직 모릅니다. NVIDIA 직원에게 물어봐도 '앞으로 나올 제품에 대해선 대답하지 않는다'가 돌아올 뿐.

 

지포스에서 CUDA를 쓰는 사람에게 신경쓰이는 건 지포스 GPU에 텐서 코어가 탑재되느냐는 것입니다. 텐서 코어는 머신 러닝 AI와 컴퓨터 비전 처리를 위한 연산 유닛이며, 다이렉트 X나 벌칸 같은 그래픽 API에서 쓸 방법이 없습니다. NVIDIA GPU에 의한 가속이 가능한 물리 시뮬레이션 엔진 PhsX에서 텐서 코어를 지원하면 게임에서 쓸 수 있을 정도겠지요. 당분간은 지포스에 텐서 코어가 올라갈 가능성은 낮다고 봅니다.

 

그리고 텐서 코어를 제외하면 볼타와 파스칼 아키텍처의 차이는 16nm와 12nm 등 공정 설계 외엔 없다고 봐도 무방할 것이나, 볼타의 세부 스펙이 공개되면 텐서 코어 외에 무엇이 다른지도 알 수 있을 것입니다. 사실 2017년 4월에 플래그쉽인 타이탄 Xp, 5월 17일에 지포스 GT 1030까지 파스칼 라인업이 나온 것을 감안하면 볼타 기반 지포스가 곧 나오진 않을 것입니다. AMD의 차세대 GPU인 라데온 RX 베가가 나온 후에나 움직임이 보이겠죠.

 

25.jpg

 

볼타 세대의 테슬라 V100은 싱글 슬롯 PCI-E 확장 카드로도 나옵니다.



  • profile
    Renfro.      the last resort 2017.05.19 15:45
    텐서코어의 4x4 매트릭스 계산이면 사원수 계산에도 유용할 것 같네요.
  • profile
    Kovsky 2017.05.19 15:56
    코어 크기 어마어마하네요;;
  • ?
    포인트 팡팡! 2017.05.19 15:56
    Kovsky님 축하합니다.
    팡팡!에 당첨되어 5포인트를 보너스로 받으셨습니다.
  • ?
    마라톤 2017.05.19 16:09
    좋은 정보 감사합니다. ^_^
  • ?
    Veneno 2017.05.19 21:52
    유익한 정보 감사드립니다
    CUDA9의 발전은 기쁘나 하드웨어에 대한 시각이 두가지로 나뉘는군요
    하나는 극적으로 높아진 스펙 둘은 기존 빅칩보다도 너무 비대해져
    공냉으로 발열 감당안되던 페르미나 수냉이 필수로 보이는 R9 FURY가 떠올라 반갑지 않네요
    테슬라만 그렇다면 그러려니 하겠지만
    기존 테슬라에서 일반제품군으로 오면서 조금 잘린정도로 유사하게 나왔기에
    시기적으로 2018년쯤 일반제품화 될듯 보이는데 일반 제품들은 어찌될지 궁금해집니다
  • ?
    wwsun98 2017.05.19 23:20
    페르미는 설계 문제에요.

작성된지 4주일이 지난 글에는 새 코멘트를 달 수 없습니다.


  1. NVIDIA, TensorRT 가속을 지원하는 드라이버를 출시

    NVIDIA가 지포스 게임 레디 드라이버 WHQL 545.84를 공개했습니다. 여기에선 Automatic1111 웹UI 버전의 스테이블 디퓨전 처리 속도를 늘려주는 텐서RT 가속이 추가됩니다. 이 기능을 쓰려면 TensorRT Extension for Stable Diffusion을 ...
    Date2023.10.19 소식 By낄낄 Reply2 Views810 file
    Read More
  2. Microsoft PowerToys 이거 좋네요

    여러 장의 이미지 크기를 한 번에 편집하는 방법 없나 싶어서 찾아본 건데 다른 기능들도 많이 가지고 있네요?   https://learn.microsoft.com/en-us/windows/powertoys/install   마이크로소프트 스토어나 파워쉘에서 winget install Mic...
    Date2023.10.18 일반 By헬로월드 Reply8 Views1274 file
    Read More
  3. No Image

    무료 이메일 계정을 제공해 주는 곳이 어디가 있을까요?

    황혼도 아니면서 전화 회선이 여러 개라서 국내에서 그나마 가장 쓰기 무난한 샤오미 폰을 사용 중입니다.   그리고 얼마 전에 기기를 하나 더 들여왔는데요. 비록 보안은 떨어지지만, 가장 먼저 적은 것처럼 제가 잼 본드도 아니니 그건 ...
    Date2023.10.18 질문 By랩탑 Reply27 Views1346
    Read More
  4. No Image

    X, 신규 사용자들은 년 1달러를 내야 됩니다.

    Starting today, we're testing a new program (Not A Bot) in New Zealand and the Philippines. New, unverified accounts will be required to sign up for a $1 annual subscription to be able to post & interact with other p...
    Date2023.10.18 소식 Bytitle: 폭8책읽는달팽 Reply27 Views1889
    Read More
  5. NVIDIA RTX 비디오 초해상, 지포스 RTX 20 시리즈에서도 지원

    NVIDIA가 슈퍼 RTX 비디오 초해상 업데이트 1.5를 발표했습니다. AI 모델을 새로 교육해 디테일을 살리고 더 선명하게 보이도록 조정했습니다. 또 지포스 RTX 20 시리즈에서도 RTX 30/40 시리즈와 같은 초해상 AI 영상 처리를 쓸 수 있습...
    Date2023.10.18 소식 By낄낄 Reply5 Views841 file
    Read More
  6. 라데온 RX 7900 XTX용 ROCm/PyTorch 지원 드라이버 출시

    라데온 RX 7900 XTX용 ROCm/PyTorch 지원 드라이버가 출시됐습니다. 게임용 라데온 그래픽카드에서 ROCm을 지원하는 첫 드라이버입니다. 파이토치는 페이스북에서 개발한 딥러닝 라이브러리입니다.
    Date2023.10.18 소식 By낄낄 Reply0 Views459 file
    Read More
  7. 샤오미, 하이퍼 OS로 개명

      MiOS가 https://mios.com/ 에서 먼저 쓰고 있어서 분쟁을 탈주하기 위해서 HyperOS로 바꿨습니다.   뭐가 Hyper 할까요?
    Date2023.10.17 소식 Bytitle: 폭8책읽는달팽 Reply22 Views2132 file
    Read More
  8. AI로 인해, 스택오버플로우 28% 정리해고

        '내가 삽질하는 문제의 대부분은 Stack Overflow에 있다' 란 말이 있듯, 스택 오버플로는 개발자들의 많은 사랑을 받았죠...   그러나, GPT등의 코드 알려주기 등으로 인해 경영위기에 다달랐고, 28%를 정리해고 했습니다. OpenAI는 ...
    Date2023.10.17 소식 Bytitle: 폭8책읽는달팽 Reply5 Views1340 file
    Read More
  9. 좋은 챌린지로 AI를 이용해서 4만 달러 벌기 쉽죠?

    베수비오 화산이 폭발하는걸 보고 대 플리니우스(이사람도 폭발 보고 기록하다 사망)의 이름을 따서 지은 플리니식 분화에 여러 도시들이 묻혔습니다.   제일 유명한게 폼페이죠. 기타 헤르쿨라네움이 있는데요. 거기서 스크롤을 하나 발...
    Date2023.10.17 소식 Bytitle: 폭8책읽는달팽 Reply0 Views916 file
    Read More
  10. MS, 윈도우 11에서 NTLM 인증 제거할 것

        MS는 지난 11일 추후 Windows 11에서 NTLM 인증 방식을 제거할 것이라 발표하였습니다. NTLM (New Technology LAN Manager)는 원격으로 사용자를 인증할 때 사용되던 프로토콜입니다. Windows 2000부터 Kerberos가 NTLM을 대체하였으...
    Date2023.10.17 소식 By헥사곤윈 Reply8 Views1395 file
    Read More
  11. OpenBSD 7.4 배포

      OpenBSD 7.4가 정식 배포되었습니다. 원문에 가시면 여러 변경사항이 있는데, ARM 지원이 크게 향상된 듯 하네요. 자세한 내용은 원문을 확인하시기 바랍니다. P.S. 글이 너무 짧아져서 죄송합니다만 OpenBSD는 제대로 써본적이 없어서...
    Date2023.10.17 소식 By헥사곤윈 Reply3 Views763 file
    Read More
  12. 비트코인이 떡상했다가 떡락. 도대체 왜?

    미국 증권위원회가 비트코인의 현물 ETF를 승인했다는 뉴스가 퍼지면서 비트코인이 떡상했습니다. 하지만 그 보도가 잘못된 것이며, 여전히 검토 중이라는 후속 보도가 나오자 다시 떡락했습니다.
    Date2023.10.17 소식 By낄낄 Reply7 Views1877 file
    Read More
  13. No Image

    알리 익스프레스 환불 관련 질문

    이번에 현대카드 이벤트 참여하려다가 적용 안된 상태로 결제되어서 셀러에게 취소요청 보낸후 다시 몇번 시도하다가 포기한 후에 잘못 결제된 주문이 취소가 안되어서 셀러에게 문의하니 배송시작되어서 환불할 수 없다 이러다가 구매확...
    Date2023.10.16 질문 By도허 Reply4 Views470
    Read More
  14. No Image

    트랜스 코딩

    HDD에 빨간불이 들어온 김에, 옛날 어디선가 주운 영상이 있습니다.   대략적인 정보는   영상길이 45분 / xvid / 720*540 / 2000~2095 kbps / avi / 700MB   전형적인 CD한장에 굽기 위한 영상이죠.     저는 소모전력/작업중딴짓가능/편...
    Date2023.10.15 일반 Bytitle: 가난한AKG-3 Reply5 Views947
    Read More
  15. Ubuntu 23.10, 악의적인 사용자 번역으로 ISO 재배포

      우분투 23.10 데스크톱 버전에 포함되었던 사용자 번역 중 우크라이나어 번역에 팔레스타인과 이스라엘에 관한 트롤링에 포함되어 ISO가 다시 배포되는 일이 생겼습니다.   우분투같은 대형 프로젝트에서 이런 일이 생기다니 신기하네...
    Date2023.10.15 소식 By헥사곤윈 Reply3 Views1277 file
    Read More
목록
Board Pagination Prev 1 ... 47 48 49 50 51 52 53 54 55 56 ... 578 Next
/ 578

최근 코멘트 30개

AMD
한미마이크로닉스
더함
MSI 코리아

공지사항        사이트 약관        개인정보취급방침       신고와 건의


기글하드웨어는 2006년 6월 28일에 개설된 컴퓨터, 하드웨어, 모바일, 스마트폰, 게임, 소프트웨어, 디지털 카메라 관련 뉴스와 정보, 사용기를 공유하는 커뮤니티 사이트입니다.
개인 정보 보호, 개인 및 단체의 권리 침해, 사이트 운영, 관리, 제휴와 광고 관련 문의는 이메일로 보내주세요. 관리자 이메일

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소