天天看點

【體系結構頂會MICRO 2017落幕】量子計算獲最佳論文,記憶體相關工作最受關注

【體系結構頂會MICRO 2017落幕】量子計算獲最佳論文,記憶體相關工作最受關注

計算機體系結構頂會MICRO落下帷幕,記憶體相關工作最受關注,專用加速器結構的研究熱度升溫,量子計算也得到了大量關注。在神将網絡和機器學習加速方面,這屆會議也出現了新穎的工作。我們請到美國加州大學聖塔芭芭拉分校謝源教授課題組神經網絡架構研究團隊博士後胡杏,博士生李雙辰、谷芃、李谷澍進行點評。

第50屆體系結構頂會MICRO(Annual IEEE/ACM International Symposium on Microarchitecture)在其誕生地,彙聚哈佛、麻省理工等知名學府的波士頓召開。這次會議的與會人數較往年更多,接近500人參加。

本次會議共接收投稿326篇,收入61篇(錄取率18.7%)。其中,記憶體相關工作無論是投稿量還是收錄量,依然穩居第一。

【體系結構頂會MICRO 2017落幕】量子計算獲最佳論文,記憶體相關工作最受關注

MICRO 2017,記憶體相關工作投稿量和收錄量都穩居第一

【體系結構頂會MICRO 2017落幕】量子計算獲最佳論文,記憶體相關工作最受關注

MICRO 2016 投稿資料統計(按Topic劃分),也是記憶體相關工作投稿/錄取數量最高

MICRO 2017 亮點:專用加速器持續升溫,量子計算獲最佳論文

神經網絡加速器工作依然有較高熱度,但相對2016年ISCA和MICRO的盛況來講,略有降溫(4篇文章,其中包含一篇最佳論文提名文章)。

但是,對于專用加速器結構的研究熱度有增無減(論文送出列位第三),包含了對資料解析,語音識别,圖像去噪,非線性差分方程求解等不同應用。

與此同時,量子計算得到了大量關注,本次會議收錄了3篇相關文章,其中包括一篇最佳論文。

【體系結構頂會MICRO 2017落幕】量子計算獲最佳論文,記憶體相關工作最受關注

值得一提的是,本屆MICRO除了量子計算,還有一些讓人耳目一新的工作,比如針對基于環保可降解材料的電路的架構設計,以及作為最佳論文提名之一的研究處理器設計對移動裝置電磁幹擾的影響。

這次MICRO會議華人學者也大放異彩:高光榮教授憑借對資料流編譯器(dataflow compiler)的研究,榮獲了B.Ramakrishna Rau大獎;謝源教授進入MICRO名人堂;最佳論文也由華人作為第一作者的工作斬獲;第一作者為華人學者的論文占收錄總數的1/4。

神經網絡加速器相關工作

雖然從論文投稿和接收數量上看略有降溫,神經網絡加速器和晶片設計仍舊是體系結構領域的研究熱點。美國加州大學聖塔芭芭拉分校謝源教授課題組神經網絡架構研究團隊博士後胡杏,博士生李雙辰、谷芃、李谷澍對MICRO 2017神經網絡加速器工作進行了整理和點評。

緩解帶寬瓶頸

DelftNN: Addressing Bottlenecks for DNN Execution on GPUs via Synapse Vector Elimination and Near-compute Data Fission

摘要: 《DelftNN:通過突觸向量消除和近計算資料分解,解決GPU上深度神經網絡運作的瓶頸》論文由密歇根大學Scott Mahlke教授課題組,Lingjia Tang以及Jason Mars教授課題組合作完成。

目前的深度學習剪枝技術雖然減少了計算量,但是剪枝處理後的網絡不能很好地映射到GPU架構上,通常不能有性能的提升。與此同時,目前的帶寬優化技術集中于減少片外的帶寬而忽略了片上帶寬。為了解決這些局限性,本文提出了一個名為DeftNN的基于GPU的深度神經網絡架構,進而自動且透明地提高深度神經網絡在GPU上執行的性能。

DeftNN含有兩種新的優化技巧:(1) 突觸向量消除技術:通過分辨深度神經網絡中不重要的神經元和資料轉換,以消除這些神經元的計算和資料傳輸,提高GPU的運作性能;(2) 近計算資料分解技術:降低深度神經網絡計算中片上資料傳輸的需求。通過分析6個最先進的深度神經網絡模型,本文顯示DeftNN在GPU上達到了平均2.1倍的加速。更進一步,如果在每個GPU核心引入額外的硬體單元去支援近計算資料分解,DeftNN的平均加速回升至2.6倍。

