《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > Xilinx SDAccel 環境 :為數據中心帶來最佳單位功耗性能

Xilinx SDAccel 環境 :為數據中心帶來最佳單位功耗性能

2014-11-26

 引言

    數據中心運維人員總是不斷在尋求更高的服務器性能。目前,他們主要是通過易于編程的多核 CPU 和 GPU 來開發應用,但CPU 和 GPU 都遇到了單位功耗性能的瓶頸壁壘。從事海量數據中心應用開發(如密鑰加速、圖像識別、語音轉錄、加密和文本搜索等)的設計人員既希望 GPU 易于編程,同時又希望硬件具有低功耗、高吞吐量和最低時延功能。然而,多核 CPU和 GPU 加速器在可擴展性上存在嚴重的問題 : 客戶希望用簡單的全高度插入式 PCIe 開發板作為數據中心服務器的應用加速器。這種開發板經配置可運行高功率圖形卡,但客戶同時希望功耗不超過 25W,以便最大化可擴展性并最小化總功耗。

    最近賽靈思同瑞士蘇黎世聯邦理工學院(ETH Zurich)聯合開展的一系列研究發現,基于 FPGA 的應用加速想比 CPU/GPU實現方案,單位功耗性能可提升 25 倍,而時延則縮短了 50 到 75 倍,與此同時還能實現出色的 I/O 集成(PCIe、DDR4SDRAM 接口、高速以太網等) 。換言之,FPGA 能在單芯片上提供高能效硬件應用加速所需的核心功能,并同時提供每個開發板目標功耗低于 25W 的的解決方案。

    中國網絡服務領先企業百度公司在美國加州圣何塞舉行的 2014 年熱門芯片研討會上介紹了支持性調查結果。百度的結論如下 :

• 中端 FPGA 能夠實現 375 GFLOPS 的性能,功耗僅為 10-20W

• 基于 FPGA 的加速器可部署在所有類型的服務器中。

• 和 CPU 和 GPU 相比, FPGA 在深度神經網絡(DNN)預測系統中性能更加出色。DNN系統用于語言識別、圖像搜索、OCR、面部識別、網頁搜索以及自然語言處理等各種不同應用。

    FPGA 用于應用加速的最大問題在于編程。數據中心應用開發人員不希望采用以硬件為中心的 RTL 流程,也就是傳統 FPGA的開發路徑。他們所需要的是 :

• 單位功耗性能更高

• 完全軟件的開發環境

• 易于升級的設計

推出全新賽靈思 SDAccel 環境

    全新的賽靈思 SDAccel 開發環境為數據中心應用開發人員提供了他們所需要的完整的 FPGA 軟硬件解決方案。SDAccel 包括可高效利用片上 FPGA 資源的快速的、架構優化的編譯器 ; 熟悉的軟件開發流程——其帶有用于代碼開發、特性分析與調試的 Eclipse 集成設計環境(IDE) ,可提供類似于 CPU/GPU 的工作環境 ; 以及針對不同數據中心應用而優化的動態可重配置加速器,能在類似 CPU/GPU 運行時間環境中即時更換。運行過程中應用能讓不同處理模塊在 FPGA 中即時替換,且不會干擾服務器 CPU 和 FPGA 之間的連接,實現不間斷的應用加速。

    SDAccel 結合業界首款架構優化編譯器、庫和開發板,是唯一能在 FPGA 上提供類似于 CPU/GPU 的開發和運行時間體驗。SDAccel 開發環境面向基于 X86 服務器處理器的主機系統,并可提供現成的商用(COTS)PCIe 插卡,用于添加FPGA 功能。

