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

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

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

昇騰AI框架全棧深度介紹

智能計算芯世界 ? 來源:智能計算芯世界 ? 2023-10-22 16:19 ? 次閱讀

不同于傳統(tǒng)的支持通用計算的CPUGPU,也不同于專用于某種特定算法的專用芯片ASIC,達芬奇架構(gòu)本質(zhì)上是為了適應(yīng)某個特定領(lǐng)域中的常見的應(yīng)用和算法,通常稱之為“特定域架構(gòu)(Domain Specific Architecture,DSA)”芯片。昇騰AI芯片的計算核心主要由AI Core構(gòu)成,負責(zé)執(zhí)行標(biāo)量、向量和張量相關(guān)的計算密集型算子。

1. 昇騰AI全棧架構(gòu)

5edea02a-70b0-11ee-939d-92fbcf53809c.png

1.1 昇騰AI全棧的四個大部分

應(yīng)用使能層面,此層面通常包含用于部署模型的軟硬件,例如APISDK、部署平臺,模型庫等等。

AI框架層面,此層面包含用于構(gòu)建模型的訓(xùn)練框架,例如華為的MindSpore、TensorFlow、Pytorch等。

異構(gòu)計算架構(gòu),偏底層、偏通用的計算框架,用于針對上層AI框架的調(diào)用進行加速,力求向上支持多種AI框架,并在硬件上進行加速。

計算硬件,本層是AI計算的底座,有了強力的芯片及硬件設(shè)備,上層的加速才有實施的基礎(chǔ)。

2. 異構(gòu)計算架構(gòu) CANN

2.1 CANN 抽象的五層架構(gòu)

華為公司面向計算機視覺、自然語言處理、推薦系統(tǒng)、類機器人等領(lǐng)域量身打造了基于“達芬奇(DaVinci)架構(gòu)”的昇騰(Ascend)AI處理器,開啟了智能之旅。為提升用戶開發(fā)效率和釋放昇騰AI處理器澎湃算力,同步推出針對AI場景的異構(gòu)計算架構(gòu)CANN(Compute Architecture for Neural Networks),CANN通過提供多層次的編程接口,以全場景、低門檻、高性能的優(yōu)勢,支持用戶快速構(gòu)建基于Ascend平臺的AI應(yīng)用和業(yè)務(wù)。 昇騰AI異構(gòu)計算架構(gòu)(Compute Architecture for Neural Networks,CANN)被抽象成五層架構(gòu),如下圖所示。

5f0152c8-70b0-11ee-939d-92fbcf53809c.png

1. 昇騰計算語言接口

昇騰計算語言(Ascend Computing Language,AscendCL)接口是昇騰計算開放編程框架,是對低層昇騰計算服務(wù)接口的封裝。它提供Device(設(shè)備)管理、Context(上下文)管理、Stream(流)管理、內(nèi)存管理、模型加載與執(zhí)行、算子加載與執(zhí)行、媒體數(shù)據(jù)處理、Graph(圖)管理等API庫,供用戶開發(fā)人工智能應(yīng)用調(diào)用。

2. 昇騰計算服務(wù)層

本層主要提供昇騰計算庫,例如神經(jīng)網(wǎng)絡(luò)(Neural Network,NN)庫、線性代數(shù)計算庫(Basic Linear Algebra Subprograms,BLAS)等;昇騰計算調(diào)優(yōu)引擎庫,例如算子調(diào)優(yōu)、子圖調(diào)優(yōu)、梯度調(diào)優(yōu)、模型壓縮以及AI框架適配器。

3. 昇騰計算編譯引擎

本層主要提供圖編譯器(Graph Compiler)和TBE(Tensor Boost Engine)算子開發(fā)支持。前者將用戶輸入中間表達(Intermediate Representation,IR)的計算圖編譯成NPU運行的模型。后者提供用戶開發(fā)自定義算子所需的工具。

4. 昇騰計算執(zhí)行引擎

本層負責(zé)模型和算子的執(zhí)行,提供如運行時(Runtime)庫(執(zhí)行內(nèi)存分配、模型管理、數(shù)據(jù)收發(fā)等)、圖執(zhí)行器(Graph Executor)、數(shù)字視覺預(yù)處理(Digital Vision Pre-Processing,DVPP)、人工智能預(yù)處理(Artificial Intelligence Pre-Processing,AIPP)、華為集合通信庫(Huawei Collective Communication Library,HCCL)等功能單元。