【點評】傳統的神經網絡剪枝技術雖然減少了存儲和計算的需求,但其不規整的結構使得映射到GPU上運作的性能下降,主要由線程分支和訪存不能聚集導緻。針對這個問題,本文提出的突觸向量消除技術能夠在有效地壓縮神經網絡的同時,通過動态地将輸入的資料映射到GPU能高效執行的結構上面,以規整的結構達到性能的提升。同時,通過運作6個典型的深度神經網絡應用,本文觀察到片上的訪存帶寬相比片外的帶寬更加成為性能瓶頸。近計算資料分解技術能夠有效地對片上的神經網絡權重、輸出進行壓縮,進而緩解片上帶寬的瓶頸問題。

Scale-Out Acceleration for Machine Learning

摘要:《機器學習的橫向擴充加速》論文由佐治亞理工的Hadi Esmaeilzadeh教授的ACT實驗室完成。Hadi教授将于明年加入加州大學聖地亞哥分校。該論文提出了CoSMIC全棧方法來建構可橫向擴充的機器學習加速系統。在軟體層,該工作首先基于并行梯度下降方法建構可分布式執行的軟體系統,并提供基于高層次專用領域語言(DSL)的程式設計接口。根據這些抽象表達,CoSMIC可抽取出資料流圖,進而進行加速器資源的規劃布局,然後CoSMIC編譯器實作操作與加速處理單元的映射。在硬體層,該工作設計硬體模闆結構,進而可以生成優化架構來應對不同的并行梯度下降計算、聚合和更新的需求。同時,為了增加執行效率,該工作還在排程層進行優化,比對硬體參數配置和軟體算法需求。該論文在基于UltraScale+的FPGA平台上搭建了16節點的可擴充系統,并針對10種不同的機器學習算法進行了性能評估,從4節點擴充到16節點時,CoSMIC獲得2.7x的性能提升而Spark獲得1.8x的性能提升,相比于Spark方案,CoSMIC方法具有更好的可擴充性。

點評:現有工作主要關注單節點的加速方法,當資料愈多網絡日益複雜的情況下,擴充問題迫在眉睫。這篇工作關注了橫向擴充機器學習加速系統的關鍵問題和挑戰:1)如何減少程式設計複雜度,避免過多參與硬體設計;2)如何設計定制化加速器來建構可擴充系統;3)如何提高分布式加速系統的軟體系統性能和并實作優化映射來提高硬體資源使用率;這篇工作從軟體算法、程式設計模型、編譯器及排程器、硬體模版、電路設計等多個層次來建構了一個較完整的橫向擴充加速系統。

Bit-Pragmatic Deep Neural Network Computing

摘要:《Bit-Pragmatic深度神經網絡計算》論文來自多倫多大學,第一作者Jorge Albericio已加入NVIDIA。這篇論文在dadiannao基礎上,結合神經網絡備援的特性,改進其對神經網絡前向計算的加速。這篇論文沿襲該作者ISCA16的Cnvlutin(跳過數值為零的神經元)與MICRO16的Stripes(加速細粒度量化權重)兩篇工作,并巧妙地将二者結合,實作了同時針對剪枝的大量為零的神經元以及對量化的低比特數權重的加速。具體來講,該論文采用了串行乘法器,根據權重對神經元數值位移相加(stripes論文中的思路),來實作對量化為不同比特長度的權重的加速。在此技術上,該論文将神經元數值重新編碼,再做移位相加的串行乘法,進而達到跳過數值為零的神經元計算的作用。同時,該論文還提出了如兩級位移等方法,優化面積、功耗、存儲通路等。實驗結果顯示對于8比特量化的神經元的網絡,該方法比dadiannao快2.25倍,且有1.31倍的能效提升。

【點評】聯合該課題組的三遍用于優化dadiannao架構的工作來看(ISCA16 Cnvlutin,MICRO16 Stripes,MICRO17 Bit-pragmatic),該系列工作完整的覆寫了神經網絡中神經元的稀疏性,權重的可量化性,并在最終工作中将二者巧妙相結合,似乎已經做到了基于didiannao這種架構的AISC神經網絡加速器的極緻。

CirCNN: Accelerating and Compressing Deep Neural Networks Using Block-Circulant Weight Matrices

