您的位置: 首頁 >科技 >

讓硬件加速器與自動(dòng)代碼轉(zhuǎn)換一起工作

2020-04-13 09:21:40 編輯: 來源:
導(dǎo)讀 密歇根大學(xué)(University of Michigan)研究人員開發(fā)的一項(xiàng)新技術(shù),可以通過自動(dòng)代碼轉(zhuǎn)換,使后摩爾定律(post-Moore’s Law)計(jì)算組件得到更廣泛的采用。該系統(tǒng)被稱為AutomataSynth,它允許軟件工程師在不需要專門的編程知識(shí)或重寫舊的、以cpu為中心的代碼的情況下,利用fpga等硬件加速器的力量。 隨著摩爾定律(Moore’s Law)的接近尾聲,企業(yè)和設(shè)計(jì)師

密歇根大學(xué)(University of Michigan)研究人員開發(fā)的一項(xiàng)新技術(shù),可以通過自動(dòng)代碼轉(zhuǎn)換,使后摩爾定律(post-Moore’s Law)計(jì)算組件得到更廣泛的采用。該系統(tǒng)被稱為AutomataSynth,它允許軟件工程師在不需要專門的編程知識(shí)或重寫舊的、以cpu為中心的代碼的情況下,利用fpga等硬件加速器的力量。

隨著摩爾定律(Moore’s Law)的接近尾聲,企業(yè)和設(shè)計(jì)師們依靠大量硬件技術(shù)來規(guī)避新cpu帶來的收益遞減效應(yīng)。其中最可行的短期候選是硬件加速器,如現(xiàn)場(chǎng)可編程門陣列(fpga),它可以用于快速執(zhí)行特定的通用功能,并消除大型應(yīng)用程序中的瓶頸。

雖然像微軟和亞馬遜網(wǎng)絡(luò)服務(wù)這樣的公司已經(jīng)很好地采用了FPGAs,但是FPGAs的使用受到了許多軟件開發(fā)人員不熟悉的編程需求的限制。這些需求還限制了它們?cè)谝汛嬖诘倪z留軟件上的使用,這些軟件通常是專門針對(duì)cpu編寫的。

今天使用的大多數(shù)程序必須在非常低的級(jí)別上完全重寫,以獲得硬件加速的好處。因此,組件的安裝速度比實(shí)際使用速度要快。

領(lǐng)導(dǎo)該項(xiàng)目的博士研究生凱文?安斯塔德(Kevin Angstadt)表示:“企業(yè)正在采取措施,試圖讓(fpga)更容易被人們接受。但在編寫新程序方面,這個(gè)過程仍然非常原始?!?/p>

包括教授在內(nèi)的這個(gè)團(tuán)隊(duì)。Westley Weimer和Jean-Baptiste Jeannin試圖通過自動(dòng)重寫許多大型應(yīng)用程序使用的某些低級(jí)功能來打破這些采用障礙。這意味著開發(fā)人員只需在現(xiàn)有代碼中添加幾行代碼(不需要重寫)就可以充分利用fpga。

Angstadt將這個(gè)過程比作圖形處理單元(gpu)對(duì)通用計(jì)算的適應(yīng),最初是由NVIDIA的CUDA平臺(tái)實(shí)現(xiàn)的。CUDA為開發(fā)人員提供了一個(gè)接口,通過該接口,他們可以利用GPU處理非圖形任務(wù)的能力。

Angstadt說:“這項(xiàng)工作的目標(biāo)是用fpga做類似的事情?!薄爱?dāng)你使用它們時(shí),你不能只是用同一種語言寫作,但我們可以給你一種用同一種語言寫作的錯(cuò)覺。”

為了實(shí)現(xiàn)這一目標(biāo),研究人員使用了一種被稱為有界自動(dòng)機(jī)學(xué)習(xí)的技術(shù)。該技術(shù)使用不同程序分析的組合來生成一個(gè)狀態(tài)機(jī),該狀態(tài)機(jī)的功能與原始代碼相同,并且可以使用fpga加速。從本質(zhì)上說,他們的系統(tǒng)讀取給定的代碼,學(xué)習(xí)代碼的功能,并將此行為的硬件描述寫入加速器。

在一篇關(guān)于這項(xiàng)工作的論文中,他們展示了他們?cè)谔幚砦谋舅阉骱捅容^操作的一類函數(shù)——字符串內(nèi)核上的技術(shù)。

Angstadt說:“當(dāng)你搜索文本文檔時(shí),你使用的是這些字符串內(nèi)核中最原始的一種形式?!钡鼈兛梢愿訌?fù)雜——功能對(duì)于垃圾郵件檢測(cè)、遺傳分析、產(chǎn)品推薦和粒子物理等多種應(yīng)用程序來說是基礎(chǔ)。

在一個(gè)基準(zhǔn)測(cè)試套件上運(yùn)行AutomataSynth,這個(gè)基準(zhǔn)測(cè)試套件是用真實(shí)的字符串函數(shù)編寫的,用來與cpu一起工作。

將這一技術(shù)應(yīng)用于其他類型的函數(shù)仍然是一個(gè)有待進(jìn)一步研究的開放問題,但Angstadt相信它可以被廣泛應(yīng)用。

Angstadt說:“我們的研究表明,盡管除了我們所支持的函數(shù)之外,還有許多其他類型的函數(shù)存在,但是可以被重寫為字符串內(nèi)核的應(yīng)用程序比我們意識(shí)到的要多得多。”“所以我們可能仍然能夠應(yīng)用類似的技術(shù)來支持更多類型的代碼?!?/p>

如果成功,我們將看到fpga成為通用計(jì)算的標(biāo)準(zhǔn)組件。

研究人員在論文《通過有界自動(dòng)機(jī)學(xué)習(xí)加速遺留字符串內(nèi)核》(Legacy String Kernels via Bounded Automata Learning)中展示了他們的發(fā)現(xiàn),該論文被2020年編程語言和操作系統(tǒng)架構(gòu)支持大會(huì)(ASPLOS)接受。


免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請(qǐng)聯(lián)系刪除!

最新文章

精彩推薦

圖文推薦

點(diǎn)擊排行

2016-2022 All Rights Reserved.平安財(cái)經(jīng)網(wǎng).復(fù)制必究 聯(lián)系QQ280 715 8082   備案號(hào):閩ICP備19027007號(hào)-6

本站除標(biāo)明“本站原創(chuàng)”外所有信息均轉(zhuǎn)載自互聯(lián)網(wǎng) 版權(quán)歸原作者所有。