5. 昇騰計算基礎(chǔ)層

本層主要為其上各層提供基礎(chǔ)服務(wù),如共享虛擬內(nèi)存(Shared Virtual Memory,SVM)、設(shè)備虛擬化(Virtual Machine,VM)、主機-設(shè)備通信(Host Device Communication,HDC)等。

2.2 CANN 的三層邏輯架構(gòu)

5f1055f2-70b0-11ee-939d-92fbcf53809c.png

1. 應(yīng)用層

包括基于 Ascend 平臺開發(fā)的各種應(yīng)用,以及 Ascend 提供給用戶進行算法開發(fā)、調(diào)優(yōu)的應(yīng)用類工具。1. 推理應(yīng)用

基于 AscendCL 提供的 API 構(gòu)建推理應(yīng)用

2. AI 框架

包括 TensorFlow、Caffe、MindSpore 以及第三方框架

3. 模型小型化工具

實現(xiàn)對模型進行量化,加速模型

4. AutoML 工具

基于 MindSpore 自動學(xué)習(xí)工具,根據(jù)昇騰芯片特點進行搜索生成親和性網(wǎng)絡(luò),充分發(fā)揮昇騰性能

5. 加速庫

基于 AscendCL 構(gòu)建的加速庫(當(dāng)前支持 Blas 加速庫)

6. MindStudio

提供給開發(fā)者的集成開發(fā)環(huán)境和調(diào)試工具,可以通過MindStudio進行離線模型轉(zhuǎn)換、離線推理算法應(yīng)用開發(fā)調(diào)試、算法調(diào)試、自定義算子開發(fā)和調(diào)試、日志查看、性能調(diào)優(yōu)、系統(tǒng)故障查看等

2. 芯片使能層

實現(xiàn)解決方案對外能力開放,以及基于計算圖的業(yè)務(wù)流的控制和運行。1. AscendCL 昇騰計算語言庫

開放編程框架,提供 Device/Context/Stream/ 內(nèi)存等的管理、模型及算子的加載與執(zhí)行、媒體數(shù)據(jù)處理、Graph 管理等 API 庫,供用戶開發(fā)深度神經(jīng)網(wǎng)絡(luò)應(yīng)用。

2. 圖優(yōu)化和編譯

統(tǒng)一的 IR 接口對接不同前端,支持 TensorFlow/Caffe/MindSpore 表達的計算圖的解析/優(yōu)化/編譯,提供對后端計算引擎最優(yōu)化部署能力

Graph Engine:圖編譯和運行的控制中心

Fusion Engine:管理算子融合規(guī)則

AICPU Engine:AICPU 算子信息管理

HCCL:HCCL 算子信息管理

3. 算子編譯和算子庫

TBE:編譯生成算子及算子開發(fā)工具

算子庫:神經(jīng)網(wǎng)絡(luò)加速庫

4. 數(shù)字視覺預(yù)處理

實現(xiàn)視頻編解碼(VENC/VDEC)、JPEG 編解碼(JPEG/E)、PNG 解碼(PNGD)、VPC(預(yù)處理)

5. 執(zhí)行引擎

Runtime:為神經(jīng)網(wǎng)絡(luò)的任務(wù)分配提供資源管理通道

Task Scheduler:計算圖 Task 序列的管理和調(diào)度、執(zhí)行

3. 計算資源層

主要實現(xiàn)系統(tǒng)對數(shù)據(jù)的處理和對數(shù)據(jù)的運算執(zhí)行。1. 計算設(shè)備

AI Core:執(zhí)行 NN 類算子

AI CPU:執(zhí)行 CPU 算子

DVPP:視頻/圖像編解碼、預(yù)處理

2. 通信鏈路

PCIe:芯片間或芯片與 CPU 間高速互聯(lián)

HCCS:實現(xiàn)芯片間緩存一致性功能

RoCE:實現(xiàn)芯片內(nèi)存 RDMA 功能

3. 昇騰計算語言接口 AscendCL

3.1 AscendCL 簡介

