總部位于英國布里斯托的Graphcore公司日前推出了一款稱為智能處理單元(IPU)的新型AI加速處理器。該公司于2016年啟動風(fēng)險(xiǎn)投資計(jì)劃,并在2018年12月的最后一輪融資中募集了2億美元?;谄?7億美元的公司估值,Graphcore已成為西方半導(dǎo)體界的唯一“獨(dú)角獸”。它的投資者們包括戴爾、博世、寶馬、微軟和三星。
近日,Graphcore首席執(zhí)行官Nigel Toon在接受EETimes采訪時(shí)介紹了其公司愿景、AI加速器市場以及AI的未來。
Graphcore的IPU芯片已經(jīng)在生產(chǎn)、發(fā)貨并產(chǎn)生收入,目前正與極少數(shù)早期客戶合作。
Graphcore目前的主要產(chǎn)品是一款可插入服務(wù)器的雙寬、全高300 W PCI Express卡??敳康倪B接器可以實(shí)現(xiàn)卡間互連。每張Graphcore C2卡都配有兩個(gè)Colossus IPU處理器芯片。芯片本身,即IPU處理器,是迄今為止最復(fù)雜的處理器芯片:它在一個(gè)16納米芯片上有幾乎240億個(gè)晶體管,每個(gè)芯片提供125 teraFLOPS運(yùn)算能力。一個(gè)標(biāo)準(zhǔn)4U機(jī)箱中可以插入8張卡,卡間通過IPU鏈路互連。8張卡上的IPU可以作為一個(gè)處理器元件工作,提供兩個(gè)petaFLOPS的運(yùn)算能力。與芯片在CPU和GPU中的存在形式不同,它為機(jī)器智能提供了更高效的處理平臺。這個(gè)產(chǎn)品將用于云計(jì)算服務(wù)器,也極有可能用于自動駕駛汽車。
Graphcore如何應(yīng)對運(yùn)行深度學(xué)習(xí)軟件堆棧的挑戰(zhàn)?
在過去的三四年中出現(xiàn)的深度學(xué)習(xí)標(biāo)準(zhǔn)框架(如TensorFlow和PyTorch)與圖形描述符(如ONNX)一樣,可以在其中一些框架之間進(jìn)行數(shù)據(jù)交換。開發(fā)人員可以根據(jù)框架快速設(shè)計(jì)神經(jīng)網(wǎng)絡(luò),但這些設(shè)計(jì)基本上是圖形框架,也就是說,它們描述了操作符和圖形內(nèi)部元素之間連接的數(shù)學(xué)圖形。
而Graphcore從這些高級框架中獲取輸出并將其輸入到我們稱之為Poplar的軟件層,Poplar作為我們的映射和編譯工具,它采用高級框架圖形并將它們映射成為在IPU處理器上運(yùn)行的完整計(jì)算圖形。每個(gè)IPU處理器都有1200個(gè)獨(dú)立的專用內(nèi)核,以及機(jī)器學(xué)習(xí)所需的所有控制操作和超越函數(shù)。每個(gè)IPU內(nèi)核可運(yùn)行多達(dá)六個(gè)程序線程。因此,如果您有16個(gè)處理器,那么在一個(gè)4U機(jī)箱中可以運(yùn)行超過100,000個(gè)獨(dú)立的并行程序。
正是這種并行處理能力實(shí)現(xiàn)了快速訓(xùn)練模型并進(jìn)行實(shí)時(shí)操控,這也使的Graphcore能夠在自然語言處理以及在理解自動駕駛視頻方面取得重大進(jìn)展。因此,強(qiáng)大的并行處理能力非常重要。
有了Graphcore的IPU,一個(gè)完整的機(jī)器學(xué)習(xí)模型可以在處理器內(nèi)部生成。而且IPU處理器具有數(shù)百兆字節(jié)的RAM,可在處理器上以超過1.6 GHz的速率全速運(yùn)行,因?yàn)槠渲械难舆t已被線程隱藏。具有高帶寬內(nèi)存(HBM)等技術(shù)的GPU可以提供每秒900 GB的內(nèi)存帶寬,而Graphcore的單個(gè)IPU處理器提供大約45 TB內(nèi)存帶寬,因此,Graphcore可以更快地操縱模型。一個(gè)4U機(jī)箱中有16個(gè)IPU,它將使你擁有無可比擬的內(nèi)存帶寬,其上運(yùn)行了成千上萬的線程,而且是同時(shí)運(yùn)行,而這也是Graphcore得以加速機(jī)器智能工作的部分原因。
Graphcore IPU與領(lǐng)先的GPU性能相比如何?
Graphcore IPU的性能與市場上領(lǐng)先的GPU相比如何?這取決于它完成的任務(wù)。如果用于靜態(tài)圖像分類的前饋卷積神經(jīng)網(wǎng)絡(luò),GPU已經(jīng)可以做得很好,但I(xiàn)PU可以提供兩到三倍的性能優(yōu)勢,有時(shí)甚至是五倍。
對于更復(fù)雜的模型,比如那些數(shù)據(jù)通過后再反饋以嘗試?yán)斫馍舷挛模ɡ?,對話)的模型,由于?shù)據(jù)被傳遞多次,所以需要非常高的速率。對于這樣的應(yīng)用,因?yàn)樗械哪P投急4嬖贕raphcore的處理器中,IPU可以比GPU快很多,可能快十倍、二十倍或者五十倍。
目前,Graphcore專注于與早期介入客戶合作,幫助他們解決實(shí)際問題,但會回過頭來做一些基準(zhǔn)測試,并且將測試結(jié)果提交給MLPerf。
基準(zhǔn)測試的問題在于它們的保守,它們通常專注于標(biāo)準(zhǔn)的卷積神經(jīng)網(wǎng)絡(luò),而這個(gè)行業(yè)已經(jīng)發(fā)生了很大的變化。盡管基準(zhǔn)測試也是一種有用的相對衡量標(biāo)準(zhǔn),但看到產(chǎn)品在實(shí)際應(yīng)用中的真正性能也很重要。
在日新月異的發(fā)展速度之下,很難講還有什么可比性。如果采用了標(biāo)準(zhǔn)框架,那么為了進(jìn)行比較在不同的系統(tǒng)上進(jìn)行嘗試也非常容易。
Graphcore IPU芯片可以用于推理或培訓(xùn)。從架構(gòu)的角度來看這對Graphcore非常重要,因?yàn)殡S著機(jī)器學(xué)習(xí)的發(fā)展,系統(tǒng)將能夠從經(jīng)驗(yàn)中學(xué)習(xí)。
推理性能的關(guān)鍵點(diǎn)包括:低延遲、適用于小型模型、小批量,以及可能會嘗試引入稀疏性的訓(xùn)練模型。IPU可以有效地完成所有這些事情。在一個(gè)4U機(jī)箱中,16個(gè)IPU共同協(xié)作進(jìn)行培訓(xùn),每個(gè)IPU可以運(yùn)行單獨(dú)的推理任務(wù),并由一個(gè)CPU上運(yùn)行的虛擬機(jī)控制,最終得到的是一個(gè)可用于培訓(xùn)的硬件。因此,一旦模型被訓(xùn)練,就可以部署它,但隨著模型的發(fā)展,開始想要從經(jīng)驗(yàn)中學(xué)習(xí)時(shí),就可以采用這個(gè)硬件來實(shí)現(xiàn)這個(gè)功能。
映射和編譯工具Poplar與CUDA有何異同?
Graphcore的映射和編譯工具Poplar雖然與CUDA處于同等地位,但它實(shí)際上是一種編程語言,而不是在較低級別描述圖形的框架。
在Poplar中,可以描述一種新型的卷積函數(shù)或一種新型的遞歸神經(jīng)網(wǎng)絡(luò)層,然后將其作為高級框架中的庫元素。Graphcore提供完整的所有高級操作符和庫元素;同時(shí)還提供許多低級操作符,你可以簡單地將之互連以創(chuàng)建新的庫元素?;蛘撸绻胱鲆恍┩耆珓?chuàng)新的事情,那么可以使用Poplar C ++環(huán)境創(chuàng)建自己的東西。
Graphcore希望大家分享他們的創(chuàng)新,而其他人則樂于接受。如果仔細(xì)看一下Google的TPU或NVIDIA的GPU,你會發(fā)現(xiàn)很多庫元素都是關(guān)閉的,它們是黑盒子,您無法看到它們是如何構(gòu)建的。而Graphcore是開放的,人們可以修改它并擴(kuò)展它。我們希望建立的是這樣一個(gè)開放的社區(qū)。
相比谷歌、百度及FB等公司,Graphcore的競爭優(yōu)勢?
Graphcore正日益面臨這個(gè)領(lǐng)域的一些強(qiáng)大對手,如谷歌、百度、Nvidia、英特爾以及數(shù)據(jù)中心巨頭Facebook和阿里巴巴,據(jù)傳他們也正在開發(fā)自己的芯片。Graphcore將會如何與這些公司競爭?如果數(shù)據(jù)中心公司開發(fā)自己的AI加速器,那這個(gè)市場的競爭還會存在嗎?
Graphcore認(rèn)為將會有三個(gè)主要市場。
首先是一個(gè)相當(dāng)簡單的小型加速器市場,通常應(yīng)用于移動電話的IP內(nèi)核,一些大型手機(jī)制造商已經(jīng)在做這方面的工作。但Graphcore沒有參與這個(gè)市場。ASIC設(shè)備很有市場前景。舉例來說,一個(gè)擁有大量用戶的具有非常特定工作量的公司,或許他們運(yùn)營著一個(gè)龐大的社交網(wǎng)絡(luò),他們可以創(chuàng)建一個(gè)非常具體的功能并將其構(gòu)建到一個(gè)芯片中,然后將其部署到數(shù)據(jù)中心以提高這一功能的效率。這類ASIC解決方案擁有巨大的市場,但是,Graphcore并沒有參與。
Graphcore所做的是一個(gè)通用處理器,您可以通過編程以驚人的效率來做許多不同的事情。如果應(yīng)用于云計(jì)算環(huán)境,這項(xiàng)技術(shù)可以非常輕松地解決問題,它功能多樣,易于編程,提供極為有效的結(jié)果,Graphcore相信這是一項(xiàng)致勝的技術(shù)。
采用專用ASIC芯片的事實(shí)幾乎已經(jīng)證明了GPU的弱點(diǎn)。人們需要一種更高效、易于使用的為機(jī)器智能而設(shè)計(jì)的處理器,而這正是Graphcore所做的。Graphcore認(rèn)為通用IPU有機(jī)會形成截至目前最大的細(xì)分市場。通過為上述所有問題提供更加高效的解決方案,相信可以引領(lǐng)該領(lǐng)域的行業(yè)標(biāo)準(zhǔn)。
如果只是針對基本的前饋卷積神經(jīng)網(wǎng)絡(luò),GPU是一個(gè)非常好的解決方案,但隨著網(wǎng)絡(luò)變得越來越復(fù)雜,人們需要一個(gè)新的解決方案,這就是ASIC和FPGA產(chǎn)生的原因。我們接觸過的所有創(chuàng)新者都說使用GPU正在阻礙他們創(chuàng)新。如果仔細(xì)看一下他們正在研究的模型類型,你會發(fā)現(xiàn)他們主要研究卷積神經(jīng)網(wǎng)絡(luò)的形式,因?yàn)檫f歸神經(jīng)網(wǎng)絡(luò)和其他類型的結(jié)構(gòu),例如強(qiáng)化學(xué)習(xí),并不能很好地映射到GPU。由于沒有足夠良好的硬件平臺,研究領(lǐng)域受到限制,而這正是我們將IPU推向市場的原因。
Graphcore會面向企業(yè)市場嗎?企業(yè)市場很有意思,尤其是在企業(yè)界有很多公司正在嘗試進(jìn)行真正的深度學(xué)習(xí),Graphcore對這個(gè)市場深感興趣并專注于此。問題是,Graphcore如何接觸這類客戶?他們遍布全球,并處于不同的垂直市場。對于初創(chuàng)公司而言,這是一個(gè)難以進(jìn)入的市場。可以說Graphcore的策略比較狡猾,他們與戴爾建立了密切的關(guān)系。戴爾是Graphcore公司的投資者,通過與他們合作,Graphcore順利地進(jìn)入市場,并通過多種不同形式將我們的技術(shù)交付給客戶,例如,Graphcore的產(chǎn)品可能是4U全能IPU服務(wù)器,也可能是內(nèi)置單個(gè)IPU PCI卡的工作站。有很多不同的選擇來抓住這個(gè)市場,而Graphcore得到并利用了這個(gè)機(jī)會。
Graphcore成為西方半導(dǎo)體界的唯一獨(dú)角獸。擁有如此高的估值,對公司來說是好事,因?yàn)樗菍緲I(yè)務(wù)的很好驗(yàn)證,讓Graphcore可以籌集大量資金,他們現(xiàn)在擁有令人難以置信的快速增長的火力,對于一個(gè)新興市場來說這很重要。這種快速增長在未來的兩三年內(nèi)都將持續(xù),Graphcore將在這段時(shí)間極速奔跑以成為領(lǐng)先者。