一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

用于加速嵌入式視覺(jué)和推理的開(kāi)放標(biāo)準(zhǔn)

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Neil Trevett ? 2022-06-30 11:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

機(jī)器學(xué)習(xí)領(lǐng)域的不斷發(fā)展為部署利用神經(jīng)網(wǎng)絡(luò)推理的設(shè)備和應(yīng)用程序創(chuàng)造了新的機(jī)會(huì),這些設(shè)備和應(yīng)用程序具有前所未有的基于視覺(jué)的功能和準(zhǔn)確性水平。但是,快速發(fā)展的領(lǐng)域已經(jīng)讓位于處理器、加速器和庫(kù)的混亂局面。本文介紹了開(kāi)放互操作性標(biāo)準(zhǔn)及其在降低成本和降低在實(shí)際產(chǎn)品中使用推理和視覺(jué)加速的障礙方面的作用。

每個(gè)行業(yè)都需要開(kāi)放標(biāo)準(zhǔn),通過(guò)增加生態(tài)系統(tǒng)元素之間的互操作性來(lái)降低成本和縮短上市時(shí)間。開(kāi)放標(biāo)準(zhǔn)和專(zhuān)有技術(shù)具有復(fù)雜且相互依存的關(guān)系。專(zhuān)有 API接口通常是達(dá)爾文式的試驗(yàn)場(chǎng),并且可以在聰明的市場(chǎng)領(lǐng)導(dǎo)者手中保持主導(dǎo)地位,這也是理所當(dāng)然的。強(qiáng)大的開(kāi)放標(biāo)準(zhǔn)源于行業(yè)對(duì)成熟技術(shù)的更廣泛需求,可以提供健康、激勵(lì)的競(jìng)爭(zhēng)。從長(zhǎng)遠(yuǎn)來(lái)看,不受任何一家公司控制或依賴(lài)于任何一家公司的開(kāi)放標(biāo)準(zhǔn)通??梢猿蔀樾袠I(yè)向前發(fā)展的連續(xù)性線索,因?yàn)榧夹g(shù)、平臺(tái)和市場(chǎng)地位不斷變化和發(fā)展。

Khronos Group 是一個(gè)非營(yíng)利性標(biāo)準(zhǔn)聯(lián)盟,任何公司都可以加入,擁有超過(guò) 150 名成員。所有標(biāo)準(zhǔn)組織的存在都是為了為競(jìng)爭(zhēng)者提供一個(gè)安全的場(chǎng)所,讓他們?yōu)榱怂腥说睦孢M(jìn)行合作。Khronos Group 的專(zhuān)業(yè)領(lǐng)域是創(chuàng)建開(kāi)放、免版稅的 API 標(biāo)準(zhǔn),使軟件應(yīng)用程序庫(kù)和引擎能夠利用硅加速的力量來(lái)滿足要求苛刻的用例,例如 3D 圖形、并行計(jì)算、視覺(jué)處理和推理。

創(chuàng)建嵌入式機(jī)器學(xué)習(xí)應(yīng)用程序

許多互操作部分需要協(xié)同工作來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò)并將其成功部署在嵌入式加速推理平臺(tái)上——如圖 1 所示。有效的神經(jīng)網(wǎng)絡(luò)訓(xùn)練通常需要大型數(shù)據(jù)集,使用浮點(diǎn)精度并在強(qiáng)大的 GPU 上運(yùn)行- 加速臺(tái)式機(jī)或云端。訓(xùn)練完成后,經(jīng)過(guò)訓(xùn)練的神經(jīng)網(wǎng)絡(luò)將被引入為快速?gòu)埩坎僮鲀?yōu)化的推理運(yùn)行時(shí)引擎,或?qū)⑸窠?jīng)網(wǎng)絡(luò)描述轉(zhuǎn)換為可執(zhí)行代碼的機(jī)器學(xué)習(xí)編譯器。無(wú)論使用引擎還是編譯器,最后一步都是在從 GPU 到專(zhuān)用張量處理器的各種加速器架構(gòu)之一上加速推理代碼。

poYBAGK9F-SADt0FAAJcmCrFjKc432.png

圖 1. 訓(xùn)練神經(jīng)網(wǎng)絡(luò)并將其部署在加速推理平臺(tái)上的步驟

