达芬奇架构 DaVinci Core - 小记

news2024/11/16 1:37:23

文章目录


  • 官方文档 : HUAWEI Da Vinci Architecture
    https://support.huaweicloud.com/intl/en-us/odevg-A800_9000_9010/atlaste_10_0007.html
  • PPT : DaVinci: A Scalable Architecture for Neural Network Computing
    https://www.cmc.ca/wp-content/uploads/2020/03/Zhan-Xu-Huawei.pdf

相关博客

  • 吴建明wujianming : 达芬奇架构NPU
    https://zhuanlan.zhihu.com/p/352481421

  • 计算单元
    • Cube
    • Vector
    • Scalar
  • 存储单元
  • 控制单元

作为Ascend AI处理器的计算核心,AI core负责执行计算密集型向量和张量算子。

它可以被看作是现代微处理器的简化结构。它包括三个基本的计算资源:矩阵计算单元(立方体单元)、矢量计算单元(矢量单元)和标量计算单元(标量单元)。
这三个计算单元分别对应三种常见的计算模式:张量、向量和标量。
在实际计算过程中,三个计算单元各司其职,形成三条独立的执行管线,在系统软件的统一调度下相互配合,实现计算效率的优化。
此外,立方体单元和矢量单元支持不同精度和不同类型的计算模式。


AI Core architecture
在这里插入图片描述


AI核心由计算单元、存储单元和控制单元组成。

  • 计算单位
    AI核心中的执行单元包括Cube、Vector和Scalar,它们是不同类型数据的计算单元。
  • 存储单元
    AI Core将外部数据加载到内部存储器进行计算。
    程序员可见的内部存储设备包括L1缓冲区、L0缓冲区、统一缓冲区、通用寄存器(GPR)、专用寄存器(SPR)和标量缓冲区。
    为了便于AI Core中的数据传输和移动,提供了总线接口单元(BIU)、存储器传输引擎1(MTE1)、MTE2和MTE3。
    BIU为AI核心和总线之间的交互提供了一个接口。
    MTE在不同的缓冲区之间移动数据。
  • 控制单元
    AI核心的控制单元包括系统控制、标量PSQ、Instr.Dispatch、立方体队列、矢量队列、MTE队列和事件同步。System Control负责AI Core的运行模式、参数配置和功耗控制。
    标量PSQ主要用于对控制指令进行解码。
    使用Instr.Dispatch模块对指令进行解码和顺序传输后,它们将按类型分别发送到Cube Queue、Vector Queue或MTE Queue模块。

华为AI全景图
在这里插入图片描述


伊织 2023-08-04(周五)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/834595.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《Ansible自动化工具篇:Centos操作系统基于ansible工具一键远程离线部署之K8S1.24.12二进制版集群》

一、部署背景 由于业务系统的特殊性,我们需要针对不同的客户环境部署二进制版K8S集群,由于大都数用户都是专网环境,无法使用外网,为了更便捷,高效的部署,针对业务系统的特性,我这边编写了 基于a…

【OJ比赛日历】快周末了,不来一场比赛吗? #08.05-08.11 #15场

CompHub[1] 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…)比赛。本账号会推送最新的比赛消息,欢迎关注! 以下信息仅供参考,以比赛官网为准 目录 2023-08-05(周六) #7场比赛2023-08-06…

深度学习论文分享(六)Simple Baselines for Image Restoration

深度学习论文分享(六)Simple Baselines for Image Restoration 前言Abstract1 Introduction2 Related Works2.1 Image Restoration2.2 Gated Linear Units 3 Build A Simple Baseline3.1 Architecture3.2 A Plain Block3.3 Normalization3.4 Activation3…

新手指南:流程图中各种图形的含义及用法解析

我们经常在技术设计、沟通、业务演示等一些领域看到流程图,它也可以称为输入输出图。顾名思义,它是指一种简单的工作流程的具体步骤,比如包括一次会议的流程,以及一次生产制造的顺序和过程等。本文将为大家介绍流程图的含义和具体…

通向架构师的道路之tomcat集群

一、为何要集群 单台App Server再强劲,也有其瓶劲,先来看一下下面这个真实的场景。 当时这个工程是这样的,tomcat这一段被称为web zone,里面用springws,还装了一个jboss的规则引擎Guvnor5.x,全部是ws没有se…

python怎么保存代码文件,python中怎么保存代码

大家好,给大家分享一下怎么保存python代码写好怎么运行,很多人还不知道这一点。下面详细解释一下。现在让我们来看看! 广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返…

c++11 标准模板(STL)(std::basic_ofstream)(二)

定义于头文件 <fstream> template< class CharT, class Traits std::char_traits<CharT> > class basic_ifstream : public std::basic_istream<CharT, Traits> 类模板 basic_ifstream 实现文件流上的高层输入操作。它将 std::basic_istrea…

windows环境下安装RabbitMQ

一、RabbitMq简介1.1消息队列中间件简介消息队列中间件是分布式系统中重要的组件&#xff0c;主要解决应用耦合&#xff0c;异步消息&#xff0c;流量削锋等问题实现高性能&#xff0c;高可用&#xff0c;可伸缩和最终一致性[架构] 使用较多的消息队列有 ActiveMQ(安全)&#x…