AscendCL(Ascend Computing Language,昇騰計算語言)是昇騰計算開放編程框架,是對底層昇騰計算服務(wù)接口的封裝,它提供運行時資源(例如設(shè)備、內(nèi)存等)管理、模型加載與執(zhí)行、算子加載與執(zhí)行、圖片數(shù)據(jù)編解碼/裁剪/縮放處理等API庫,實現(xiàn)在昇騰CANN平臺上進行深度學(xué)習(xí)推理計算、圖形圖像預(yù)處理、單算子加速計算等能力。簡單來說,就是統(tǒng)一的API框架,實現(xiàn)對所有資源的調(diào)用。

5f32fb2a-70b0-11ee-939d-92fbcf53809c.png

3.2 AscendCL 的優(yōu)勢

1. 高度抽象:算子編譯、加載、執(zhí)行的API歸一,相比每個算子一個API,AscendCL大幅減少API數(shù)量,降低復(fù)雜度。 2. 向后兼容:AscendCL具備向后兼容,確保軟件升級后,基于舊版本編譯的程序依然可以在新版本上運行。 3. 零感知芯片:一套AscendCL接口可以實現(xiàn)應(yīng)用代碼統(tǒng)一,多款昇騰處理器無差異。

3.3 AscendCL 的主要應(yīng)用場景

1. 開發(fā)應(yīng)用:用戶可以直接調(diào)用AscendCL提供的接口開發(fā)圖片分類應(yīng)用、目標(biāo)識別應(yīng)用等。 2. 供第三方框架調(diào)用:用戶可以通過第三方框架調(diào)用AscendCL接口,以便使用昇騰AI處理器的計算能力。 3. 供第三方開發(fā)lib庫:用戶還可以使用AscendCL封裝實現(xiàn)第三方lib庫,以便提供昇騰AI處理器的運行管理、資源管理等能力。

3.4 AscendCL 的分層能力開放

AscendCL 提供的是分層開放能力的管控,通過不同的組件對不同的使能部件進行對接。包含 GE 能力開放、算
子能力開放、Runtime 能力開放、Driver 能力開放等。

模型加載能力開放:處理om模型加載,但接口的開放是通過AscendCL。

算子能力開放:算子能力實現(xiàn)在CANN中,但算子能力開放是通過AscendCL。

Runtime 能力開放:處理基于stream的設(shè)備能力、內(nèi)存、event等資源能力開發(fā)訴求,對app屏蔽底層實現(xiàn)。

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

    關(guān)注

    68

    文章

    19032

    瀏覽量

    228448
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1176

    瀏覽量

    120139
  • 框架
    +關(guān)注

    關(guān)注

    0

    文章

    397

    瀏覽量

    17359
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    29359

    瀏覽量

    267643
  • 模型
    +關(guān)注

    關(guān)注

    1

    文章

    3058

    瀏覽量

    48572

原文標(biāo)題:昇騰AI框架全棧深度介紹