摘要:《CirCNN: 使用分塊循環的權重矩陣來加速和壓縮深度神經網絡》論文由塞普勒斯大學王言治教授課題組、南加州大學錢學海教授課題組以及東北大學林雪教授合作完成。該論文提出了一種基于分塊循環矩陣的表達方法來壓縮模型大小和加速模型速度。CirCNN使用分塊循環表達的權值矩陣來進行訓練和推斷,并理論驗證證明其收斂性。分塊循環矩陣是指改矩陣中每一行(列)都是其他行(列)的循環行(列)式。是以這種表達的存儲複雜度從O(n2)降到O(n)。在計算時,使用傅裡葉變換方法來對循環矩陣乘法運算進行加速,算法複雜度從O(n2)降到O(nlogn)。基于該算法,這篇論文還提出了CirCNN的體系結構設計,使用統一的DNN 推斷引擎來加速不同的網絡結構(包括層數,大小,規模等等),其主要設計點包括通過傅裡葉變換來加速分塊循環矩陣計算、計算子產品的流水線和并行性優化以及權值存儲和記憶體管理優化等等。該論文在ASIC、FPGA和嵌入式GPU平台上驗證了CirCNN,相比于現有工作能達到6-102x效能加速比。

【點評】現有模型壓縮的方法雖然能大大減少存儲複雜度,但可能影響網絡模型的結構化特性,進而降低性能;此外,壓縮率依賴于網絡本身會提高控制複雜度。該論文基于分塊循環表達的方法實作了結構化的壓縮,并同時提高了訓練和推斷過程的性能。可貴的是本文還從理論上證明了該方法的可收斂性,并分析了壓縮率和準确度的關系。雖然不确定分塊循環表達的訓練過程收斂速度如何,但是實驗結果表明該方法确實具有很好的實用性,能大大加速執行時間和減少存儲空間。

DRISA: A DRAM-based Reconfigurable In-Situ Accelerator

摘要:《DRISA:基于DRAM的可重構原地計算加速器》論文來由加州大學聖巴巴拉分校謝源老師研究組和三星記憶體研究組合作完成。這篇論文嚴格來說設計了一個可重構的較通用的加速器,但是以單比特權重神經網絡為例子,作了深入的分析。該論文的設計目标為提供大規模片上存儲同時提供高計算性能。為了達到這個目标,該項工作采用高密度的DRAM工藝打造高性能加速器。為了克服在DRAM工藝下複雜計算單元花費過多面積、功耗代價的問題,該論文僅僅設計了簡單的布爾邏輯和移位電路,并串行疊代使用這些電路來計算加法乘法等複雜運算。同時由于定位在加速器設計而非可計算的系統記憶體,該設計以性能優化作為第一目标,有效的犧牲一些面積代價來換取更高的計算性能。總體而言,該結構拉近了計算和存儲的距離,減小了資料搬移的能量消耗,并且充分利用了DRAM中大量的并行邏輯與更高的内部帶寬,實作了對單比特權重神經網絡這個示例應用的加速。

【點評】拉近計算和存儲的距離是未來計算機架構的主要方向之一,更是神經網絡計算所關注的方向。這篇論文将高密度的DRAM和高性能的計算單元設計到了一起,來實作這一目标。相比于Dadiannao等在處理器加速器晶片上內建更多eDRAM或SRAM的工作來說,該工作采用DRAM,比前者密度高出10倍;相比于記憶體計算工作,該工作擺脫了作為系統記憶體在設計上對面積、功耗等的要求,以設計高性能加速器為優化目标,進而得到了更好的性能。

量子計算文章總結

An Experimental Microarchitecture for a Superconducting Quantum Processor

摘要:《超導量子計算機中的一種實驗性微架構》論文由荷蘭代爾夫特理工大學K. Bertels教授課題組完成并獲得了今年的最佳論文獎。該論文提出了一種微架構原型來實作對于量子計算機的靈活控制,和一套量子微指令集來實作精确時序下控制量子操作。量子計算機具有解決某些經典計算機難以解決的問題的能力,例如大整數的質因數分解和量子系統仿真。以往的量子計算機工程研究主要集中在兩個方向:設計高層次程式設計語言和編譯器來表示和優化量子算法,以及建造可靠的底層量子硬體。但是對于如何利用編譯器的輸出來完全地控制量子處理器的操作,相關的研究還比較少。該論文提出并建構了一種微架構原型來控制他們的超導量子處理器。這套微架構主要包括三個部分(1)一種基于codeword的事件控制機制,(2)基于隊列的精确事件時序控制,和(3)一種靈活的多層次指令解碼機制。該論文還設計了一套量子微指令集并應用在其架構中。該論文在FPGA上實作了微架構原型,并在一個單量子比特的量子處理器上做了實驗。該微架構利用硬體加速了測量過程以實作實時回報,解決了精确時序控制的問題,以及實作了靈活的量子操作模拟波形生成。