那么,行業(yè)開(kāi)放標(biāo)準(zhǔn)如何幫助簡(jiǎn)化這一過(guò)程呢?圖 2. 說(shuō)明了在視覺(jué)和推理加速領(lǐng)域中使用的 Khronos 標(biāo)準(zhǔn)??偟膩?lái)說(shuō),隨著處理器頻率擴(kuò)展讓位于并行編程作為以可接受的成本和功率水平提供所需性能的最有效方式,人們對(duì)所有這些標(biāo)準(zhǔn)的興趣越來(lái)越大。

poYBAGK9F-uAGfTaAAIJO1aJglE410.png

圖 2. 用于加速視覺(jué)和推理應(yīng)用程序和引擎的 Khronos 標(biāo)準(zhǔn)

從廣義上講,這些標(biāo)準(zhǔn)可以分為兩組:高級(jí)和低級(jí)。高級(jí) API 側(cè)重于易于編程,具有跨多個(gè)硬件架構(gòu)的有效性能可移植性。相比之下,低級(jí) API 提供對(duì)硬件資源的直接、顯式訪問(wèn),以實(shí)現(xiàn)最大的靈活性和控制。每個(gè)項(xiàng)目都必須了解最適合其開(kāi)發(fā)需求的 API 級(jí)別。此外,高級(jí) API 通常會(huì)在其實(shí)現(xiàn)中使用低級(jí) API。

讓我們更詳細(xì)地了解其中的一些 Khronos 標(biāo)準(zhǔn)。

SYCL - C++ 單源異構(gòu)編程

SYCL(發(fā)音為“鐮刀”)使用 C++ 模板庫(kù)來(lái)調(diào)度標(biāo)準(zhǔn) ISO C++ 應(yīng)用程序的選定部分以卸載處理器。SYCL 使復(fù)雜的 C++ 機(jī)器學(xué)習(xí)框架和庫(kù)能夠直接編譯并加速到在許多情況下優(yōu)于手動(dòng)調(diào)整代碼的性能水平。如圖 3 所示,默認(rèn)情況下,SYCL 是通過(guò)較低級(jí)別的 OpenCL 標(biāo)準(zhǔn) API 實(shí)現(xiàn)的:將用于加速的代碼提供給 OpenCL,而剩余的主機(jī)代碼則通過(guò)系統(tǒng)的默認(rèn) CPU 編譯器提供。

poYBAGK9F_SAaFvGAAI66OcXC40066.png

圖 3. SYCL 將標(biāo)準(zhǔn) C++ 應(yīng)用程序拆分為 CPU 和 OpenCL 加速代碼

越來(lái)越多的 SYCL 實(shí)現(xiàn),其中一些使用專(zhuān)有后端,例如 NVIDIA 的 CUDA 用于加速代碼。值得注意的是,英特爾的新 oneAPI Initiative 包含一個(gè)名為 DPC++ 的并行 C++ 編譯器,它是基于 OpenCL 的符合 SYCL 實(shí)現(xiàn)。

NNEF——神經(jīng)網(wǎng)絡(luò)交換格式

當(dāng)今使用的神經(jīng)網(wǎng)絡(luò)訓(xùn)練框架有數(shù)十種,包括 Torch、Caffe、TensorFlow、Theano、Chainer、Caffe2、PyTorch 和 MXNet 等等,并且都使用專(zhuān)有格式來(lái)描述他們訓(xùn)練的網(wǎng)絡(luò)。還有數(shù)十種甚至數(shù)百種嵌入式推理處理器進(jìn)入市場(chǎng)。迫使許多硬件供應(yīng)商理解和導(dǎo)入如此多的格式是一個(gè)典型的碎片問(wèn)題,可以通過(guò)如圖 4 所示的開(kāi)放標(biāo)準(zhǔn)來(lái)解決。

poYBAGK9F_2AKJOCAASIT151abE059.png

圖 4. NNEF 神經(jīng)網(wǎng)絡(luò)交換格式通過(guò)推理加速器簡(jiǎn)化訓(xùn)練網(wǎng)絡(luò)的攝取

NNEF 文件格式旨在在網(wǎng)絡(luò)訓(xùn)練和推理芯片領(lǐng)域之間架起一座有效的橋梁——Khronos 久經(jīng)考驗(yàn)的多公司治理模型讓硬件社區(qū)對(duì)格式如何以一種滿足開(kāi)發(fā)處理器工具鏈和框架的公司,通常在安全關(guān)鍵市場(chǎng)。

