機器推理在深度學習的影響下,準確性愈來愈高、速度愈來愈快。深度學習對人工智能行業發展的貢獻巨大,這得益於現階段硬件計算能力的提高、互聯網海量訓練數據的出現。本篇文章主要介紹深度學習過程當中如何選擇合適的GPU顯卡,若是你是深度學習新手,但願這篇文章對你有幫助。服務器
推理用到的硬件分兩種,一種是專業AI硬件公司出的AI芯片,一種就是咱們平時熟知的GPU顯卡了,前者不太適合入門學習,然後者不管從入門難度仍是性價比上講,對於新手來講都是優先的選擇。而GPU顯卡主流廠商大概兩家,一個Nvidia,一個AMD,前者出的卡咱們通常稱之爲N卡,後者稱之爲A卡。目前不論是普通消費市場(好比玩遊戲)仍是作機器推理的,N卡都佔主流,生態也更好一些,所以,若是沒有特殊緣由,建議新手優先選擇N卡入手。我我的不太推薦使用非主流的產品、技術,由於他們大多數不太成熟,使用過程當中困難重重,甚至最終官方夭折。本篇文章全部內容所有基於Nvidia顯卡。架構
Nvidia顯卡分類性能
Nvidia顯卡主要分3大類:學習
1)Geforce系列測試
這個系列是銷量最多、大衆最爲熟悉的顯卡,通常用來打遊戲。價格便宜,最新出來的旗艦卡RTX 2080Ti京東售價大概1w左右,根據不一樣的品牌,價格有所波動。低配置的便宜的一千就能買到。遊戲發燒友花1w買這種顯卡仍是很常見的。這個系列顯卡官方定位是消費級,就是讓你用來打遊戲的。可是它在深度學習上的表現也很是不錯,不少人用來作推理、訓練,單張卡的性能跟深度學習專業卡Tesla系列比起來其實差不太多,可是性價比卻高不少。好比已經停產的GTX 1080顯卡的參數基本和深度學習入門級顯卡Tesla P4同樣,用來作訓練和推理的效果比Tesla P4還要好,但是GTX 1080一張卡才賣5000~6000左右,而Tesla P4要賣到1.4w。英偉達官方禁止使用GTX系列顯卡用於深度學習等用途,一經使用,自動過保。那麼,既然性能差很少,爲何價格差這麼遠呢?緣由後面講到。優化
2)Quadro系列阿里雲
Quadro系列顯卡通常用於特定行業,好比設計、建築等,圖像處理專業顯卡,好比CAD、Maya等軟件,通常人不多用到,價格相對來說也稍微貴一些,這裏很少說了。人工智能
3)Tesla系列spa
Tesla系列顯卡定位並行計算,通常用於數據中心,具體點,好比用於深度學習,作訓練、推理等。阿里雲、Amazon雲有很是多的GPU服務器,基本都採用Tesla系列顯卡。這個系列顯卡有個特別明顯的特徵,那就是貴。Tesla系列入門級顯卡 Tesla P4,前面提到過,用來作深度學習的效果比GTX 1080還差,可是價格是後者的3倍多。像其餘更高級別的Tesla V100、Tesla P100 價格高達8w、4w,這種價位的顯卡雖然性能強勁,可是通常人是買不起的,只有企業數據中心纔會部署這種顯卡。那麼前面提到過,既然對於搞深度學習而言,Tesla系列顯卡相比GeForce而言性價比並不高,那爲何英偉達還會推出Tesla這個系列呢? 主要緣由有如下4個:設計
(1)咱們前面討論的性能對比所有都是基於單塊顯卡而言的,而Tesla系列顯卡針對GPU集羣作了優化,像那種4卡、8卡、甚至16卡服務器,Tesla多塊顯卡合起來的性能不會受很大影響,可是Geforce這種遊戲卡性能損失嚴重。這也是Tesla主推並行計算的優點之一。
(2)數據中心的GPU顯卡都是大批量部署的,有多臺服務器,每臺服務器有多塊GPU顯卡,而Tesla系列顯卡功耗優化很是明顯,Tesla P4單塊卡的最大功耗只有75W,而與它參數配置差很少的GTX 1080的功耗高達175W。能夠想象,Tesla系列顯卡更適合大規模部署,長遠來看,成本小得多。功耗低其中的一個緣由是,Tesla系列顯卡基本都是被動散熱,不提供風扇,這個更適合數據中心機房工做環境:服務器設備統一散熱,機房恆溫條件。這自己跟它的定位一致。
(3)再一個,相似Geforce這種消費級的顯卡更新換代太快,GTX 1080顯卡生命週期不到2年就停產了,相似手機這種電子設備,你產品都還沒作出來,擬採購的GPU可能就買不到貨了。
(4)消費級顯卡畢竟用於我的用途,性能方面不可能無限提高,用於並行計算的Tesla顯卡高配版在性能(參數配置)上可能比消費級顯卡高配版要高得多。
注意國內能買到的顯卡通常由第三方代理商銷售,好比七彩虹、華碩、麗臺等等顯卡廠商,這些廠商會在Nvidia的核心顯卡芯片之上作一些改造,好比散熱模式、外觀或者其餘修改,所以同一型號的同一款卡的價格可能會因不一樣廠家而不一樣。
GPU幾個比較重要的參數
GPU有很是多的參數,在作深度學習挑選顯卡的時候,主要看如下幾個:
GPU架構:不一樣款的GPU可能採用不一樣設計架構,好比Geforce 10系列的 GTX 1080/1080Ti採用的是Pascal架構,而Geforce 20系列的 RTX 2080/2080Ti採用的是Turing架構。不一樣架構的GPU,即便其餘參數差很少,性能差異可能很是大。
CUDA核心數量:這是一個很是重要的參數,通常你在搜索顯卡參數時,這個參數通常寫在前面。CUDA核心數量越大越好,前面提到的消費級顯卡Geforce GTX 1080和Tesla入門級顯卡 P4的CUDA核心數量同樣,都是2560個。而Geforce RTX 2080Ti的CUDA核心數高達4352個。
顯存位寬:表明GPU芯片每一個時鐘週期內能從GPU顯存中讀取的數據大小,這個值越大表明GPU芯片和顯存之間數據交換的速度越快,性能越好。Geforce GTX 1080的顯存位寬爲256bit,Geforce RTX 2080Ti顯存位寬爲352bit。
GPU工做頻率:這個很好理解,表明GPU每秒鐘工做次數,單位爲MHz,跟CPU的頻率相似。該值越大表明性能越好。
顯存帶寬:表明GPU芯片每秒與顯存交換的數據大小,這個值等於 顯存位寬*工做頻率,單位爲GB/秒,該值越大,表明GPU性能越好。Geforce GTX 1080的顯存帶寬爲320GB/秒,而它的升級版Geforce RTX 2080的帶寬爲448GB/秒。
顯存容量:這個東西跟內存同樣,不是越大越好,夠用就行。Geforce GTX 1080的顯存爲8GB,而該系列的旗艦版Geforce GTX 1080Ti的顯存爲11GB。Tesla系列顯卡因爲特殊的應用場景,有些型號的卡顯存高達16G/24G不等。
功耗:GPU能耗,像Geforce這種消費級的顯卡通常功耗很是高,Geforce GTX 1080的最大功耗爲175W,Tesla P4的最大功耗爲75W。像那種數據中心大規模級別的GPU部署,低功耗的顯卡一年電費能省不少。
注意上面提到的顯卡名稱後面加Ti和不加Ti徹底是兩款不一樣的卡,加Ti的性能比不加Ti的參數配置高不少。好比 Geforce GTX 1080Ti 比 Geforce GTX 1080性能更強勁。
如何選擇合適你的顯卡?
若是是我的學習使用,推薦購買Geforce系列的顯卡,而後根據我的預算,若是在1W左右,能夠選擇最新出來的Geforce RTX 2080Ti,若是費用不夠,能夠購買Geforce RTX 2080/2070,價格在5000/3000左右。千萬不要買入門級的Tesla P4,價格在1.4W左右。RTX 2080Ti通過實際測試,YoloV3目標檢測模型能跑20路1080P高清實時流。