偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

百度跨平臺(tái)AI推理加速引擎--Anakin

企業(yè)動(dòng)態(tài)
AI 技術(shù)包含訓(xùn)練和推理兩個(gè)階段。推理階段的性能好壞既關(guān)系到用戶體驗(yàn),又關(guān)系到企業(yè)的服務(wù)成本,甚至在一些極端應(yīng)用上(比如無(wú)人駕駛)直接關(guān)系到個(gè)人生命財(cái)產(chǎn)安全。

 一、前言

  AI 技術(shù)包含訓(xùn)練和推理兩個(gè)階段。推理階段的性能好壞既關(guān)系到用戶體驗(yàn),又關(guān)系到企業(yè)的服務(wù)成本,甚至在一些極端應(yīng)用上(比如無(wú)人駕駛)直接關(guān)系到個(gè)人生命財(cái)產(chǎn)安全。目前 AI 落地面臨的挑戰(zhàn)主要來(lái)源于兩方面,一方面是 AI 算法的日新月異,帶來(lái)了計(jì)算量的猛增,從 AlexNet 到 AlphaGo,5 年多的時(shí)間里計(jì)算量提升了 30w 倍。另一方面是底層硬件異構(gòu)化的趨勢(shì)愈發(fā)明顯,近年來(lái)涌現(xiàn)出非常多優(yōu)秀的架構(gòu)來(lái)解決 AI 計(jì)算力問(wèn)題。推理引擎的首要任務(wù)就是將性能優(yōu)異且計(jì)算量龐大的深度學(xué)習(xí)框架快速部署到不同的硬件架構(gòu)之上,并且能夠保持性能相對(duì)高效。然而縱觀開(kāi)源社區(qū)和閉源解決方案,沒(méi)有任何一款推理引擎可以同時(shí)滿足開(kāi)源、跨平臺(tái)、高性能三個(gè)特性。因此,我們結(jié)合百度實(shí)際業(yè)務(wù)的需求、百度優(yōu)秀工程師的研發(fā)能力以及行業(yè)合作伙伴的大力支持共同完成了百度自己的推理引擎 Anakinv0.1.0。Anakin 目前支持 Intel-CPU、NVIDIA-GPU、AMD-GPU 和 ARM 平臺(tái),后續(xù)將支持更多平臺(tái)如寒武紀(jì)、比特大陸等。今天 Anakin 正式開(kāi)源,期望能夠借助社區(qū)的力量把 Anakin 打造的更加精美!

二、 Anakin 架構(gòu)

圖 1  Anakin 框架

  Anakin 框架的核心邏輯如圖 1 所示,主要由 Parser,Framework 和 Saber 組成。Parser 是獨(dú)立解析器,用于將不同訓(xùn)練框架生成的模型轉(zhuǎn)化為統(tǒng)一的 Anakin 圖描述。Framework 是框架主體,使用 C++ 實(shí)現(xiàn),用于完成硬件無(wú)關(guān)的所有操作,比如構(gòu)建網(wǎng)絡(luò)、圖融合、資源復(fù)用、計(jì)算調(diào)度等。Saber 是一個(gè)高效的跨平臺(tái)計(jì)算庫(kù),包括大量的匯編級(jí)優(yōu)化代碼,并支持眾多國(guó)際行業(yè)合作伙伴的架構(gòu),如 Intel-cpu,NV-gpu,AMD-gpu 和 ARM 等,同時(shí)以后還將支持寒武紀(jì) MLU100 和比特大陸 BM1682 這兩款優(yōu)秀的國(guó)產(chǎn)芯片。