Java并发编程之顺序一致性

如果程序是正确同步的&#xff0c;程序的执行将具有顺序一致性&#xff08;Sequentially Consistent&#xff09;——即程序的执行结果与该程序在顺序一致性内存模型中的执行结果相同。 同步&#xff0c;即排队。 同一时刻&#xff0c;只能有一个线程和内存交互&#xff01;&a…

基于C#的窗体阴影效果方案 - 开源研究系列文章

最近在研究C#的Winform窗体的效果&#xff0c;上次介绍了窗体动画效果的博文( 基于C#的无边框窗体动画效果的完美解决方案 - 开源研究系列文章 )&#xff0c;这次将窗体阴影效果的方案进行一个介绍。 找了一下度娘&#xff0c;具体窗体阴影效果就两种方法&#xff1a;直接绘制和…

机器学习深度学习——池化层

&#x1f468;‍&#x1f393;作者简介&#xff1a;一位即将上大四&#xff0c;正专攻机器学习的保研er &#x1f30c;上期文章&#xff1a;机器学习&&深度学习——卷积的多输入多输出通道 &#x1f4da;订阅专栏&#xff1a;机器学习&&深度学习 希望文章对你们…

powershell 自动补全

我在zsh中使用智能提示 zsh-autosuggestions已经习惯了&#xff0c;而在windows中的终端默认没有智能提示&#xff0c;很起来不舒服。那么有没有什么替代呢&#xff1f; 安装powershell-7.3 我的windows 10默认安装的是powershell-5.1.19&#xff0c;所以我们先来升级一下。 …

基于facenet+faiss开发构建人脸识别系统

facenet是一款非常经典的神经网络模型&#xff0c;它可以直接学习从人脸图像到欧几里德空间的映射(直接将人脸映射到欧几里得空间)。在欧几里德空间中&#xff0c;距离直接对应于人脸相似性的度量。一旦这个空间产生&#xff0c;使用标准技术&#xff0c;将FaceNet嵌入作为特征…

p元素使用伪元素::before实现小圆点,换行缩进

p元素使用伪元素实现小圆点&#xff0c;默认换行第二行会与小圆点平行&#xff0c;图2是想要的样式 小圆点代码 p::before{content: "";display: inline-block;width: 6px;height: 6px;border-radius: 50%;background-color: #D8D8D8;margin: 0 5px 2px 0; }换行缩…

如何使用动态代理ip来突破限制

在如今数字化时代&#xff0c;互联网已经成为人们获取信息、交流互动、进行商业活动的重要平台。然而&#xff0c;许多网站为了保护安全和用户体验&#xff0c;采取了各种访问限制和封禁措施&#xff0c;使得用户在大规模网站访问和数据采集中面临种种困惑。作为动态IP代理产品…

数据可视化:Matplotlib详解及实战

1 Matplotlib介绍 Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表。 Matplotlib提供了一个套面向绘图对象编程的API接口&#xff0c;能够很轻松地实现各种图像的绘制&#xff0c;并且它可以配合Python GUI工具&#xff08;…

汽车维修保养记录查询API:实现车辆健康状况一手掌握

在当今的数字化世界中&#xff0c;汽车维修保养记录的查询和管理变得前所未有地简单和便捷。通过API&#xff0c;我们可以轻松地获取车辆的维修和保养记录&#xff0c;从而实现对手中车辆健康状况的实时掌握。 API&#xff08;应用程序接口&#xff09;是进行数据交换和通信的标…

pytorch实战-图像分类(二)(模型训练及验证)(基于迁移学习(理解+代码))

目录 1.迁移学习概念 2.数据预处理 3.训练模型&#xff08;基于迁移学习&#xff09; 3.1选择网络&#xff0c;这里用resnet 3.2如果用GPU训练&#xff0c;需要加入以下代码 3.3卷积层冻结模块 3.4加载resnet152模 3.5解释initialize_model函数 3.6迁移学习网络搭建 3.…

基于 Flink Paimon 实现 Streaming Warehouse 数据一致性管理

摘要&#xff1a;本文整理自字节跳动基础架构工程师李明&#xff0c;在 Apache Paimon Meetup 的分享。本篇内容主要分为四个部分&#xff1a; 背景 方案设计 当前进展 未来规划 点击查看原文视频 & 演讲PPT 一、背景 ​ 早期的数仓生产体系主要以离线数仓为主&#xf…

【Leetcode】二叉树的最近公共祖先,二叉搜索树转换成排好序的双向链表,前序遍历与中序遍历构造二叉树

一.二叉树的最近公共祖先 链接 二叉树的最近公共祖先 题目再现 『Ⅰ』思路一&#xff1a;转换成相交链表问题 观察上图&#xff0c;节点1和节点4的最近公共祖先是3&#xff0c;这是不是很像相交链表的问题&#xff0c;关于相交链表&#xff0c;曾经我在另一篇文章里写到过&a…