嵌入式市場對圖形和計算加速的需求正在增長。相機和傳感器陣列在從汽車到工業等不同行業的許多用例中越來越重要,并且正在生成需要復雜處理的越來越豐富的數據流。
與此同時,正在開發使用高質量 3D 圖形甚至增強現實技術的高級用戶界面。然而,部署加速處理的需要,再加上安全關鍵認證的復雜性,造成處理器、加速器、編譯器、API 和庫的混亂局面,推高了嵌入式加速器的集成成本,進而限制了創新和上市時間效率。
開放標準在幫助硬件和軟件供應商成功駕馭這種復雜的技術環境方面發揮著重要作用。嵌入式市場的加速標準可以實現跨平臺軟件可重用性、解耦軟件和硬件開發以便更輕松地部署和集成新組件、提供跨代可重用性并促進現場可升級性。這些標準降低了成本,縮短了上市時間,并降低了在引人注目的現實產品中使用推理和視覺加速等先進技術的障礙。
Khronos 加速標準
20 多年來,Khronos 創建了開放、免版稅的 API 標準,使軟件應用程序庫和引擎能夠利用硅加速的力量來滿足要求苛刻的用例,例如 3D 圖形、增強和虛擬現實、并行計算、視覺處理和推理。
Khronos 開放、免版稅、互操作性標準
許多行業專家一致認為,我們正面臨摩爾定律的終結,因此業界對并行計算的興趣日益濃厚,將加速的重點從單核的頻率擴展轉移到擁有可用于顯著加速的大型核陣列的處理器上數據并行算法。
從廣義上講,并行計算的 Khronos 加速標準可以分為兩組。高級編程框架(例如 SYCL 和 OpenVX)專注于簡化開發,并具有跨多個硬件架構的有效性能可移植性。相比之下,OpenCL 和 Vulkan 等低級 API 使用內核和著色器程序的 SPIR-V 中間表示,提供對硬件資源的直接、顯式訪問,以實現最大的靈活性和控制。
SYCL(讀作“鐮刀”)使異構處理器的代碼能夠與主機應用程序代碼一起編寫在“單一源”文件中,使用標準 C++ 在各種硬件上實現可移植加速。SYCL 通常會將要卸載到加速處理器上的 C++ 應用程序部分編譯成較低級別的 API,例如 OpenCL。
OpenVX(VX 代表“視覺加速”)提供圖形級抽象,通過連接一組函數或“節點”來構建成像和推理功能。這種高級抽象使芯片供應商能夠有效地優化他們的 OpenVX 驅動程序,以便在幾乎任何處理器架構上高效執行。OpenVX 圖形可以結合視覺處理和神經網絡節點進行全局優化,并且可以直接攝取 Khronos 的 NNEF 格式的完整訓練網絡,這提供了來自不同神經網絡框架的開源轉換器的穩定規范。
Vulkan是對現代 GPU 進行高效、跨平臺訪問的唯一開放標準。Vulkan 可以使用計算著色器以及圖形渲染加速任何兼容 GPU 上的計算操作。Vulkan 為下一代 3D 圖形和計算的開發人員帶來了許多好處,包括更簡單的驅動程序、直接和顯式的 GPU 控制、用于多線程應用程序的多個圖形、命令和 DMA 隊列,以及用于多種著色語言的離線前端編譯器。
OpenCL是一種低級標準,用于對 PC、服務器、移動設備和嵌入式設備(包括 GPU、DSP 和 FPGA)中的各種異構處理器進行跨平臺并行編程。OpenCL 提供基于 C 和 C++ 的語言來編寫內核程序,這些程序可以在系統中的任何處理器上并行編譯和執行,并明確控制在哪些處理器上執行哪些內核。OpenCL 通過提供更簡單的編程模型、相對輕量級的運行時、更高的語言靈活性和更嚴格定義的計算操作精度來補充僅 GPU 的 API。
旨在簡化功能安全認證的 API
安全認證在汽車、自動駕駛、醫學成像、交通運輸、工業、能源和航空電子設備等許多市場中至關重要。計算或顯示子系統故障會帶來重大安全風險的系統需要系統級功能安全認證并符合安全標準,例如 RTCA DO-178C A 級/EASA ED-12C A 級(航空電子設備)、ISO 26262 ASIL D(汽車)、IEC 61508(工業)和 IEC 62304(醫療),并遵守 MISRA 和 AUTOSAR 等行業組織的指導方針。
這些市場對高級加速圖形和計算的需求正在增長,這些加速器必須包含在系統級安全認證中。安全認證的高成本推動了開放標準加速 API 的開發,這些 API 旨在通過消除嵌入式市場不必要的功能、增加運行時確定性以及通過減少 API 表面積來簡化系統級認證過程。提供強大的錯誤處理。
從 2003 年的 OpenGL SC 1.0 開始,Khronos 擁有 20 年為安全關鍵市場調整主流加速 API 的歷史。這些舉措利用經過驗證的 API 和多種交付芯片實現,并且開發人員已經熟悉這些 API。
最近發布的 Vulkan SC 1.0 簡化了 Vulkan SC 1.2 API 并提高了運行時確定性。Vulkan SC 管道可以離線編譯和靜態分析,以了解數據流和內存使用情況。然后可以在設備創建時將管道執行所需的內存保留為固定大小的池,以最大限度地減少總體內存使用量并避免運行時內存分配的需要。Vulkan SC 使系統實施者能夠部署 GPU 加速的圖形和計算來滿足安全關鍵義務,并以更低的成本和工作量提供認證證據包。即使沒有正式的安全認證,Vulkan SC 對于實時嵌入式應用程序也非常寶貴。
OpenVX 具有安全關鍵型配置文件,可以快速部署經過訓練的神經網絡模型,使用 OpenVX 作為推理引擎,非常適合安全關鍵型市場。OpenVX 安全關鍵配置文件通過將 OpenVX 圖的開發與其執行分開,使運行時能夠攝取已離線預編譯的二進制圖定義,從而最大限度地減少運行時 API 表面積和運行時大小。OpenVX 規范還使用功能要求標簽編號進行了注釋,并且 OpenVX 標頭符合 MISRA-C。
Khronos 最近還成立了SYCL 安全關鍵探索論壇,以調查在安全關鍵市場中使用 SYCL 標準 C++ 單源編程模型加速計算的通用并行編程 API 的行業要求。以硬件為中心的 API 設計越來越多地與復雜的編譯器技術融合,在利用硅加速進行計算加速時,將可編程靈活性和可移植性顯著提升到新的水平。SYCL SC 探索性論壇處于發現階段,以便在開始標準化工作之前充分了解行業要求并就行業要求達成共識。任何公司都被邀請免費加入探索論壇,并且沒有知識產權許可義務。
標準組織攜手合作
行業中有許多標準開發組織 (SDO),每個組織都有自己的專業領域,因此 SDO 必須建立富有成效的聯絡關系以避免重復工作,并確保來自不同組織的不同標準能夠很好地協同工作。
Khronos 最近宣布與汽車電子、半導體和軟件行業的汽車制造商、供應商、服務提供商和公司的全球發展合作伙伴 AUTOSAR 建立聯系。這項新的合作協議鼓勵信息的有效流動,同時尊重兩個組織的機密性和知識產權框架。它使 Khronos 成員能夠接收有關 AUTOSAR 活動的信息和見解,反之亦然。最終目標是讓 AUTOSAR 用例和需求指導和影響 Khronos 標準的演變,并使 AUTOSAR 平臺能夠有效地利用這些 Khronos API。
在過去的兩年里,Khronos 還與歐洲機器視覺協會 (EMVA) 密切合作,建立了 Khronos 相機工作組,該工作組現在正在構建一個新的開放標準 API,用于控制嵌入式相機。
復雜的光學系統、圖像傳感器和視覺處理器的發展正在加速,嵌入式系統通常將相機傳感器與圖像、視覺和推理加速器緊密集成到獨立的系統中。雖然上述 Khronos API 可用于視覺和推理加速,但沒有廣泛采用的開放標準、跨供應商 API 來簡化新相機子系統的軟件集成,從而導致相機技術的集成成本過高。
對開放標準相機 API 的需求
Khronos 和 EMVA 成員正在設計的相機 API 將通過精確定義的接口為應用程序、庫和框架提供對相機運行時的顯式控制,從而實現應用程序代碼的跨供應商可移植性,并更輕松地與新相機和傳感器進行系統集成。該 API 還將跨多代相機和傳感器保留應用程序代碼,并實現對傳感器流生成的復雜控制,以提高下游處理的效率。
目前正在設計的 Khronos Camera API 的范圍
參與構建您需要的開放標準
嵌入式產品中越來越多地使用計算、視覺和推理加速的集成帶來了重大的新商機,Khronos 正在開發一個不斷增長的開放、免版稅 API 標準系列,以滿足嵌入式和安全關鍵型快速發展的需求市場。
審核編輯:郭婷
-
傳感器
+關注
關注
2550文章
51037瀏覽量
753085 -
嵌入式
+關注
關注
5082文章
19105瀏覽量
304829 -
API
+關注
關注
2文章
1499瀏覽量
61965
發布評論請先 登錄
相關推薦
評論