Altera發(fā)布面向FPGA的OpenCL計(jì)劃
掃描二維碼
隨時(shí)隨地手機(jī)看文章
21ic訊 Altera公司發(fā)布FPGA和SoC FPGA的開放計(jì)算語言(OpenCL™)標(biāo)準(zhǔn)開發(fā)計(jì)劃。OpenCL標(biāo)準(zhǔn)是基于C語言的開放標(biāo)準(zhǔn),適用于并行編程。Altera的OpenCL計(jì)劃結(jié)合了FPGA的并行能力以及OpenCL標(biāo)準(zhǔn),實(shí)現(xiàn)強(qiáng)大的系統(tǒng)加速功能。與使用Verilog或者VHDL等底層硬件描述語言(HDL)的傳統(tǒng)FPGA開發(fā)方法相比,這一混合系統(tǒng)(CPU + FPGA,使用OpenCL標(biāo)準(zhǔn))還具有明顯的產(chǎn)品及時(shí)面市優(yōu)勢。通過其OpenCL計(jì)劃,Altera與多名用戶合作,擴(kuò)展了大學(xué)計(jì)劃,支持在學(xué)術(shù)界面向FPGA開發(fā)的OpenCL標(biāo)準(zhǔn),根據(jù)用戶反饋,主動(dòng)促進(jìn)OpenCL標(biāo)準(zhǔn)的發(fā)展。用戶早期評估結(jié)果表明,與多核CPU解決方案相比,性能提高了35倍,與HDL開發(fā)的FPGA解決方案相比,開發(fā)時(shí)間縮短了50%。
由名為Khronos集團(tuán)的業(yè)界聯(lián)盟開發(fā),OpenCL標(biāo)準(zhǔn)是開放的免版稅標(biāo)準(zhǔn),支持混合系統(tǒng)的跨平臺(tái)并行編程。作為標(biāo)準(zhǔn)并行語言,OpenCL標(biāo)準(zhǔn)支持編程人員使用熟悉的C語言開發(fā)跨平臺(tái)代碼,從CPU到GPU,現(xiàn)在擴(kuò)展到FPGA。
通過采用OpenCL混合體系結(jié)構(gòu),系統(tǒng)規(guī)劃人員提高了設(shè)計(jì)中需要大量算法部分的性能,還能夠?qū)a(chǎn)品盡快推向市場。目標(biāo)應(yīng)用從包括天氣和金融建模等在內(nèi)的高性能計(jì)算到高級(jí)雷達(dá)系統(tǒng)、醫(yī)療成像以及視頻編碼和處理等——任何需要快速計(jì)算的系統(tǒng),這些計(jì)算可以并行實(shí)現(xiàn)。
Altera軟件和IP工程副總裁Udi Landen評論說:“在C編程環(huán)境中,OpenCL標(biāo)準(zhǔn)支持設(shè)計(jì)人員利用并行體系結(jié)構(gòu)加速其設(shè)計(jì),提高效能。多年以來我們一直積極主動(dòng)的參與OpenCL開發(fā),現(xiàn)在與業(yè)界聯(lián)盟、用戶的系統(tǒng)規(guī)劃人員以及學(xué)術(shù)界合作,推動(dòng)OpenCL標(biāo)準(zhǔn)中對FPGA的支持。”
OpenCL標(biāo)準(zhǔn)在“主”代碼和“內(nèi)核”代碼之間提供自然劃分,主代碼是純軟件,采用標(biāo)準(zhǔn)C/C++進(jìn)行編寫,可以在任何類型的微處理器上執(zhí)行,而內(nèi)核代碼采用OpenCL C語言編寫,運(yùn)行在加速器上。通過對算法進(jìn)行設(shè)計(jì),系統(tǒng)規(guī)劃人員可以選擇哪些功能作為FPGA器件中的內(nèi)核進(jìn)行加速,以提高系統(tǒng)性能。多個(gè)內(nèi)核可以并行工作,進(jìn)一步加速處理。主機(jī)通過一組庫線程與加速器通信,進(jìn)行了一些擴(kuò)展,支持編程人員針對計(jì)算量最大的代碼部分設(shè)定并行處理和存儲(chǔ)器級(jí)。