從遊戲應用走向人工智慧
NVIDIA 在 GPU 領域有多厲害?黃仁勳說,2016 年,電動遊戲是一個超過 1000 億美金市值的產業,NVIDIA 出貨超過 1,000 萬個 GeForce GTX 相關的裝置,整個市場安裝 GeForce GTX 至少超過 2 億次。如果根據微軟 2017 財年第二季報告,大約是 XBox Live 每月活躍人數 5,500 的四倍之多。別忘記!許多 GPU 裝置同時也是使用者進入網路世界的第一裝置。
黃仁勳在 COMPUTEX 2017 的開幕演說中進一步表示,如果沒有 NVIDIA 台灣合作伙伴的全力支持,全球的遊戲玩家不可能可以這麼順利地得到完整的遊戲平台,目前,這個。至少包含有 GeForce GTX 旗下將進一步在 Computex 2017 全面更新至少 40 款產品線,包含:全新的遊戲顯示卡、VR背包、遊戲主機、顯示器與遊戲筆電。
GeForce GTX 產品線如此亮眼,但每年消費者總是希望裝置可以更小、更輕更薄,運算效能卻可以逐步成長。NVIDIA 選擇直接與製造廠合作,讓雙方的工程師可以彼此直接合作工作,將原本 51mm 的架構,縮小為 18 mm。重量減輕一半(僅剩 5 磅),並帶有三倍效能。NVIDIA 將新的設計稱為 MAX-Q。在 Computex 2017 現場,還直接以與華碩合作的筆電展示了 BANDAI 年底才要上市的 Project Cars 2。
Max-Q 可說是 NVIDIA 與電腦製造廠系統合作、整合設計的結晶。其中涉及了硬體設計整合,包含散熱設計與使用低壓電源並調整線路設計,並透過軟硬體同時提升並改善 GPU 的效能與功耗。晶片商與製造商通力合作改善系統整合設計是少見的業界合作,這也表示 NVIDIA 正在加深與遊戲領域相關的製造合作伙伴關係。
30 億美元的結晶!深度學習運算的暴力美學:Volta
如果說 NVIDIA 於 2016 年首次推出以 Pascal 微架構為主的 TESLA P100 晶片,是基於人工智慧與深度學習應用的第一次重大硬體策略轉型,則你可以將黃仁勳於 2017 年 5 月宣布的 TESLA V100 視為 NVIDIA 這家公司更積極在人工智慧產業方向上耕耘的第二發秘密武器。確立了 GPU 除了圖形演算、科學演算,並找到願意為這樣演算需求付費的基礎用途產業後,NVIDIA 需要為 GPU 這樣的運算結構找尋下一個應用成長引擎。
繼 2016 年 GTC ,NVIDIA 推出了 GPU 架構 Pascal 之後,NVIDIA 於今年再度更新了其最新一代 GPU 運算微架構( NVIDIA microarchitecture)Volta。如果讀者對 Intel CPU 微架構的歷史熟悉,對 NVIDIA 現今的微架構命名策略大概也不會感到太陌生,兩者對微架構發展與推進有類似的代號包裝,並分別對之推出對應的架構規範。
NVIDIA 微架構發表時間、製程工藝與常見商用產品名
NVIDIA代號 | 推出時間 | 晶圓製程規格 | 商用產品號 |
---|---|---|---|
Tesla | 2006年 | 90 nm, 80 nm, 65 nm, and 55 nm | GeForce 8, 9, 100, 200, 300 系列 |
Fermi | 2010年4月 | 40 nm and 28 nm | GeForce 400, 500 系列 |
Kepler | 2012年4月 | 28 nm | GeForce 600 與部分 700系列 |
Maxwell | 2014年2月 | 28 nm | 晚期的 GeForce 700 與 800, 900 系列 |
Pascal | 2016年4月 | 14 nm and 16 nm | Tesla P100 晶片(GP100)、GeForce 1000 series |
Volta | 2017年5月 | 12 nm | Tesla V100 晶片 |
《數位時代》整理
首次引入 Tensor Core 的 Volta 微架構
黃仁勳強調,為了新一代的 GPU 運算架構,NVIDIA 投入了近 5,000 名工程師、為期三年,約 30 億美金的研發費用。這顆應用台積電 12 奈米 FFN 製程的 GPU,整合了相當於 210 億顆電晶體的 TESLA V100 ,相當於 5120 顆 CUDA 核心,擁有 120 TFLOPS的運算能力。撇開當然更快、更大的 HBM2 記憶體通道與攸關 聯絡 GPU 平行運算能力,擁有 300 GB/s 傳輸速度的 NVLink 2.0 不談,這次 Volta 架構最大的變化,來自於 GPU 中 Streaming Multiprocessor (SM)架構的重新設計。
Streaming Multiprocessor, SM 是 NVidia GPU 設計得以進行分散式運算 CUDA 的重要設計。原本每個 multiprocessors 就包含有若干個 stream processor ,每個 stream processor 都包含一個 fused-multiply-add, FMA 單元,每個一次(per clock)可以進行一次加法與一次乘法。Volta 架構重新設計了 SM,除了改善由 4 個 L0 所組成為一個 L1 的SM中,每個 L0 內用於整數運算(16 * INT)與浮點運算(8 * FP64 與 16 * FP32 )的單位。並在每個 L0 裡面引入了 2 個 Tensor Core。
Tensor 其實指的就是方塊,魔術方塊或貨櫃堆疊其實都是方塊的一種。幾乎所有高維度的數學運算都是各種矩陣相乘、相加而成,如果可以透過加速矩陣運算,則幾乎確定可以有效加速所有高維度的數學運算。NVidia 這次設計的 Tensor Core 是一個特化、專門進行 444 矩陣運算的運算單位,可以將原本數學運算需求中 444 的運算需求一次做完,因此可將原本需要 64 次運算,加上暫存共約 80 次的步驟減至 7 次,運算速率接近原本所需的 12 倍。
所以,雖可見引入 Volta 架構的 TESLA V100 事實上在 SM 數並沒有增加太多,CUDA 核心數增加也不到一倍,但透過增加在 80 個 SM 裡,共 640 個 Tensor Core 可以直接增加 120 個 TFLOPS,直接達成加速浮點運算的目的。藉由改善原本每個 SM 中浮點運算核心(FP32/FP64)的效能,加上運用台積電 12 奈米 FFN 生產技術,在每個標準單位塞入更多的電晶體,Volta 架構就可以實現同樣瓦數下搾出更多運算效能的成績。NVIDIA 也透過 CUDA 9 直接提供各種不同深度學習運算架構例如 Caffe 2 或 MXNet 的使用者可以直接呼叫 CUDA,拆解高維矩陣成低維演算並拼接。
這樣設計所帶來的好處是 Tensor Core 可以直接對固定需要高維運算的運算需求進行加速,但一個 SM 應該配置幾個 Tensor Core 就是實際運算應用所會面臨的第一個問題。Tensor Core 勢必佔用 GPU 設計中,原本的整數運算與浮點運算器空間,將原本空間所可以帶來的計算量,換成多少的 Tensor Core 對大型演算所帶來的效益仍有待進一步驗證(目前 NVIDIA 的例子主要都針對容易降維的某些 CNN 進行驗證),在 GPU 內應該有 Tensor Core 的專屬空間或進一步將之分開、Tensor Core 與傳統整數運算與浮點運算器比例配置為何,並每個 Tensor Core 為什麼只選擇 444 作為加速基礎單元,都有賴更多案例,來進一步應用來驗證並最佳化相關的運算需求。
以 TESLA V100,推出硬體 DGX-1V 與 DGX Station
NVIDIA 也不意外地更新了 2016 年宣布,搭載 TESLA P100 的 DGX-1 系列。DGX-1 系列是 NVIDIA 針對資料中心級所需處理深度學習、人工智慧等運算所首次推出的主機。2016年首次推出時,DGX-11搭載 8 張 Tesla P100 的計算卡,共有 28672 個 CUDA core。相當於傳統資料中心250台左右的主機運算量。
本次基於 Volta 所推出的 DGX-1(或稱 DGX-1V),同樣搭載 8 組 TESLA V100,透過更多的 CUDA 核心,更快的平行傳輸資料能力 (NVLink 2.0),帶來更驚人的運算能力。在 NVIDIA 針對 DGX-1V 的技術報告中,以微軟的 ResNet 做實驗甚至可將原本需要 739 小時訓練的資料運算,縮短至不到 8 小時以內完成。DGX-1V 主要提供給資料中心,要價約 14.9 萬美金。NVIDIA 也為小型新創公司或部分公司的創新部門提供小型的 AI 用計算電腦 DGX-Station,內建 4 張 TESLA V100 的小型水冷深度學習電腦,要價約 6.9 萬美金。
NVIDIA 也將 TESLA V100 供應給 Cisco、DELL、HPE、IBM 與 LENOVO 推出相應的計算產品。同時也和微軟合作,透過將一群 DGX 系列合併,提供完整資料中心級 AI 雲計算服務 HGX-1,NVIDIA 也在 Computex 宣布將與鴻海、英業達、廣達與緯創合作,為這個年化成長三倍的市場提供 HGX 解決方案。
開發板與車,NVIDIA 也在人工智慧需求的第一線提供解決方案
熟知 NVIDIA 的讀者一定對於 NVIDIA 推出的某些特殊開發套件並不陌生,例如從 Tegra 1 時期就開始的 Jetson 系列,如今,Jetson 也隨著核心的演進一路從 Jetson TK1 走道 Jetson TX1 或最新的 Jetson TX2,一塊小如信用卡大小,僅需電池即可供電的開發套件,可以容許使用者在終端應用(例如無人機、小型遙控車等)上進行神經網路、影像便是、導航或語音辨識的獨立計算。
NVIDIA 也推出了 Drive PX 系列(目前最新版本為 NVIDIA Drive PX 2),提供車廠整合開發的自動駕駛計算硬體。Drive PX 耗費電量極低,可自動處理高速公路自動駕駛,並透過深度神經網路處理多相機與感應器所收集來的資料,在 HD 地圖上定位規劃安全路線達成自動巡航功能。對車廠來說,NVIDIA 所提供的方案除了硬體還包含稱做 NVIDIA Drivework 的軟體開發套件(SDK),可以幫助車廠快速開發自動駕駛功能。
在 2016 年宣布砸下 10 億美金投資在自動駕駛領域的 TOYOTA,在密西根州 Ann Anbor、加州 Palo Alto 與麻州 Cambridge 等地的 TOYOTA 研究所(TRI, TOYOTA Research Insititue)與測試基地,成立稱為「守護天使(Guardian Angel)」自動駕駛系統的開發計畫,最近也宣布將採用 NVIDIA Drive PX 系列作為開發選項。
NVIDIA 表示,要完成自動駕駛任務,生產整車的車廠事實上有非常多系統需要整合。NVIDIA 所提供的解決方案主要幫助車商直接解決感應器接收資訊、定位與運算的問題,其他各車設定的部分則有賴與車廠共同合作來解決問題。也因此,NVIDIA 目前與 Audi、TOYOTA 等每間遍佈全球的車廠合作模式都不一樣,不是僅提供 Drive PX 的解決方案而已。
黃仁勳也提及 NVIDIA Drive PX 的下一階段是可以達到自動駕駛等級 4/5 的 Drive PX Xavier,Xavier 是基於領域特化的微架構的整合產品,整合板上包含有傳統 CPU、Volta GPU與特殊的深度學習加速器(Deep Learning Accelerator, DLA)。
黃仁勳直接在 2017 年 GTC 宣布將在 7 月開源 Xavier DLA ,是一個值得關注的話題。通常由於硬體開發週期通常長於軟體,硬體(尤其是晶片)的開源失敗率很高(回頭看看 Open RISC),NVIDIA 選在此時開源一個特規(整合 ARM、GPU 與 DLA 的方案)但對開發者來說還算不難理解的設計,NVIDIA 自身給出的理由是 NVIDIA 明白硬體不可能由一個公司獨力完成,需要業界更多伙伴同行。是否表示 NVIDIA 已經有了新的合作伙伴,又預備投入多少資源在這個開源專案上,都有賴 NVIDIA 在 7 月公布更多詳細開源資訊後有更多討論。