行業首款面向 C、C++ 和 OpenCL 的架構優化編譯器

    SDAccel 的架構優化編譯器使軟件開發者能夠優化并編譯流媒體、低時延以及定制數據路徑應用。SDAccel 編譯器主要針對高性能賽靈思 FPGA 并支持 OpenCL,C 和 C++ 任意組合的源代碼。SDAccel 編譯器相比高端 CPU 性能提高達 10 倍,而功耗僅為 GPU 的 1/10,同時能保持代碼的兼容性和一個傳統的軟件編程模式,以便于應用移植并節約成本。根據客戶基準,SDAccel 編譯器相比同類競爭 FPGA 解決方案,性能和資源效率均提升了 3 倍。SDAccel 編譯器自動生成的設計甚至比手動編碼的 RTL 設計方案的性能還高,在某些情況下可高出 20% 之多。

    架構優化的 SDAccel 編譯器可以自動對應用源代碼實施一系列基礎甚至高級的優化方案。下表列出了 SDAccel 編譯器針對加速應用所進行的一系列優化。

    其中一些自動優化能大幅提升整體應用的效率。舉例來說,SDAccel 編譯器的數據流流水線功能可對多個功能進行流水線化,而不會局限于僅能對單一功能進行優化。該編譯器的存儲器優化功能能極大地提升功效,從而讓你能夠在 FPGA 中添加更多功能。SDAccel 是首款面向 FPGA 平臺的完全軟件的開發環境,可實現類似于 CPU/GPU 的開發體驗。開發人員能用熟悉的工作流程優化應用,而且即便很少或者沒有 FPGA 使用經驗,也能獲益于 FPGA 的平臺優勢。集成設計環境(IDE)不僅可提供編碼模板和軟件庫,而且還支持在 x86 平臺上進行編譯、調試、特性分析和 FPGA 仿真。準備好部署后,IDE 能在配有自動儀器插入功能的數據中心用現成的商用 FPGA 平臺上實現算法。

    SDAccel 還經過精心構建,使 CPU/GPU 開發人員能夠輕松將其應用移植到 FPGA 上,同時還可在熟悉的工作流程中維護和復用 OpenCL、C 和 C++ 代碼。大量代碼和庫采用 C 和 C++ 格式。對于希望采用其現有代碼庫中的不同代碼, 或者采用第三方代碼庫,甚至繼續組合使用 C、C++ 或 OpenCL 進行開發的開發者來說,能用 C、C++ 或 OpenCL 工作是最大的便利。

    SDAccel 環境配套提供面向程序員的 Eclipse IDE 以及一系列基于 C 語言的 FPGA 優化庫和數據中心用現成商用平臺。

    Convey Computer、Alpha Data Parallel Systems 和 Pico Computing 公司可提供數據中心用加速板卡。2015 年年初還將增加更多商用現貨(COTS)合作伙伴。SDAccel 庫包括內置 OpenCL 函數、DSP、視頻和線性代數庫,能支持高性能低功耗實現方案。針對特定領域加速,賽靈思聯盟合作成員 Auviz Systems 公司還提供優化的 OpenCV 和 BLAS SDAccel 兼容庫。

    應用開發人員完全能在 X86 仿真空間開始使用 SDAccel 使其代碼開始工作。一旦其確信其算法開發人員就能對代碼進行特性分析,找到受益于加速的代碼片段。然后開發人員就可以利用這些有針對性的片段,無縫采用快速自動生成的周期精確內核仿真,從而實現加速。這些快速仿真可用來調試和優化加速量,同時能在架構層面工作。業經驗證的應用能方便地移植到主機 /FPGA 系統。SDAccel 開發環境可支持所有這些來自同一控制中心(cockpit)的活動。

    SDAccel 庫對 SDAccel 類似 CPU/GPU 的開發體驗發揮了重要作用。這些庫包含底層數學庫以及 BLAS、OpenCV 和 DSP 等高生產力庫。這些庫用 C++(而不是用 RTL)編寫,因此在所有開發和調試階段都能完全像編寫一樣使用。在項目早期階段,所有開發工作都在 CPU 主機上進行。由于 SDAccel 庫用 C++ 語言編寫,因此能與 CPU 目標的應用代碼一起編譯,創建虛擬設計原型,讓所有測試、調試和初始特性分析工作在主機上進行。在此階段無需 FPGA。

     一旦應用經過初始調試和特性分析,需要硬件加速的關鍵功能可通過編譯實現協同仿真,加速功能運行在基于 CPU 的 RTL仿真器上。這時,軟件開發團隊可觀察所得的性能,確定應用能否滿足性能目標要求。RTL 仿真能準確給出 FPGA 硬件加速的性能情況,這就能讓開發團隊得到很好的性能估算,而且能高度確保所得的 FPGA 配置能精確重現應用源代碼的行為和結果。

    加速功能隨后可遷移到 FPGA 上,生成最后的加速應用,可用于部署。SDAccel 編譯器不是創建通用 FPGA 配置,而是在編譯時針對特定的賽靈思 FPGA,包括器件速度等級,這樣所得的加速功能就能針對 FPGA 上的可用資源以及器件時序進行優化。在這時我們甚至還能測試功能,這對性能不會造成影響,硬件開銷極低,而且還能在同樣熟悉的 SDAccel 開發環境中進行更多后期特性分析,以便充分利用 FPGA 硬件,全面最大化應用加速效果。

    CPU 級特性分析能發現應用瓶頸。協同仿真將告訴您這些瓶頸是否已經被加速特定功能消除掉。在 FPGA 上對硬件加速功能進行特性分析能實現更多優化,進一步優化應用代碼和加速功能。在任何時間以及各個階段中,SDAccel 編譯器都可選擇性地檢測應用代碼,包括加速功能,這就意味著調試和特性分析能夠以相同方式進行,而且無論開發工作進入到哪個階段,都可用使用同一軟件開發工具。

