91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

算法優(yōu)化福音:算子自動(dòng)優(yōu)化工具AutoKernel正式開源啦

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-12-08 22:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

文章轉(zhuǎn)載于: Tengine開發(fā)者社區(qū)
作者:小O妹

算子自動(dòng)優(yōu)化的發(fā)展趨勢(shì)
隨著AI技術(shù)的快速發(fā)展,深度學(xué)習(xí)在各個(gè)領(lǐng)域得到了廣泛應(yīng)用。深度學(xué)習(xí)模型能否成功在終端落地應(yīng)用,滿足產(chǎn)品需求,一個(gè)關(guān)鍵的指標(biāo)就是神經(jīng)網(wǎng)絡(luò)模型的推理性能。于是,一大波算法工程師為了算法的部署轉(zhuǎn)崗算子優(yōu)化工程師。然而,優(yōu)化代碼并不是一件簡(jiǎn)單的事,它要求工程師既要精通計(jì)算機(jī)體系架構(gòu),又要熟悉算法的計(jì)算流程,于是,稍微有經(jīng)驗(yàn)的深度學(xué)習(xí)推理優(yōu)化工程師都成了各家公司爭(zhēng)搶的“香餑餑”。人才少,需求多,算子優(yōu)化自動(dòng)化是未來的大趨勢(shì)。
AutoKernel是什么?

最近,一個(gè)致力于降低優(yōu)化門檻,提升優(yōu)化開發(fā)效率的算子自動(dòng)優(yōu)化工具AutoKernel開源了。

AutoKernel是一個(gè)高性能算子自動(dòng)優(yōu)化工具,可以自動(dòng)優(yōu)化調(diào)度策略、生成底層優(yōu)化代碼,大幅減少各硬件芯片算子開發(fā)成本,提升算子優(yōu)化效率,讓工程師更快實(shí)現(xiàn)深度學(xué)習(xí)算法在各硬件芯片上的高性能部署。
AutoKernel的定位
為了方便大家進(jìn)一步理解AutoKernel,我們需要先了解一下深度學(xué)習(xí)推理計(jì)算平臺(tái)的層級(jí)。

深度學(xué)習(xí)的推理計(jì)算平臺(tái)可以分為以下幾個(gè)層級(jí):
1、最上層對(duì)接各個(gè)深度學(xué)習(xí)訓(xùn)練框架訓(xùn)練出來的算法模型(Tensorflow, Caffe, Pytorch, Mxnet等);
2、 Hign-level IR是計(jì)算圖(Computation Graph)層級(jí)。神經(jīng)網(wǎng)絡(luò)可以理解為計(jì)算圖(graph),一個(gè)計(jì)算圖由多個(gè)算子(opterator)節(jié)點(diǎn)組成,這些節(jié)點(diǎn)可以是卷積算子(Convolution), 池化算子(Pooling), 全連接算子(Fc)等。這個(gè)層級(jí)可以進(jìn)行一些圖層級(jí)的優(yōu)化,算子融合,子圖切分的操作等;
3、接下來就是算子(Operator/Kernel)層級(jí)。這個(gè)層級(jí)需要支持每個(gè)硬件后端的每個(gè)算子實(shí)現(xiàn)。目前的高性能算子計(jì)算庫主要是由資深HPC工程師(高性能計(jì)算優(yōu)化工程師)進(jìn)行手工開發(fā)。AutoKernel就是算子層級(jí)的一個(gè)自動(dòng)優(yōu)化工具,自動(dòng)生成適應(yīng)不同后端的算子優(yōu)化代碼;
4、最后是各硬件后端:GPU, ARM CPU, X86 CPU, NPU等。
AutoKernel目前屬于算子層級(jí)的自動(dòng)優(yōu)化工具。
AutoKernel如何實(shí)現(xiàn)部署優(yōu)化?
部署優(yōu)化之前,我們先了解一下AutoKernel的三大特性:
·低門檻: 無需底層優(yōu)化匯編的知識(shí)門檻
·簡(jiǎn)單易用: 提供docker環(huán)境,無需安裝環(huán)境,plugin一鍵集成到推理框架
·高效率: 無需手寫優(yōu)化匯編,一鍵生成優(yōu)化代碼,一鍵部署
作為算子層級(jí)的一個(gè)自動(dòng)優(yōu)化工具,AutoKernel支持將自動(dòng)優(yōu)化的算子代碼集成進(jìn)部署推理框架,主要流程分為兩步:
1. 生成:編寫算法描述和調(diào)度策略,生成相應(yīng)后端的優(yōu)化算子代碼;
2. 部署:將生成的優(yōu)化算子代碼通過插件plugin的形式集成進(jìn)推理框架Tengine。