三、 Anakin 功能特性

  Anakin v0.1.0 具有開(kāi)源、跨平臺(tái)、高性能三個(gè)特性,它可以在不同硬件平臺(tái)實(shí)現(xiàn)深度學(xué)習(xí)的高速推理功能。Anakin 在 NV、Intel、ARM 和 AMD-GPU 架構(gòu)上,體現(xiàn)了低功耗、高速預(yù)測(cè)的特點(diǎn)。

  1. 支持眾多異構(gòu)平臺(tái)-跨平臺(tái)

  Anakin 廣泛的和各個(gè)硬件廠商合作,采用聯(lián)合開(kāi)發(fā)或者部分計(jì)算底層自行設(shè)計(jì)和開(kāi)發(fā)的方式,為 Anakin 打造不同硬件平臺(tái)的計(jì)算引擎。目前 Anakin 已經(jīng)支持了多種硬件架構(gòu),如 Intel-CPU、NVIDIA-GPU、AMD-GPU、ARM 等,未來(lái)將會(huì)陸續(xù)支持比特大陸、寒武紀(jì)深度學(xué)習(xí)芯片等等不同硬件架構(gòu)。我們希望 Anakin 可以為用戶提供更靈活的底層選擇,更方便簡(jiǎn)單的部署方式,并在不同底層硬件上達(dá)到***性能。

  2. 高性能

  Anakin 在眾多硬件平臺(tái)都有很好的性能收益, 本文列舉了一些實(shí)驗(yàn)對(duì)比測(cè)試數(shù)據(jù),更詳盡的數(shù)據(jù)請(qǐng)參見(jiàn) GitHub 上的 benchmark 數(shù)據(jù)。

  • 在 NV 架構(gòu)上,我們選擇 Anakin v0.1.0、TensorRT v3.0.0、Tensorflow v1.7.0 和 Caffe v1.0.0 進(jìn)行了對(duì)比,具體的對(duì)比結(jié)果如圖 2 所示。

  測(cè)試平臺(tái) Nvidia-P4 信息:

  ·   GPU ArchitectureNVIDIA Pascal™

  ·   Single-Precision Performance5.5 TFLOPS

  ·   GPU Memory 8 GB

  • 在 Intel 架構(gòu)上,我們選取 Tensorflow-v1.8.0 進(jìn)行對(duì)比,具體的對(duì)比結(jié)果如圖 3 所示。

圖 3 Anakin andTensorflow on CPU

  測(cè)試平臺(tái)信息:

  ·   i7-7700:Intel (R) Core (TM) i7-7700 CPU @ 3.60GHz

  ·   2650-v4:Intel (R) Xeon (R) CPU E5-2650 v4 @ 2.20GHz

  ·   2620-v4:Intel (R) Xeon (R) CPU E5-2620 v4 @ 2.10GHz

  • 在移動(dòng)端 ARM 上,我們選取 Tensorflow-lite 進(jìn)行對(duì)比,具體的對(duì)比結(jié)果如圖 4 所示:

圖 4 Anakin and TFlite on ARM

  測(cè)試平臺(tái)信息:

  ·   榮耀 v9(root):處理器:麒麟 960, 4 big cores in2.36GHz, 4 little cores in 1.8GHz

  ·   高通 835,4 big cores in 2.36GHz, 4 little cores in 1.9GHz

  • 在 AMD-GPU 架構(gòu)上,我們選取 Anakin-v0.1.0 進(jìn)行橫向?qū)Ρ?,具體的對(duì)比結(jié)果如圖 5 所示:

 

圖 5 MI8 and P4 on VGG16 model

  測(cè)試平臺(tái)信息:

  ·   MI8: AMDRadeon Instinct MI8

  single-Precision Performance8.192 TFLOPS

  GPU Memory 4 GB

  ·   P4: GPU Architecture NVIDIAPascal™

  Single-Precision Performance5.5 TFLOPS

  GPU Memory 8 GB

  圖 5 中的折線圖表示 MI8 和 P4 的執(zhí)行效率的相對(duì)比例,具體的計(jì)算公式:

  P4_Latency * P4_TFLOPS / (MI8_Latency* MI8_TFLOPS);

   從圖上的折線可知 Anakin 在 MI8 和 P4 上執(zhí)行效率非常接近,在 Thread_num 大于 2 時(shí) Anakin_MI8 效率更高。

  3. 匯編級(jí)的 kernel 優(yōu)化

   Anakin 追求的目標(biāo)是***,因此它提供了一套基于 NVIDIAGPU SASS 匯編級(jí)優(yōu)化的庫(kù)。SASS 庫(kù)支持多種(如 sm61,sm50)NVIDA GPU 架構(gòu)的匯編實(shí)現(xiàn)的 conv 和 gemm 的核心計(jì)算。由于和 NVIDIA 商業(yè)保密協(xié)議規(guī)定,目前只能開(kāi)源編譯好的 SASS 庫(kù)