在 FPGA 上首次帶來類似 CPU/GPU 的運行時間和升級體驗

    SDAccel 可提供支持實時類似 CPU/GPU 運行時間升級的唯一 FPGA 動態可重配置加速器。SDAccel 對于 FPGA 解決方案的獨特之處在于其利用唯一的 FPGA 動態重配置功能可在內核升級時保持系統繼續運行,這不僅可加載新的硬件加速器內核(這一點與 CPU/GPU 加速器的功能類似) ,同時還能保持關鍵的系統接口和功能(如存儲器、以太網、PCIe 和性能監控器)繼續發揮作用。這種即時的系統重配置功能理想適用于數據中心計算需求及負載的立即更新。這種應用的一個實例就是圖像搜索、視頻轉碼和圖像處理等功能的即時切換,從而帶來戰略性優勢。

    所有這些都能通過硬件重用轉換為資源優化,這在數據中心環境中是一大優勢。簡而言之,基于 SDAccel 的系統現在能加速應用,而如果未來需要另外一種類型的加速,系統能快速順利地實現升級。

    開發者可以管理和運行基于 SDAccel 的系統就像在 CPU/GPU 系統一樣。利用 SDAccel 和硬件快速動態重配置功能,我們甚至能在應用運行中重用 FPGA。這種功能使得我們能用相同的 FPGA 板卡執行不同的內核加速,硬件可針對不同的算法進行重新優化,且不會限制或中斷應用流程。通過支持動態重配置,SDAccel 能讓數據中心運維人員最大限度地發揮硬件加速投資價值。實實在在的標準測試可證明 SDAccel 的性能和價值SDAccel 經過了具有實際標準測試的業界驗證。舉例來說,在壓縮標準測試中,SDAccel 生成的硬件加速器比同類競爭工具生成的加速器速度高 3 倍多,尺寸小 3 倍。占位面積及吞吐量與手動優化的 RTL 實現方案旗鼓相當甚至更優秀。

    在上述的加密標準測試中,SDAccel 生成的硬件加速器比同類競爭工具生成的加速器速度快 1.2 倍,而面積小 4 倍。更棒的是,SDAccel 自動生成的加速器比用 RTL 手動編碼生成的加速器還快 20%。SDAccel 開箱即用,可直接編加速器,而且QOR(結果質量)與手動編碼結果質量旗鼓相當,甚至更勝一籌。

結論

    SDAccel 可滿足數據中心應用開發人員的需求,包括提供類似 CPU/GPU 的工作環境,其生成的高效硬件加速器可實現最佳單位功耗性能,遠勝于運行在 CPU/GPU 上的加速器。SDAccel 通過帶有系統內即時可重配置功能的單個控制中心環境(cockpit environment)支持軟件工作流程,最大化數據中心硬件加速投資回報。因此,SDAccel 是一種獨特而完整的 FPGA解決方案,其易用性和功能遠超同類競爭性工具。這些同類競爭性工具不能提供高生產力工作流程,也不能提供熟悉的環境,加速器性能更不能與 SDAccel 自動生成的硬件加速器相提并論。

 

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 黄色免费视屏 | 亚洲另类电击调教在线观看 | 青青草好 | 日日干日日摸 | 久久精品亚洲综合一品 | 久爱午夜精品免费视频 | 日本日b视频 | 国产免费又爽又黄又刺激的视频 | 色综合色狠狠天天久久婷婷基地 | 制服丝袜在线视频 | 一级黄色毛片视频 | 欧美三级不卡在线观看视频 | 日韩深夜福利视频 | 欧美日韩一区二区三区视频 | 欧美一级一片 | 国产精品精品国产一区二区 | 欧美高清免费一级在线 | 亚洲成a人片在线观看精品 亚洲成a人片在线观看中 | 日韩毛片网站 | 在线国产小视频 | 日韩国产欧美 | 99一级毛片| 欧美精品亚洲 | 在线 中文字幕 日韩 欧美 | 最近中文国语字幕在线播放视频 | 久久久久久久性高清毛片 | 精品福利在线观看 | 黄色在线免费 | 日本三级免费片 | 国产精品国产三级国产an不卡 | 在线看片一区 | 99re久久在热线播放最新地址 | 全免费午夜一级毛片真人 | 日日噜噜噜夜夜爽爽狠狠69 | 乳欲性高清在线 | 欧美一区二区视频在线观看 | 性欧美xxxx视频在线观看 | 在线视频精品免费 | 黄色国产免费观看 | 在线观看91精品国产不卡免费 | 欧美福利在线 |