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