四、Anakin 值得一提的技術(shù)亮點(diǎn)

  • 輕量的 dashboard

  Anakin v0.1.0 框架中的 Parser 提供了一個(gè)額外的小功能,可以讓開(kāi)發(fā)者查看 Anakin 優(yōu)化前后的網(wǎng)絡(luò)結(jié)構(gòu)及參數(shù),如圖 6 和圖 7 所示。這將有助于開(kāi)發(fā)者方便的分析模型。同時(shí),在優(yōu)化后的 Anakin 執(zhí)行圖中會(huì)添加相應(yīng)的優(yōu)化標(biāo)記,主要包括 memory 復(fù)用、op 融合、并行度分析、執(zhí)行順序分析、存儲(chǔ)器使用以及同步標(biāo)記等。例如,在圖 7 中,對(duì)于標(biāo)記了 New 標(biāo)簽的地方,在代碼運(yùn)行過(guò)程中,將只會(huì)對(duì)這些內(nèi)容分配內(nèi)存。這種處理方式將使得 Anakin 運(yùn)行時(shí)所需的 memory 更少。

圖 6 優(yōu)化前的網(wǎng)絡(luò)結(jié)構(gòu)圖

圖 7 優(yōu)化后的網(wǎng)絡(luò)結(jié)構(gòu)圖 

  • Anakin-lite 輕量的移動(dòng)端版本

  Anakin 還提供了在移動(dòng)端運(yùn)行的輕量版本 anakin-lite, 我們借助上層圖優(yōu)化機(jī)制,幫助深度學(xué)習(xí)模型 code 自動(dòng)生成,針對(duì)具體模型自動(dòng)生成的可執(zhí)行文件,并且結(jié)合針對(duì) ARM 專(zhuān)門(mén)設(shè)計(jì)的一套輕量接口,合并編譯生成模型的 lite 版本。

  Anakin-lite 保持精簡(jiǎn)化,全底層庫(kù)大小經(jīng)過(guò)剪裁只有 150K 左右,加上自動(dòng)生成的深度學(xué)習(xí)模型模塊,總大小在 200K。模型參數(shù)不再采用 protobuf 而是精簡(jiǎn)的 weights 堆疊的方式,盡可能減小 model 尺寸。同時(shí),anakin-lite 依然保有上層 anakin 框架的優(yōu)化分析信息(比如存儲(chǔ)復(fù)用等),最終可以做到內(nèi)存消耗相對(duì)較小,模型尺寸相對(duì)精簡(jiǎn)。

  • Anakin 多層次的應(yīng)用

  ***個(gè)層次:Anakin 可以是一個(gè)計(jì)算庫(kù);

  第二個(gè)層次:Anakin 可以是一個(gè)獨(dú)立的推理引擎;

  第三個(gè)層次:Anakin 可以通過(guò) Anakin-rpc 構(gòu)建一個(gè)完整的推理服務(wù)?! ?nbsp;

五、Anakin 的發(fā)展前景

    Anakin v0.1.0 具有開(kāi)源、跨平臺(tái)、高性能三個(gè)特性,它可以在不同硬件平臺(tái)實(shí)現(xiàn)深度學(xué)習(xí)的高速推理功能。對(duì)于每個(gè)開(kāi)發(fā)廠商,僅僅使用一套 Anakin 框架,就能在不同的硬件服務(wù)器上實(shí)現(xiàn)快速推理。

      Anakin 的***目標(biāo)是幫助實(shí)際業(yè)務(wù)模型快速迭代和上線,為深度學(xué)習(xí)模型產(chǎn)業(yè)化落地掃清障礙,從而讓廣大的工程師更專(zhuān)注算法設(shè)計(jì),從繁重的優(yōu)化和工程中解脫出來(lái),進(jìn)而推動(dòng)深度學(xué)習(xí)的哪怕一點(diǎn)點(diǎn)的進(jìn)步,這就是我們***的愿望。

責(zé)任編輯:張燕妮 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2020-09-16 13:57:27

百度世界2020百度大腦

2021-06-03 15:22:37

百度智能云AI原生

2011-12-08 15:31:24

百度開(kāi)放平臺(tái)

2013-03-11 10:16:52

百度BAE

2023-10-18 11:34:16

AI Native百度

2018-09-06 18:37:45

百度云

2017-11-17 10:04:17

百度世界大會(huì)百度AI

2011-09-06 16:33:35

百度世界2011

2014-07-25 17:12:39

數(shù)據(jù)庫(kù)WOT2014MongoDB

2013-08-22 17:08:50

2018-03-09 22:56:52

PaddlePaddl

2013-08-23 17:12:07

百度WebApp開(kāi)發(fā)框架

2015-05-27 09:51:45

百度深度學(xué)習(xí)人工智能

2013-11-08 13:26:57

百度LBS開(kāi)放平臺(tái)

2012-07-02 09:41:29

百度云計(jì)算平臺(tái)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)