AutoKernel的算子生成模塊(Op Generator)使用了業(yè)界廣泛使用的自動(dòng)代碼生成項(xiàng)目Halide。Halide是一個(gè)DSL(domain specific language) 編程語言,它將算法和硬件后端分離。本模塊輸入Halide語言的算法描述和優(yōu)化調(diào)度策略,指定硬件后端,就可以自動(dòng)生成優(yōu)化代碼。為了減少開發(fā)者配置環(huán)境的遇到問題,AutoKernel提供了docker鏡像,docker里面已經(jīng)安裝好Halide, 并且配置好Halide的Python的API,方便開發(fā)者使用。
AutoKernel的部署模塊Autokernel Plugin是一個(gè)相對(duì)獨(dú)立的插件,只依賴于Tengine的算子頭文件,不依賴于Tengine庫。它實(shí)現(xiàn)了將AutoKernel Generator生成優(yōu)化的算子代碼,以Plugin的形式集成進(jìn)Tengine推理框架中,實(shí)現(xiàn)自動(dòng)優(yōu)化算子的一鍵部署。整個(gè)過程不需要重新編譯Tengine庫,只需要獨(dú)立編譯Plugin的動(dòng)態(tài)庫,在運(yùn)行時(shí)加載Autokernel Plugin的庫,就能調(diào)用自動(dòng)生成的算子實(shí)現(xiàn)。下面的圖展示了使用AutoKernel前后的變化,只需要在運(yùn)行時(shí)添加一行代碼,加載autokernel plugin的動(dòng)態(tài)庫:

AutoKernel還有一個(gè)模塊叫AutoSearch,該模塊通過強(qiáng)化學(xué)習(xí)/機(jī)器學(xué)習(xí)/遺傳算法搜索出相應(yīng)后端的最優(yōu)算子的調(diào)度策略參數(shù)。該模塊目前仍在開發(fā)中。
AutoKernel使用教程
下圖是展示了在Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz的電腦上的優(yōu)化效果,無需手工擼代碼,無需編寫繁雜冗長(zhǎng)的底層匯編代碼,只需十幾行簡(jiǎn)潔的調(diào)度代碼, 就能性能優(yōu)化200+倍~

推薦閱讀

