大數據文摘出品
來源:medium
編譯:zeroinfinity、Andy
高性能的硬體配置在機器學習研究中是槍炮一般的存在。面對大規模數據和多層結構算法,普通的計算機根本無法勝任。
但是,高配置的深度學習本一般耗費巨大,當前最新款超級本的筆記本型號,價格輕鬆過萬。
一位喬治亞理工學院的畢業生就嘗試用更低的成本激活自己用了五年、硬配落後的老筆記本電腦。並且成功的通過eGPU和500美元(約3000多塊錢),新款戰鬥本四分之一的價格,就完成了一次「老本兒「大改裝,讓自己的老式筆記本電腦華麗轉型,並且效果驚人!
一起看看。
2016年初,我在喬治亞理工學院攻讀大學本科時,花費了當時全部身家,買了一台新的英特爾Skylake處理器還有Dell XPS 15 9550,再加上專用的NVIDIA移動GPU,我當時覺得這台電腦肯定能夠陪伴我獲得計算機學位。
自從買來它的那一天起,我就非常愛護,它也非常爭氣地一點沒變慢。直到我開始做AI和機器學習方面的碩士課程作業,我發現,這台筆記本不!夠!用!了!
我還記得那天我被分配了一個經典的深度學習任務,這是計算機視覺上一個很好的學習案例——訓練CNN(卷積神經網絡模型)來解決CIFAR-10。
CIFAR-10是10個低解析度(32x32)圖像類的數據集,深度學習任務是訓練模型使其能將新的圖像正確分類為這10個類別之一。由於低解析度數據集可以快速進行訓練,因此它被廣泛用作教學素材。至少我當時是這麼想的。具有多層結構的CNN訓練少則幾個小時多則一個晚上,這應該算是一個簡單的任務了。
但實際做起來,才突然發現,之前可靠的Skylake I7(比當前版本落後3代)和那些專用的2GB內存GPU根本跑不動。
沒錢又必須完成學業,所以我開始頭腦風暴怎麼從頭構建一個台式機。
要獲得當前中上等機器學習用台式機的最低價格為1100美元(帶有i5 6核CPU和RTX 2060 Super顯卡),然後最重要的是,作為一個喜歡在校園裡工作的研究生,台式機會將我限制在某一個工位上,需要很多同步手段才能同時在不同地點工作。
當然我也可以買一個當前最新款超級本,它會帶有和a1050-Ti一樣好的GPU,但這些型號的價格很容易超過2000美元,並且幾乎不具備台式機一樣強大的模型訓練能力。
我開始了大量替代方案的研究。
預算500美元,手把手教你薅羊毛
首先我分析了自己面臨的狀況:有一台可靠但較舊的計算機,無法停歇的忙碌生活,需要更多的處理器和算力,希望將所有工具都集成在一起又不至於傾家蕩產。
我知道,我的要求很高,但我確實設法找到了一個解決方案——eGPU。
外接GPU(eGPU)能通過Thunderbolt 3接口將獨立顯卡連接到現有計算機。如果你有一台超級本如PC 2016或更高版本(我在用的),或一台MacBook Pro 2016或更高版本,那你就可以擁有一台用eGPU完全改造的筆記本電腦。
eGPU的設計比較簡單,它最主要部件包括,一個用於連接GPU的PCIe埠,一個用於連接到計算機的Thunderbolt 3埠,一個電源(GPU要的電遠遠超過筆記本自身供電能力) ,以及給GPU散熱的裝置。
你可以DIY所有這些組件,或者也可以像我一樣用更簡單的方法:直接找一個有埠和電源的GPU機箱,這樣需要的組件也就只有GPU和機箱這兩個了。
當我決定了試用eGPU的方案,就開始在網上找性價比最高的部件了。
巧合的是,我的兩筆交易都來自一個名為Letgo的交易平台。我用260美元就買到了NVIDIA GTX 1080 8GB(之前我在網上找到的最便宜價格是375美元),而機箱則是有人以280美元的價格出售Razer Core v2(在eBay上以400美元的價格出售)。最終我總共花費了540美元來構建eGPU,全面提高了我筆記本的使用體驗。
並非每個人都像我一樣想在網上淘寶,因此我還評估了搭建ML eGPU的最優方案,預算在500美元左右,10分鐘不到就都能訂購到的所有零件。
我選擇使用NVIDIA 1660-Ti 6GB,有差不多的GPU性能(稍微差了一點),價格為280美元,還有翻新過的Razer Core X,可以以270美元從Razer購買。如果您願意多花些錢得到性能更好,更新的GPU,那麼RTX 2060 Super 8GB更好些,且花費也達到400美元價位。
如果你要改造Macbook,可以考慮AMD處理器,因為其在Apple生態系統中的支持程度較高。
有得有失,eGPU表現如何?
構造好機器後,我便開始評估使用體驗。要測試與以前的移動GPU相比,GTX 1080有何改進,我使用了AI-benchmark。這是一個Python庫,用Tensorflow在19個不同部分上運行42個測試,從而為GPU提供了通用AI評分。
我將AI-Benchmark與Jupyter Notebook、pandas和還有Seaborn可視化工具結合起來,以量化說明我的結果。該代碼可在Github上找到。
第一個結果是針對單個測試及其運行時間的(以毫秒為單位)。我只展示了19個測試中的1到9個,結果太多怕看不過來。我的GTX 960M GPU(XPS配的GPU)測試過程中遇到了一個大問題。因為它GPU只有2GB,結果訓練張量太大放不下,所以在很多項測試中都無結果。
該測試的結果非常清楚。集成圖形絕對不適合機器學習,即使它比移動GPU更穩定。但它在測試中所花運行時間更長,甚至會讓簡單的任務都運行緩慢。
GTX 960M在執行任務時速度上保持了自己的優勢。但是,其可靠性不足,且僅擁有2GB的內存是一個巨大障礙,這將使你不得不犧牲模型的大小,以便能放在卡上。
因此,GTX 960M不太適合現在的深度學習任務。而有8GB RAM的GTX 1080則可以完美地運行所有任務,並在實際任務上比GTX 960M快3倍。
測試完成後,AI-benchmark還會創建一個總體評分(越高越好)。注意,GTX 960M基準分是推斷出來的因為某些測試無法完成,因此沒辦法獲得總分。因此,我根據類似的GPU的AI-Benchmark的測試結果推斷了一個分數。
替代的GPU用相同架構,並且在成功運行的測試中彼此之間的誤差只在百分之幾內。顯而易見,GTX 1080碾壓了所有的自動化測試,並在可靠性和速度方面展現了可觀的優勢。基於這一結果,似乎很明顯eGPU可以作為(同性能)昂貴設備的替代品,儘管如此,我還是要對此指出一個缺點。
儘管與XPS本身相比,其測試結果令人震驚,但相比於集成GPU,使用eGPU可能會帶來速度上的損失。
在將通過AI-benchmark取得的最高基準與(通用)基準進行比較時,會發現還有很多需要改進的地方。我估計Thunderbolt 3埠上的帶寬會導致10%到15%的性能損失,但是測試分數缺明顯下降了約30%,我對此有一個假設。
儘管XPS 15 9550和9650型號聲稱完全支持thunderbolt 3,但它們的硬體上限為2條通道,而不是標稱的4通道(Dell已解決了這一問題)。我的假設是,這是當前thunderbolt埠造成的瓶頸。在將來的版本中,我可能會使用MacBook(具有4通道)運行這些測試,以證實我的猜測。如果我是正確的話,我應該會看到MacBook上AI得分超過1400。
我還可能會在散熱更好的情況下進行測試,以查看在非理想狀態下是否會阻礙運行。
這將幫助我得出更通用的推薦,關於這是否為一種可行且有成本效益的選擇?
最終的結果我個人是絕對認可的。即使分數未達到通用基準,這種花費540美元升級到等同於一台1500美元計算機的程度,也將使其生存力又延長了數年。僅是2GB GPU和8GB GPU之間的區別就值得升級。如果你的筆記本電腦只有集成顯卡,那麼如果你想用其來進行深度學習,這種升級甚至是非常必要的。
我不建議升級的情況是您的筆記本電腦已經具有4GB的GPU RAM和最低GTX 1050-Ti GPU配置。如果真是這樣,你不太可能看到性能上的大幅提高。只有在發現自己需要更多RAM來執行更繁重的任務時,eGPU才真正物有所值。
目前我只做到這樣,如果有興趣,不久的將來可能還會有新的嘗試!
相關報道:
https://towardsdatascience.com/how-i-turned-my-older-laptop-into-a-machine-learning-superstar-with-an-egpu-66679aa27a7c