文章出處:【微信號:AI_Architect,微信公眾號:智能計算芯世界】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    華為云AI計算解決方案正式發(fā)布

    14日,在視覺計算領(lǐng)域行業(yè)盛會LiveVideoStack音視頻技術(shù)大會上,華為云發(fā)布了視覺計算領(lǐng)域的重磅解決方案AI計算解決方案,并提出
    的頭像 發(fā)表于 12-15 01:12 ?5568次閱讀

    華為正式推出兩款AI芯片:910和310

    在今日舉行的華為聯(lián)接2018大會上,華為輪值董事長徐直軍首次闡述了AI戰(zhàn)略。徐直軍宣布,一直以來華為都在研發(fā)AI芯片,在此正式發(fā)布兩款AI芯片:
    的頭像 發(fā)表于 10-10 10:32 ?6332次閱讀

    OpenHarmony集成 AI

    OpenHarmony集成 AI:目前,沒有提供OpenHarmony系統(tǒng)可用的驅(qū)動。如果OpenHarmony要用
    發(fā)表于 02-17 11:57

    310的用途以及設(shè)計細節(jié)

    10月10日,華為在聯(lián)接大會2018上,首次宣布了華為的AI戰(zhàn)略以及解決方案。與此同時,華為發(fā)布了自研云端AI芯片“
    發(fā)表于 10-13 10:49 ?1.3w次閱讀

    華為推出910、310兩款AI芯片,910的半精度算力可達到256 TFLOPs

    說起華為的芯片我們首先想到的就是麒麟980、麒麟970,其實華為不只有麒麟處理器,也一直在研發(fā)AI芯片。在剛剛舉行的華為鏈接2018 (HUAWEI CONNECT 2018)大會上,華為輪值CEO徐直軍公布了華為
    發(fā)表于 10-10 16:18 ?1.9w次閱讀

    華為發(fā)布AI軟件平臺,讓AI計算觸手可及

    今日,在深圳舉行的AI新品全球發(fā)布會(HAI 2020)上,華為發(fā)布業(yè)界領(lǐng)先的AI
    發(fā)表于 08-10 17:40 ?1016次閱讀

    華為發(fā)布AI軟件平臺讓AI計算觸手可及

    8月10日,在深圳舉行的AI新品全球發(fā)布會HAI 2020上,華為發(fā)了布業(yè)界領(lǐng)先的AI
    發(fā)表于 08-10 17:12 ?386次閱讀

    日報: 華為AI軟件平臺首次披露 谷歌AI新技術(shù)

    華為AI軟件平臺首次披露 ▲▲▲ 近日,在華為HAI 2020大會上,華為發(fā)布迄今為止
    的頭像 發(fā)表于 09-08 16:53 ?2925次閱讀

    華為AI觀:解析華為AI全景圖

    提到,還停留在「超強芯片」的刻板印象? 不不不,是時候重新認識一下它的「暴力美學(xué)」了AI
    的頭像 發(fā)表于 09-27 15:10 ?2787次閱讀

    計算產(chǎn)業(yè)發(fā)展白皮書發(fā)布 全場景AI共促計算產(chǎn)業(yè)發(fā)展

    [中國,上海,2020年9月24日]以萬里,讓智能無所不及 為主題的首屆計算產(chǎn)業(yè)峰會在上海成功舉辦。來自全國各地的業(yè)內(nèi)專家、行業(yè)先鋒、生態(tài)伙伴等約500多人齊聚一堂,共同探討
    的頭像 發(fā)表于 09-27 09:17 ?3217次閱讀

    AI的三級跳

    我們的讀者,應(yīng)該都已經(jīng)關(guān)注AI很長時間了。 如果回溯整個AI計算產(chǎn)業(yè)的發(fā)展歷程,會發(fā)現(xiàn)兩
    的頭像 發(fā)表于 07-16 19:42 ?1678次閱讀
    <b class='flag-5'>昇</b><b class='flag-5'>騰</b><b class='flag-5'>AI</b>的三級跳

    基于CANN的AI應(yīng)用開發(fā)

    本次AI開發(fā)者創(chuàng)享日圍繞基于CANN的AI應(yīng)用開發(fā),多位技術(shù)大咖分享多樣的趣味訓(xùn)練。
    的頭像 發(fā)表于 04-24 13:16 ?1624次閱讀

    華為基于AI基礎(chǔ)軟硬件平臺 助力企業(yè)的數(shù)字化和智能化轉(zhuǎn)型

    華為基于AI基礎(chǔ)軟硬件平臺,逐步打造完善了從底層硬件、到中間AI框架到上層應(yīng)用使能平臺的整個AI
    的頭像 發(fā)表于 05-26 14:28 ?2165次閱讀

    華為服務(wù)器研究框架 服務(wù)器行業(yè)演進歷程

    AI軟硬件平臺構(gòu)筑智能世界的基石,計算產(chǎn)
    發(fā)表于 04-01 10:03 ?1146次閱讀

    深度解析AI架構(gòu)設(shè)計

    面向計算機視覺、自然語言處理、推薦系統(tǒng)、類機器人等領(lǐng)域量身打造了基于“達芬奇(DaVinci)架構(gòu)”的(Ascend)AI處理器,開啟了智能之旅。
    發(fā)表于 05-30 09:54 ?1380次閱讀
    <b class='flag-5'>深度</b>解析<b class='flag-5'>昇</b><b class='flag-5'>騰</b><b class='flag-5'>AI</b><b class='flag-5'>全</b><b class='flag-5'>棧</b>架構(gòu)設(shè)計