NNEF 并不是業(yè)界唯一的神經(jīng)網(wǎng)絡(luò)交換格式,ONNX 是由 Facebook 和微軟共同創(chuàng)立的開(kāi)源項(xiàng)目,是一種被廣泛采用的格式,主要專(zhuān)注于訓(xùn)練框架之間的網(wǎng)絡(luò)交換。NNEF 和 ONNX 是互補(bǔ)的,因?yàn)?ONNX 跟蹤培訓(xùn)創(chuàng)新和機(jī)器學(xué)習(xí)研究社區(qū)的快速變化,而 NNEF 的目標(biāo)是嵌入式推理硬件供應(yīng)商,這些供應(yīng)商需要一種具有更深思熟慮的路線圖演變的格式。Khronos 圍繞 NNEF 發(fā)起了一個(gè)不斷發(fā)展的開(kāi)源工具生態(tài)系統(tǒng),包括來(lái)自關(guān)鍵框架的導(dǎo)入器和導(dǎo)出器以及一個(gè)模型動(dòng)物園,以使硬件開(kāi)發(fā)人員能夠測(cè)試他們的推理解決方案。

OpenVX – 便攜式加速視覺(jué)處理

OpenVX(VX 代表“視覺(jué)加速”)通過(guò)提供圖形級(jí)抽象來(lái)簡(jiǎn)化視覺(jué)和推理軟件的開(kāi)發(fā),使程序員能夠通過(guò)連接一組函數(shù)或“節(jié)點(diǎn)”來(lái)構(gòu)建他們所需的功能。這種高級(jí)抽象使芯片供應(yīng)商能夠非常有效地優(yōu)化他們的 OpenVX 驅(qū)動(dòng)程序,以便在幾乎任何處理器架構(gòu)上高效執(zhí)行。隨著時(shí)間的推移,OpenVX 在原始視覺(jué)節(jié)點(diǎn)旁邊添加了推理功能——畢竟神經(jīng)網(wǎng)絡(luò)只是另一個(gè)圖!通過(guò)將 NNEF 訓(xùn)練的網(wǎng)絡(luò)直接導(dǎo)入 OpenVX 圖中,OpenVX 和 NNEF 之間的協(xié)同作用越來(lái)越大,如圖 5 所示。

poYBAGK9GAaAdwqCAAJ1o95EBn4346.png

圖 5. OpenVX 圖可以描述從 NNEF 文件導(dǎo)入的視覺(jué)節(jié)點(diǎn)和推理操作的任意組合

OpenVX 1.3 于 2019 年 10 月發(fā)布,使針對(duì)垂直細(xì)分市場(chǎng)(例如推理)的精心挑選的規(guī)范子集能夠被實(shí)施和測(cè)試,使其符合官方標(biāo)準(zhǔn)。OpenVX 還與 OpenCL 深度集成,使程序員能夠添加自己的自定義加速節(jié)點(diǎn)以在 OpenVX 圖形中使用 - 提供簡(jiǎn)單的可編程性和可定制性的獨(dú)特組合。

OpenCL – 異構(gòu)并行編程

OpenCL 是一種低級(jí)標(biāo)準(zhǔn),用于對(duì) PC、服務(wù)器、移動(dòng)設(shè)備和嵌入式設(shè)備中的各種異構(gòu)處理器進(jìn)行跨平臺(tái)并行編程。OpenCL 提供基于 C 和 C++ 的語(yǔ)言來(lái)構(gòu)建內(nèi)核程序,這些程序可以在具有 OpenCL 編譯器的系統(tǒng)中的任何處理器上并行編譯和執(zhí)行,從而為程序員明確控制在哪些處理器上執(zhí)行哪些內(nèi)核。OpenCL 運(yùn)行時(shí)協(xié)調(diào)加速器設(shè)備的發(fā)現(xiàn),為選定的設(shè)備編譯內(nèi)核,以復(fù)雜的同步級(jí)別執(zhí)行內(nèi)核并收集結(jié)果,如圖 6 所示。

poYBAGK9GA-AejlFAAEcvcdSvok868.png

圖 6. OpenCL 使 C 或 C++ 內(nèi)核程序能夠跨異構(gòu)處理器的任意組合并行編譯和執(zhí)行

OpenCL 在整個(gè)行業(yè)中廣泛使用,為計(jì)算、視覺(jué)和機(jī)器學(xué)習(xí)庫(kù)、引擎和編譯器提供最低的“接近金屬”執(zhí)行層。

