美文网首页
达芬奇架构简介

达芬奇架构简介

作者: 若隐爱读书 | 来源:发表于2021-07-17 22:04 被阅读0次

不同与传统的支持通用计算的CPU与GPU,达芬奇架构本质上是为了适应某个特定领域中的常见应用和算法,通常称为“特定域架构(Domain Specific Architecture,DSA)”芯片。从目前打榜数据看,DSA芯片在推理方面的表现远远好于GPU。
昇腾AI处理器的计算核心主要由AI Core构成,负责执行向量、标量相关的计算密集型算子。AI Core采用的就是达芬奇架构,基本结构图如下:(图片来自昇腾官网)

AI Core架构图

AI Core中主要由计算单元、存储单元、与控制单元三部分构成。

计算单元

计算单元是AI Core中提供强大算力的核心单元,是核心中的核心。AI Core中的执行单元主要包括:Cube,Vector和Scalar,完成AI Core中不同类型的数据计算。Cube计算单元即矩阵计算单元,主要完成矩阵相关的运算。Vector计算单元即向量计算单元,用于向量的计算。Scalar即标量运算单元,主要用于程序的流程控制。

存储单元

AI Core中存在内部存储,AI Core需要把外部存储中的数据加载到内部存储中,才能完成相应的计算。AI Core的内部存储包括:L1 Buffer,L0 Buffer,Unified Buffer,GPR(General-Purpose Register:通用寄存器),SPR(Special-Purpose Register:专用寄存器)和Scalar Buffer。
为了配合AI Core中的数据传输和搬运,AI Core中还包含BIU(Bus Interface Unit),MTE1(Memory Transfer Engine,内存传输引擎),MTE2,MTE3。其中BIU为AI Core与总线交互的接口;MTE为数据搬运单元,完成不同Buffer之间的数据搬运。


基本数据通路图

控制单元

AI Core中的控制单元主要包括:系统控制模块(System Control),标量指令处理队列(Scalar PSQ),指令发射模块(Instr. Dispatch),矩阵运算队列(Cube Queue),向量运算队列(Vector Queue),存储转换队列(MTE Queue)和事件同步模块(Event Sync)。系统控制模块负责指挥和协调AI Core的整体运行模式,配置参数和实现功耗控制等。标量指令处理队列主要实现控制指令的译码。当指令被译码并通过指令发射模块顺次发射出去后,根据指令的不同类型,将会分别被发送到矩阵运算队列、向量运算队列和存储转换队列。

相关文章

  • 达芬奇架构简介

    不同与传统的支持通用计算的CPU与GPU,达芬奇架构本质上是为了适应某个特定领域中的常见应用和算法,通常称为“特定...

  • 压力测试平台(nGrinder)入门到精通教程

    nGrinder简介&架构 1、 nGrinder简介&架构 nGrinder管理员指南 1、nGrinder安装...

  • 读书笔记|樊登读书会《列奥纳多·达·芬奇》

    作者:伊伊Vivien 阅读时间:30s 一、达芬奇简介: 达芬奇是欧洲文艺复兴时期伟大的画家、科学家和发...

  • Spring Boot校园微信点餐系统开发

    1 架构简介 2 项目设计 2.1 2.2 架构和基础框架

  • 核心知识

    (1) 架构 (1-1) 架构概览 (1-2) 模块(NgModule)简介 (1-3) 组件简介 (1-4) 服...

  • Docker 架构简介

    Docker架构详解 Docker 的核心组件包括: Docker 客户端 - Client Docker 服务器...

  • nsq架构简介

    1、组件 NSQ由三个守护进程组成 nsqd:nsqd 是一个守护进程,负责接收,排队,投递消息给客户端。它可以独...

  • Flux架构简介

    一图胜前言流程图四个部分 View: 视图层 Action(动作): 视图层发出的交互 Dispatcher(派发...

  • MVVM架构简介

    [翻译]本文翻译自objc.io官网iOS大神Ash Furrow的文章, 原文可查看Introduction t...

  • kafka架构简介

    Kafka 架构简介 Kafka是一个开源的、分布式的、可分区的、可复制的基于日志提交的发布订阅消息系统。它具备以...

网友评论

      本文标题:达芬奇架构简介

      本文链接:https://www.haomeiwen.com/subject/yivlultx.html