更多Tengine相關(guān)內(nèi)容請(qǐng)關(guān)注Tengine-邊緣AI推理框架專欄。

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

    關(guān)注

    1818

    文章

    50132

    瀏覽量

    265724
  • AIoT
    +關(guān)注

    關(guān)注

    8

    文章

    1650

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Linux進(jìn)程樹分析工具pstree詳解與實(shí)戰(zhàn)指南(另一視角優(yōu)化Linux系統(tǒng))

    在 Linux 系統(tǒng)開發(fā)與運(yùn)維中,理解進(jìn)程的運(yùn)行狀態(tài)和相互關(guān)系是排查問題、優(yōu)化性能的基礎(chǔ)。pstree 作為一款輕量高效的進(jìn)程樹可視化工具,能直觀展示系統(tǒng)中所有進(jìn)程的父子關(guān)系,為系統(tǒng)分析提供關(guān)鍵線索。本文將從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化,
    的頭像 發(fā)表于 02-04 16:21 ?763次閱讀
    Linux進(jìn)程樹分析<b class='flag-5'>工具</b>pstree詳解與實(shí)戰(zhàn)指南(另一視角<b class='flag-5'>優(yōu)化</b>Linux系統(tǒng))

    淘寶搜索API:關(guān)鍵詞優(yōu)化工具,提升曝光率!

    ? ?在電商領(lǐng)域,曝光率是決定商品銷量的關(guān)鍵因素之一。淘寶作為國內(nèi)領(lǐng)先的電商平臺(tái),提供了強(qiáng)大的搜索API接口,幫助開發(fā)者構(gòu)建關(guān)鍵詞優(yōu)化工具,從而提升商品在搜索結(jié)果中的排名和曝光。本文將詳細(xì)介紹淘寶
    的頭像 發(fā)表于 01-05 15:38 ?213次閱讀
    淘寶搜索API:關(guān)鍵詞<b class='flag-5'>優(yōu)化工具</b>,提升曝光率!

    程序運(yùn)行速度很慢如何優(yōu)化

    ;gt;外設(shè),內(nèi)存<->內(nèi)存)交給DMA,釋放CPU資源。 優(yōu)化算法: 選擇時(shí)間復(fù)雜度更低的算法。避免不必要的循環(huán)和重復(fù)計(jì)算。 減少函數(shù)調(diào)用開銷: 對(duì)于頻繁調(diào)用的小函數(shù)
    發(fā)表于 11-17 06:12

    如何對(duì)蜂鳥e203內(nèi)核乘除法器進(jìn)行優(yōu)化

    器:對(duì)每個(gè)流水線階段中的數(shù)據(jù)進(jìn)行部分商和余數(shù)的計(jì)算和累加操作。 二、優(yōu)化方案 優(yōu)化乘法器 為了提高蜂鳥E203的乘法器性能,可以采取以下幾個(gè)優(yōu)化方案: 采用更高效的算法:Booth
    發(fā)表于 10-24 06:47

    優(yōu)化boot4的乘法運(yùn)算周期

    可以在不同的時(shí)鐘周期內(nèi)完成,從而并行化運(yùn)算流程,提高乘法器的運(yùn)算性能。 采用多級(jí)壓縮:在Boot4乘法器中,使用了基于連乘算法的多級(jí)壓縮技術(shù)。可以通過增加多級(jí)壓縮,進(jìn)一步降低管理乘法器位寬度的開銷,提升性能。 優(yōu)化算法:在尋找
    發(fā)表于 10-21 13:17

    蜂鳥E203內(nèi)核優(yōu)化方法

    。 修改內(nèi)核參數(shù):對(duì)蜂鳥E203的內(nèi)核參數(shù)進(jìn)行相應(yīng)修改,可以優(yōu)化內(nèi)核運(yùn)行效率,提高系統(tǒng)性能,比如調(diào)整緩存大小、內(nèi)存分配策略等。 資源管理:進(jìn)行有針對(duì)的資源管理,例如調(diào)度算法的修改,調(diào)整好CPU占用率等,以
    發(fā)表于 10-21 07:55

    怎樣確保自動(dòng)化工具在電能質(zhì)量在線監(jiān)測(cè)裝置的安全防護(hù)檢查中的準(zhǔn)確性?

    ? 確保自動(dòng)化工具在電能質(zhì)量在線監(jiān)測(cè)裝置安全防護(hù)檢查中的準(zhǔn)確性,需圍繞 “ 工具本質(zhì)可靠性、場(chǎng)景適配性、結(jié)果可驗(yàn)證性、全生命周期管控 ” 四大核心,從工具選型、校準(zhǔn)溯源、算法
    的頭像 發(fā)表于 09-23 17:42 ?633次閱讀

    UWB自動(dòng)跟隨技術(shù)原理、算法融合優(yōu)化和踩坑實(shí)錄

    UWB為什么是最靠譜的自動(dòng)跟隨技術(shù)?原理是什么?需要做什么算法融合、優(yōu)化?我們?cè)陂_發(fā)過程中踩過的坑。
    的頭像 發(fā)表于 08-14 17:45 ?1579次閱讀
    UWB<b class='flag-5'>自動(dòng)</b>跟隨技術(shù)原理、<b class='flag-5'>算法</b>融合<b class='flag-5'>優(yōu)化</b>和踩坑實(shí)錄

    信號(hào)發(fā)生器如何與波束賦形算法配合優(yōu)化

    、SINR和誤碼率(BER),優(yōu)化算法參數(shù)(如波束寬度、掃描步長(zhǎng))。 2. 軟件級(jí)配合:信號(hào)發(fā)生器與算法仿真工具鏈協(xié)同 工具鏈組成: MA
    發(fā)表于 08-08 14:41

    UPS電源—工業(yè)自動(dòng)化,UPS電源優(yōu)化電力的秘訣

    在工業(yè)自動(dòng)化領(lǐng)域,電力質(zhì)量的穩(wěn)定性對(duì)于設(shè)備的正常運(yùn)行和生產(chǎn)效率至關(guān)重要。UPS電源(不間斷電源)作為電力保障的關(guān)鍵設(shè)備,通過一系列技術(shù)手段,能夠有效地優(yōu)化工業(yè)自動(dòng)化中的電力質(zhì)量。以下是UPS電源在工業(yè)
    的頭像 發(fā)表于 08-04 22:14 ?788次閱讀
    UPS電源—工業(yè)<b class='flag-5'>自動(dòng)</b>化,UPS電源<b class='flag-5'>優(yōu)化</b>電力的秘訣

    鴻蒙5開發(fā)寶藏案例分享---性能優(yōu)化案例解析

    鴻蒙性能優(yōu)化寶藏指南:實(shí)戰(zhàn)工具與代碼案例解析 大家好呀!今天在翻鴻蒙開發(fā)者文檔時(shí),意外挖到一個(gè) 性能優(yōu)化寶藏庫 ——原來官方早就提供了超多實(shí)用工具和案例,但很多小伙伴可能沒發(fā)現(xiàn)!這篇就
    發(fā)表于 06-12 16:36

    VirtualLab:光柵的優(yōu)化與分析

    光柵是光學(xué)工程師使用的最基本的工具。為了設(shè)計(jì)和分析這類組件,快速物理光學(xué)建模和設(shè)計(jì)軟件VirtualLab Fusion為用戶提供了許多有用的工具。其中包括參數(shù)優(yōu)化,以輕松優(yōu)化系統(tǒng),以
    發(fā)表于 05-23 08:49

    OptiSystem應(yīng)用:增益平坦濾波器優(yōu)化

    擇過濾器組件,可視化工具選項(xiàng)卡應(yīng)選擇雙端口分析器。 設(shè)置優(yōu)化 優(yōu)化參數(shù)設(shè)置 優(yōu)化元件選擇增益平坦濾波器 可視化工具選項(xiàng)卡應(yīng)選擇雙端口
    發(fā)表于 04-10 08:49

    英諾達(dá)推出RTL功耗優(yōu)化工具

    英諾達(dá)(成都)電子科技有限公司隆重推出芯片設(shè)計(jì)早期RTL級(jí)功耗優(yōu)化工具—EnFortius RTL Power Explorer(ERPE),該工具可以高效、全面地在RTL設(shè)計(jì)階段進(jìn)行功耗優(yōu)化機(jī)會(huì)
    的頭像 發(fā)表于 03-20 17:06 ?1199次閱讀

    VirtualLab Fusion應(yīng)用:使用optiSLang進(jìn)行光柵優(yōu)化

    Fusion中提供了來自Dynardo的optiSLang軟件接口,因此使優(yōu)化過程可以應(yīng)用不同的高級(jí)優(yōu)化算法。 2.VirtualLab Fusion 和optiSLang的界面 兩種軟件平臺(tái)的結(jié)合
    發(fā)表于 03-18 08:51