OpenCL 最初是為在高端 PC 和超級(jí)計(jì)算機(jī)硬件上執(zhí)行而設(shè)計(jì)的,但在與 OpenVX 類(lèi)似的演變過(guò)程中,需要 OpenCL 的處理器越來(lái)越小,精度越來(lái)越低,因?yàn)樗鼈円赃吘壱曈X(jué)和推理為目標(biāo)。OpenCL 工作組正在努力定義為嵌入式處理器量身定制的功能,并使供應(yīng)商能夠交付針對(duì)關(guān)鍵功耗和成本敏感用例的選定功能,并且完全符合要求。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19890

    瀏覽量

    235126
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1662

    瀏覽量

    50208
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8502

    瀏覽量

    134592
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux嵌入式和單片機(jī)嵌入式的區(qū)別?

    區(qū)別 單片機(jī)嵌入式系統(tǒng)和Linux嵌入式系統(tǒng)是兩種不同的嵌入式系統(tǒng)開(kāi)發(fā)方式,它們?cè)趹?yīng)用領(lǐng)域、開(kāi)發(fā)環(huán)境、資源需求等方面都有顯著的區(qū)別。以下是它們的主要區(qū)別: 1.應(yīng)用領(lǐng)域: 單片機(jī)嵌入式
    發(fā)表于 06-20 09:46

    嵌入式開(kāi)發(fā)入門(mén)指南:從零開(kāi)始學(xué)習(xí)嵌入式

    隨著物聯(lián)網(wǎng)、智能硬件的發(fā)展,嵌入式開(kāi)發(fā)成為熱門(mén)技能之一。以下將為初學(xué)者提供一份詳細(xì)的嵌入式開(kāi)發(fā)入門(mén)指南,涵蓋學(xué)習(xí)路徑、必備工具、推薦資源等內(nèi)容。 1. 嵌入式系統(tǒng)的定義與應(yīng)用嵌入式系統(tǒng)
    發(fā)表于 05-15 09:29

    使用Lattice mVision打造嵌入式視覺(jué)系統(tǒng)解決方案

    嵌入式視覺(jué)嵌入式系統(tǒng)與機(jī)器視覺(jué)技術(shù)的集合,嵌入式視覺(jué)系統(tǒng)硬件集成攝像頭模組和處理板,將圖像捕獲
    的頭像 發(fā)表于 03-06 16:09 ?820次閱讀

    ARM架構(gòu)嵌入式主板特點(diǎn)

    嵌入式主板可以理解為嵌入在設(shè)備中用于控制和數(shù)據(jù)處理的CPU板,也就是設(shè)備的“大腦”。當(dāng)主板嵌入到設(shè)備中,當(dāng)然對(duì)主板的體積和功耗會(huì)有更嚴(yán)格的要求(嵌入
    的頭像 發(fā)表于 12-31 16:03 ?1003次閱讀
    ARM架構(gòu)<b class='flag-5'>嵌入式</b>主板特點(diǎn)

    什么是嵌入式人工智能

    嵌入式人工智能是指將人工智能技術(shù)應(yīng)用于嵌入式系統(tǒng)中的一種技術(shù)。嵌入式系統(tǒng)是嵌入到其他設(shè)備或系統(tǒng)中的計(jì)算機(jī)系統(tǒng),通常
    的頭像 發(fā)表于 12-11 09:23 ?993次閱讀
    什么是<b class='flag-5'>嵌入式</b>人工智能

    嵌入式超火的方向有哪些?

    目前,隨著全球物聯(lián)網(wǎng)設(shè)備的大量使用和ChatGpt等AI大模型的出現(xiàn),嵌入式系統(tǒng)市場(chǎng)目前呈現(xiàn)出快速發(fā)展的趨勢(shì),各種嵌入式系統(tǒng)被廣泛應(yīng)用于汽車(chē)、醫(yī)療、農(nóng)業(yè)、工業(yè)自動(dòng)化、安防監(jiān)控等領(lǐng)域。但目前嵌入
    發(fā)表于 11-21 15:49

    嵌入式和人工智能究竟是什么關(guān)系?

    、連接主義和深度學(xué)習(xí)等不同的階段。目前,人工智能已經(jīng)廣泛應(yīng)用于各種領(lǐng)域,如自然語(yǔ)言處理、計(jì)算機(jī)視覺(jué)、智能推薦等。 嵌入式系統(tǒng)和人工智能在許多方面都存在密切的關(guān)聯(lián)性。首先,嵌入式系統(tǒng)可
    發(fā)表于 11-14 16:39

    什么是嵌入式?一文讀懂嵌入式主板

    在現(xiàn)代科技浪潮中,嵌入式技術(shù)已成為支撐各種智能設(shè)備和系統(tǒng)運(yùn)行的核心力量。那么,究竟什么是嵌入式?嵌入式系統(tǒng),顧名思義,是將計(jì)算機(jī)的硬件和軟件嵌入到某種設(shè)備或系統(tǒng)中,以實(shí)現(xiàn)特定功能的計(jì)算
    的頭像 發(fā)表于 10-16 10:14 ?2601次閱讀

    AMD 面向嵌入式系統(tǒng)推出高能效 EPYC 嵌入式 8004 系列

    AMD 憑借其 EPYC? 嵌入式處理器不斷樹(shù)立行業(yè)標(biāo)準(zhǔn),為網(wǎng)絡(luò)、存儲(chǔ)和工業(yè)應(yīng)用提供卓越的性能、效率、連接與創(chuàng)新。今天,我們正以第四代 AMD EPYC 嵌入式 8004 系列處理器擴(kuò)展這一
    發(fā)表于 10-11 13:58 ?1066次閱讀

    ARMxy嵌入式計(jì)算機(jī)在機(jī)器視覺(jué)中的卓越表現(xiàn)

    嵌入式視覺(jué)是指在嵌入式系統(tǒng)中使用計(jì)算機(jī)視覺(jué)技術(shù),與經(jīng)常所說(shuō)的機(jī)器視覺(jué)系統(tǒng)的區(qū)別在于嵌入式
    的頭像 發(fā)表于 10-10 14:47 ?545次閱讀
    ARMxy<b class='flag-5'>嵌入式</b>計(jì)算機(jī)在機(jī)器<b class='flag-5'>視覺(jué)</b>中的卓越表現(xiàn)

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱(chēng)為嵌入式系統(tǒng)的核心組件,是一種用于控制和數(shù)據(jù)處理的計(jì)算機(jī)硬件,其設(shè)計(jì)旨在嵌入特定設(shè)備中執(zhí)行專(zhuān)門(mén)任務(wù)。嵌入式主板如同是設(shè)備
    的頭像 發(fā)表于 09-30 10:05 ?1614次閱讀

    飛凌嵌入式「在線文檔」功能上線 | 開(kāi)放靈活,盡在掌握

    在忙碌的研發(fā)過(guò)程中,效率十分關(guān)鍵,飛凌嵌入式深知“便捷獲取最新資料”的重要性,為此全新上線【在線文檔】功能——進(jìn)入飛凌嵌入式官網(wǎng),產(chǎn)品資料全面升級(jí)為在線文檔形式,旨在為客戶帶來(lái)更加開(kāi)放與靈活的使用體驗(yàn)。
    的頭像 發(fā)表于 09-13 09:46 ?617次閱讀
    飛凌<b class='flag-5'>嵌入式</b>「在線文檔」功能上線 | <b class='flag-5'>開(kāi)放</b>靈活,盡在掌握

    嵌入式linux開(kāi)發(fā)板芯片的工作原理

    嵌入式Linux開(kāi)發(fā)板是一種基于Linux操作系統(tǒng)的嵌入式系統(tǒng)開(kāi)發(fā)平臺(tái),它廣泛應(yīng)用于工業(yè)控制、智能家居、智能交通、醫(yī)療設(shè)備等領(lǐng)域。 嵌入式Linux開(kāi)發(fā)板概述
    的頭像 發(fā)表于 09-02 09:07 ?817次閱讀

    用于標(biāo)準(zhǔn)嵌入式網(wǎng)絡(luò),CANopen有什么不同?

    ,CANopen定義了應(yīng)用層的通信規(guī)則,因此特別適用于需要標(biāo)準(zhǔn)化設(shè)備配置和網(wǎng)絡(luò)管理的嵌入式網(wǎng)絡(luò)。 ? CANopen協(xié)議簡(jiǎn)介 1994年發(fā)布的國(guó)際標(biāo)準(zhǔn)ISO 11898-2定義了CAN
    的頭像 發(fā)表于 08-22 01:19 ?4121次閱讀

    Astra? SL系列SL1680詳細(xì)介紹,嵌入式物聯(lián)網(wǎng)處理器

    Astra? SL系列嵌入式處理器是高度集成的AI原生Linux?和Android?的片上系統(tǒng)(SoC),針對(duì)多模式消費(fèi)者、企業(yè)和工業(yè)物聯(lián)網(wǎng)工作負(fù)載進(jìn)行硬件優(yōu)化,并配備了邊緣推理、安全、視頻、圖形
    的頭像 發(fā)表于 08-15 10:32 ?599次閱讀
    Astra? SL系列SL1680詳細(xì)介紹,<b class='flag-5'>嵌入式</b>物聯(lián)網(wǎng)處理器