您現在的位置是:首頁 >動態 > 2021-04-09 10:26:47 來源:
英特爾如何在AI時代設計處理器
英特爾是全球最大的計算機處理器制造商,但它在利用人工智能計算爆炸方面并不是最快的。競爭對手Nvidia和其他AI處理器初創公司已經進入市場,英特爾一直在追趕。
但這家大公司一直在快速發展。它在2016年以3.5億美元收購了AI芯片設計公司Nervana,英特爾最近宣布其Xeon CPU 在2017年創造 了10億美元的收入 用于AI應用。英特爾認為,到2022年,AI芯片的整體市場收入將達到80億至100億美元之間。該公司專注于從頭開始設計AI芯片,AI架構副總裁兼總經理Gadi Singer表示。英特爾。
Singer,他的老板Naveen Rao和芯片架構師Jim Keller最近一直在努力表明英特爾在熱門AI芯片設計趨勢方面沒有睡覺。事實上,該公司正在為AI芯片設計注入更多能量,這有望幫助保持摩爾定律 (芯片每隔幾年增加一倍)。芯片制造的進步正在放緩,但芯片設計師正試圖通過架構創新來彌補這一點。
辛格對創新的機會感到興奮。我們最近有機會談論這個話題,英特爾軟件執行官Huma Abidi也加入了舊金山南園。
這是我們對話的編輯記錄。
VentureBeat:我想提高一點,談談這里的一些歷史。在我這邊,我對處理有一個非常簡單的理解。我看到x86處理器非常適合串行處理。GPU非常適合并行處理。當深度學習出現時,GPU的并行性非常有用,因此它們變得非常流行。他們進入了數據中心。但它們并非專為AI處理而設計。
現在,芯片設計正在發生這種適應時間,似乎每個人都在想辦法進行人工智能處理。你從一方面采取一種方法,從另一方面采取另一種方法,然后像Nervana 這樣的其他人從頭開始接近問題。這就是我想要理解的。“從頭開始”是什么意思?
Gadi Singer:在這個特殊情況下,很多技術都是通過Nervana獲得的。當我們收購Nervana時,我們得到了一個架構以及一個軟件堆棧。然后我們與英特爾資源和一些像我一樣的英特爾老用戶合作,將英特爾的所有知識用于計算,以改進這一點。但基本上,該架構是為NNP收購Nervana。
你所說的一切都是對框架的清晰表達。當我們從頭開始討論架構時,它是關于如何以不同的方式進行計算,如何處理內存以及如何處理數據移動。在計算方面,CPU有幾個線程。GPU有多個可以運行的線程,但這個概念仍然是暫時的。仍然假設某些指令指針移動并在另一個之后執行一些額外的工作。這是時空。
為AI進行深度學習的體系結構被構建為所謂的空間體系結構。您可以創建具有高度并行性的計算波,您可以將整個計算波一起發生。在某種程度上,它模擬了大腦中發生的過程,以及神經元的空間結構。你有第一層,第二層和第三層神經元的視線,依此類推。這不是按順序完成的。在某波中完成的所有操作都是一起完成的。具有這種創建計算波的能力非常有效的架構是空間架構。
有一點是,如何在計算結構本身中構建一個非常高級別的并行性,因此它可以獨立完成所有這些計算,因為它們可以通過高級并發來完成?第二件事與數據有關。涉及很多數據。自然實體是張量。當你談到深度學習的架構時,即使你正在使用向量,自然實體也不是標量或向量。這是一個多維數組。拯救和移動事物的所有構造都圍繞著張量。這不是一個事后的補充。它是固有數據結構的一部分。在其中你可以有8位或16位或32位實體,但它是一個數組。該數組是多維的。它可能內置了一些稀疏性,但它是一組數據。然后,
您通常在基礎架構中擁有的另一件事是控制數據,顯式控制。而不是擁有緩存層次結構等,在深度學習中它不是任意計算。你通常知道什么是操作順序。對控制點和循環的依賴性要小得多。你知道你正在使用這個張量乘以這個張量,然后通過這些卷積進入下一層。您實際上可以計劃放置哪些數據的位置。您擁有大量靠近計算機的內存并且管理非常有效,因此您可以在計算機附近的適當時間獲得正確的數據,從而有效地執行活動。
最后一個元素與連接有關。由于您移動了大量數據,因此您的元素非常大。在芯片上和芯片之間移動數據的方式需要具有非常高的帶寬和高吞吐量,能夠在多芯片解決方案中的芯片之間移動數據,或者在主機中的加速器之間移動數據,或者在兩者之間的加速器之間移動數據。各種計算元素。當我們觀察Nervana神經網絡處理時,它以一種原生的方式完成所有這一切,以一種專為它設計的方式。這是應對這些類型挑戰的最佳方式。
VentureBeat:塊設計的元素,它們在Nervana芯片上看起來像什么?
歌手:因為它是為深度學習而不是為了一般目的而設計的,所以中心通常圍繞矩陣乘法和卷積。這些是你需要做的兩個基本操作。我們的Nervana NNP中的所有這些實現都具有非常有效的結構來增加矩陣并以流動的方式完成。你將元素相乘并流動。你也可以乘以下一個。
然后有一些常見的功能,激活功能和深度學習常用的其他功能。如果它們變得非常普遍,您可以為這些功能創建一些加速。然后你通常還會有一些更通用的計算來幫助那些沒有加速的東西。
VentureBeat:隨著這些架構的不斷發展,您是否正在尋找通用處理器上的不同自定義處理器?把浮點放進去,就是那種東西。Nvidia正在推出張量處理器。我想知道解決方案有多大,而不是撕毀一切并重新開始。
歌手:這很好,但不是最佳的。您可以從中獲得結果,因為現在您有其他引擎可以執行該特定任務,因此可以提高效率。但它并不像你從頭開始設計那樣最優。例如,許多效率來自有效的數據移動。移動數據非常昂貴。它在功率和時間方面都很昂貴。即使您擁有正確的元素,如果您在系統中移動數據的方式無效,也無法獲得最佳解決方案。
這是兩個時間點的觀點。在2015-2016,然后2019-2020。2015-2016,那些是深度學習的突破性日子。這是基于深度學習的圖像匹配結果開始匹配人類能力的時候。這是我們開始進行語音識別,經過30或40年的逐步改進后,表現出了重大改進。這是我們在機器翻譯方面取得重大進展的時候。這是技術承諾進入中心階段的時候。
它主要是關于證明技術可以做什么。它不是將其部署為業務流程的一部分。它是,“嘿,你可以像人類那樣在圖像中識別出一個準確度為95%%的小提琴。”這主要是為了證明它可以完成。它主要圍繞培訓,培訓系統并證明其有效。培訓和推理之間的比例約為一比一。
構建模型仍然需要很多深厚的專業知識。它是在C ++環境或像Cuda這樣的專有環境中完成的。這是硬件架構,GPU和Nvidia以及Cuda專注于培訓的地方,此外還有CPU一直用于執行機器學習任務。它需要在軟件方面擁有大量的專業知識和專業知識。硬件主要是CPU和GPU。觀眾主要是早期采用者,真正追求新技術的人,先進的研究人員。那是事情表明他們有多么偉大,但他們沒有被部署。我把它稱為“杰出的童年。”你看到一個孩子,你看到了他的潛力,而且他沒有把任何錢帶回家,因為他還沒有做生意,但是你可以看到他長大后的潛力以及他將會變得多么偉大。
當我看到2019-2020時,它真的是深度學習的時代。從證明事物來看,我們現在看到它們已經作為業務線的一部分進行部署。例如,識別樣本用例中的圖像,您會看到現在部署在醫學成像中。我們看到像諾華公司這樣的細胞的20倍或30倍更復雜的細胞。該模型更復雜,但您應用的拓撲類型也更復雜。與char相比,學習小提琴的樣子要容易得多,而不是惡性癌細胞與良性癌癥相比。問題空間已經改變。拓撲和解決方案的類型發生了很大變化。現在它不是主要圍繞矩陣乘法和卷積,而是一些順序代碼和一些矩陣代碼的組合。
在開發機器學習的環境方面,由于深度學習框架,它已完全轉變。TensorFlow,我相信現在是最受歡迎的,自公開發布僅僅兩年半。三年前,這是非常本地化的。所有這些東西,如TensorFlow和MXNet,它們剛剛出現。這創造了民主化。
VentureBeat:它還不到芯片設計周期嗎?
辛格:嗯,他們正在制作很長一段時間。但是在過去的兩年半里,它們已經成熟并融入了環境。我稱之為數據科學的民主化。突然間你不必是一名C ++程序員。你有所有原語的抽象。您可以成為數據科學專家,只需在TensorFlow或MXNet中完成工作。這也使它與特定的專有接口(如Cuda和其他接口)分離,并允許硬件進入其中。那是一次重大轉變。
此外,當您開始部署事物時,重點從培訓轉向推理。如果您訓練模型,您可以稍后在10,000或100,000臺機器中部署它,以便全天候完成。一個例子是,我們正在與Taboola合作。Taboola是領先的推薦引擎之一。他們每月有大約3600億條推薦,每月有10億個人用戶,為許多不同的網站工作。他們有一個培訓中心,但該中心的增長并不多。這是沉沒的能力。他們一直在成長的是他們的推理計算。推理周期和訓練周期之間的比率正在大致轉向推理。
有一些新的考慮因素,因為它用于部署。像總擁有成本這樣的事情變得越來越重要。如果您只想證明某些事情是可能的,那么機器的成本是10,000美元還是50,000美元并不重要。當你整體部署時,你開始考慮性能與瓦特,性能對美元。您正在考慮延遲,而不僅僅是吞吐量。所有這些因素都使它成為現實生活。這種深度學習時代正是英特爾瞄準的目標,因為這是英特爾的優勢所在。當你看到總體擁有成本和功率效率以及計算的多樣性時,我們正在建立這些東西,我們已經非常擅長它們。
我們與Facebook-Facebook合作的一個考慮因素是基于Xeon的所有關鍵推理服務。在訓練方面,它是混合的。其中一些是基于GPU的,其中一些是基于Xeon的,其中一些是混合的。原因是因為他們已經擁有基礎設施。它作為一個基礎做得很好。然后他們可以使用任何備用周期來做到這一點。就總體擁有成本而言,這是非常有效的。
如果我能總結一下這個策略,我們會繼續改進Xeon。至強是一個很好的基礎,做得很好。它非常多才多藝。今天的大多數推論已經在Xeon上運行,因此我們希望通過引入新的指令使其更好。我們剛剛在三周前宣布了關于帶有VNNI的DL Boost。我們宣布了幾項技術。我們也對軟件進行了優化。我們正在添加加速器。Xeon很棒,但我們擁有最完整的加速器套件,適合那些想要全天候運行的人。我們有FPGA。我們為終端設備配備了Movidius。我們為汽車提供MobilEye。我們明年會有Nervana NNP。我們已經有了軟件開發工具,我們正在為它優化軟件。
至強是基礎。我們將通過專用和全面優化的加速來加強它,然后我們有系統工作。所有這些解決方案最終都需要托管,加速,存儲,內存和網絡。然后,在軟件方面,您可以通過說我們向下優化并向上簡化來簡化它。我們通過為每個架構提供從深度學習原語到最佳Xeon性能,到最佳FPGA性能,再到最佳Movidius性能的堆棧,進行優化。向上簡化,通過像nGraph這樣的單層使用相同的原語,我們可以將它與選擇的深度學習框架聯系起來。如果你想在PyTorch上工作,你可以使用PyTorch,MXNet或TensorFlow。我們將所有這些作為前端放在一個共同的位置,然后將它映射到我們的硬件。