點評:量子計算機在原理上擁有解決一些在經典計算機上無法解決的問題的能力,進而在近幾年越來越受到學術界和業界的關注。但是如何實作能夠長時間相幹的大量量子比特仍然在探索之中。以往關于量子計算機架構的研究通常基于尚未實作的大規模量子計算機的假設。這篇論文基于一個實體上已經實作的單量子比特處理器,設計了具有擴充潛力的微架構并解決了相關實踐中的問題。這使得該論文的架構設計和實驗結果十分紮實,令人信服。

Taming the Instruction Bandwidth of Quantum Computers via Hardware-Managed Error Correction

摘要:《通過硬體管理的誤差修正解決量子計算機指令帶寬問題》論文由佐治亞理工大學Moinuddin K. Qureshi教授課題組,微軟研究院Douglas M. Carmean,以及斯坦福大學博士生Zachary A. Myers合作完成。量子計算機由量子比特(qubits)和作為量子比特以及程式員之間接口的控制處理器實作。目前,誤差修正主要由軟體管理的機制實作,是以當量子比特的數量成規模增加時,需要極大的指令帶寬,這将成為大規模量子比特計算機的瓶頸。本篇論文發現量子計算中99.999%的指令來源于誤差修正,是以提出了一種名為“量子誤差修正基質”(QuEST)的架構,用于将量子誤差修正進行硬體管理。QuEST使用了一個專用的可程式設計微編碼的引擎,持續不斷地對誤差修正相關的指令流進行重複。QuEST需求的指令帶寬與活躍的量子比特(通常遠小于整個量子比特數量的0.1%)成正比而不是與整個量子比特的數量成正比。進而,這篇文章分析了面積和熱限制下QuEST的有效性,并提出了一種使用典型量子容錯碼(QECC)執行模式的可擴充的微架構。本文的分析顯示,對于幾種重要量子計算負載,QuEST能夠有效地減少指令帶寬5個數量級,同時確定确定性的指令執行。除此以外,本文作者觀察到容錯量子指令同樣有巨大的指令帶寬需求,是以擴充了QuEST增加了對這些指令的硬體支援。綜上,QuEST能達到8個數量級的指令帶寬的減少。

【點評】本文發現誤差修正指令是限制量子計算機向大規模擴充的一個瓶頸,其根本原因是軟體管理誤差修正指令的方式,會導緻誤差修正指令帶寬随量子比特的數量呈線性增長關系。本文提出将軟體管理的方式變為硬體管理的方式,是以建構了一個量子計算機的控制架構(QuEST),可以在軟體不參與的情況下連續地運作誤差修正指令。進一步地,利用誤差修正碼的局部性和量子運作模型的原理,QuEST可将指令帶寬減少5個數量級。同時本文将誤差修正指令和容錯指令分離,使得容錯邏輯指令可以被緩存,進而一共使得指令帶寬降低了8個數量級。

Optimized Surface Code Communication in Superconducting Quantum Computers

摘要:《超導量子計算機中經過優化的表面碼通信》論文由芝加哥大學Frederic T. Chong教授課題組和普林斯頓大學的Margaret Martonosi教授課題組合作完成。該論文設計了一系列編譯,排程和網絡模拟的工具,對于兩種已有的量子糾錯表面碼進行了評估。由于量子比特本身對于噪聲敏感以及量子門操作的精度問題,大規模的量子計算機必須要對量子比特使用糾錯編碼。據估計,量子糾錯編碼使用的量子比特将占到總數的90%。是以,設計合适的量子糾錯編碼機制對于成功的量子計算機十分關鍵。該論文使用了應用-系統-技術的聯合設計方法,設計了一套端到端的可擴充的軟體工具鍊,來把用進階語言表示的量子程式,綜合到實體級别的電路和布局上。針對目前最有潛力的量子糾錯碼,表面碼,該論文把表面碼通信中的靜态“辮”排程問題從3維的拓撲轉換問題,轉化為2維的靜态路由問題,通過過度的限制使其可以應用在大規模量子電路的設計中。該論文還發現,表面碼中基于“辮”的通信雖然對于延時不敏感,基于量子隐形傳态的通信由于可以預取,在可以高度并行化的量子算法中效果更好。

【點評】量子糾錯編碼是大規模量子計算機設計中的關鍵問題之一。該論文針對表面碼這一種非常有潛力的糾錯編碼,對未來大規模量子計算機的設計方式進行了探索和模拟,并在模拟的結果中發現對于以往對于表面碼通信的認識的不全面之處。該論文的結果對于未來量子計算機的發展是很具有指導意義的。

原文釋出時間為:2017-10-28

本文作者:胡杏

本文來自雲栖社群合作夥伴新智元,了解相關資訊可以關注“AI_era”微信公衆号

繼續閱讀