AI芯片的基础

news2024/11/18 18:45:56

前置基础

AI芯片其实就是AI算法的专用处理器,像CPU的话是一个通用处理器,CPU按照逻辑可以分为三个模块:控制模块,运算模块,存储模块;其中控制单元有指令寄存器和指令译码器,根据用户预先编译好的程序,把指令集存储起来,再从指令寄存器取出来,用译码器解码后,按照确定的时序,向对应的不见发出控制信号;
在这里插入图片描述

什么是AI芯片

简言之,就是为了AI算法的运行而专门设计的芯片;
在这里插入图片描述

CPU&GPU&NPU&TPU之间的区别

从下图可以看出CPU有很多控制单元,但是计算单元的个数却比较少,CPU的核数指的就是计算单元的个数。每个CPU核心都是独立的处理单元,可以执行指令集的一部分并进行计算操作。每个核心通常包含一组算术逻辑单元(ALU)、浮点单元(FPU)和寄存器等。

GPU的话计算单元个数非常多,却没有什么控制单元;

NPU的话,是专门为了神经网络而设计的,在矩阵乘法、激活函数、向量运算上做了优化;
传统的中央处理器(CPU)和图形处理器(GPU)在执行神经网络计算时可能会遇到瓶颈,因为神经网络的计算需求非常高。NPU通过专门的硬件架构和指令集,能够高效地执行神经网络的计算操作,包括矩阵乘法、向量运算和激活函数等。

以下是GPU和NPU之间的区别:
NPU(神经处理单元)和GPU(图形处理单元)都是用于加速计算的硬件加速器,但它们在设计和应用方面存在一些区别:

设计目标:NPU的设计目标是专门用于加速神经网络计算,而GPU则主要用于图形渲染和通用计算。NPU在硬件架构和指令集上进行了优化,以高效执行神经网络的计算操作,如矩阵乘法和激活函数。GPU则更加通用,适用于各种计算任务。

并行性:GPU在设计上注重大规模并行计算,拥有大量的计算核心(CUDA核心)和高带宽的内存,适用于大规模数据并行计算,包括图形处理和通用计算。NPU也具有高度的并行性,但其设计更专注于神经网络的特定操作和数据流。

功耗效率:NPU通常在功耗效率方面进行了优化,以在提供高性能的同时保持较低的功耗水平。它们在设计上注重能源效率,适用于移动设备和边缘计算等功耗敏感的场景。相比之下,GPU在功耗方面通常较高,更适合在电源供应充足的设备中使用。

程序开发:GPU通常使用通用的编程模型和API(如CUDA、OpenCL),可以进行通用计算任务的编程。而NPU通常使用特定的软件框架和库,如TensorFlow Lite、PyTorch等,以便利用其特定的神经网络加速能力。

总的来说,NPU更专注于加速神经网络计算,具有高性能和低功耗的特点,适用于移动设备和边缘计算等场景。而GPU更通用,适用于广泛的并行计算任务,包括图形渲染和通用计算。根据具体的应用需求,选择适合的硬件加速器可以提供最佳的性能和功耗平衡。
在这里插入图片描述

AI芯片的部署方式

从下图可以看出,根据应用需求会有不同的部署方式,其中也包括了云、边、端的协同部署,云端负责在线训练,端侧负责推理,边端负责执行;
在这里插入图片描述

AI芯片的技术路线

包括了GPU,FPGA,ASIC
在这里插入图片描述

目前做AI芯片的品牌和厂商

在这里插入图片描述

AI芯片的落地场景

在这里插入图片描述

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

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

相关文章

关于Apache Dubbo反序列化漏洞(CVE-2023-23638)的预警提示与对应的Zookeeper版本

公司在升级dubbo过程中因zookeeper版本不匹配,导致服务注册和调用出现异常 一、漏洞详情 Apache Dubbo是一款高性能、轻量级的开源Java服务框架。 Apache官方发布安全公告,修复了Apache Dubbo中的一个反序列化漏洞(CVE-2023-23638&#xff…

系统架构设计师 5:软件工程

一、软件工程 1 软件过程模型 软件要经历从需求分析、软件设计、软件开发、运行维护,直至被淘汰这样的全过程,这个全过程称为软件的生命周期。 为了使软件生命周期中的各项任务能够有序地按照规程进行,需要一定的工作模型对各项任务给予规…

不会设计也能轻松制作商品宣传海报图片,只要跟着这个教程走

促销活动是商家吸引顾客的重要方式之一,而宣传海报则是促销活动中的主要宣传工具之一。好的宣传海报可以让顾客对活动产生兴趣,提高产品的曝光率。然而,对于小型商家来说,往往没有专业的设计人员,如何制作出符合自己需…

项目开发中的安全问题怎么处理?

目录 1.客户的数据不可信 2. 客户端提交的参数需要校验 3.请求头里的内容出现错误 1.客户的数据不可信 PostMapping("/order") public void wrong(RequestBody Order order) {this.createOrder(order); } 对应的实体类如下: Data public class Order …

[框架]MyBatis框架

关于MyBatis框架 MyBatis框架的主要作用:实现并简化数据库编程。 MyBatis框架的依赖项 MyBatis框架的依赖项是:mybatis,但,通常还应该再添加:mybatis-spring、spring-jdbc、mysql或其它数据库的依赖项、数据库连接池…

FreeRTOS_列表和列表项

目录 1. 什么是列表和列表项? 1.1 列表 1.2 列表项 1.3 迷你列表项 2. 列表和列表项初始化 2.1 列表初始化 2.2 列表项初始化 3. 列表项插入 3.1 列表项插入函数分析 3.2 列表项插入过程图示 3.2.1 插入值为 40 的列表项 3.2.2 插入值为 60 的列表项 3…

c++ while(i--) 的执行顺序

问:while (i--) {语句B} 的执行顺序是什么? 首先执行i--,再执行 while ,再执行语言B. 一个案例: 案例中count 的初始值为-3. 第一个打出的为-2, 证明的之前的判断流程。 附录: while(条件){//语句A} 的执行逻辑&…

聊聊PCIe协议的BDF

[摘要]:本文主要介绍 PCIe 协议中 Bus、Device 和 Function 的基本定义。 PCIe 总线的拓扑结构就像一颗葡萄树:树根相当于 PCIe Root Complex,树干和树枝相当于 PCIe Bus,一整串葡萄相当于 PCIe Device,一颗葡萄相当于…

c++构造基类

c构造基类 c构造基类采用初始化列表 基类的成员变量由基类的构造函数初始化 派生类的成员变量由派生类的构造函数初始化 基类: 派生类: 调用

微信扫码对接

微信扫码对接,如果刚开始没有资源进行对接。 可以选择先申请微信公众测试平台进行测试,地址如下 微信公众平台 申请步骤等等简单的就不说了,本文主要说一下需要注意的坑。 1.首先需要一个外网地址,做本地映射,否则…

掌握这些容易被忽略的Vue组件细节,提升开发效率,事半功倍!

组件允许我们将 UI 划分为独立的、可重用的部分&#xff0c;并且可以对每个部分进行单独的思考。 组件在日常开发的重要性不言而喻&#xff0c;掌握下述细则&#xff0c;可以让你在开发中事半功倍&#xff01; Props defineProps() 宏中的参数不可以访问 <script setup&…

mysql的高可用架构之mmm

目录 一、mmm的相关知识 1&#xff09;mmm架构的概念 2&#xff09;MMM 高可用架构的重要组件 3&#xff09;mmm故障切换流程 二、mmm高可用双主双从架构部署 实验设计 实验需求 实验组件部署 具体实验步骤 步骤一&#xff1a; 搭建 MySQL 多主多从模式 &#…

Uniapp中简单弹出层的使用

图示 思路 当派工单这个输入框获取到焦点后&#xff0c;弹出弹出层选择数据。 1、定义这个输入框 <view class"cu-form-group"><view class"title"><text class"text-red">*</text>派工单号: </view><input…

Mysql查询语句优化方法

查询优化 小表驱动大表 优化原则&#xff1a;对于MySQL数据库而言&#xff0c;永远都是小表驱动大表。 /** * 举个例子&#xff1a;可以使用嵌套的for循环来理解小表驱动大表。 * 以下两个循环结果都是一样的&#xff0c;但是对于MySQL来说不一样&#xff0c; * 第一种可以理解…

第1章-Java语言概述

Java基础知识图解 1. Java语言概述 1.1 Java简史 是SUN(Stanford University Network&#xff0c;斯坦福大学网络公司 ) 1995年推出的一门高级编程语言。是一种面向Internet的编程语言。 Java一开始富有吸引力是因为Java程序可以在Web浏览器中运行。 这些Java程序被称为Java小…

DepthAI API详解

目录 DepthAI的整体架构Device 对象通过标识连接到指定设备定义输入/输出队列Device对象的常用方法addLogCallback()方法close()方法getInputQueue()方法getOutputQueue()方法 PipelinePipeline常用的方法create()方法createColorCamera()方法createMonoCamera()方法createNeur…

泛微以低代码助力央企合规、案件管理数字化

近年来&#xff0c;国家出台一系列文件&#xff0c;不断强化央企国企合同、法务、合规、风控一体化管理&#xff0c;深化法治企业建设。 2022年&#xff0c;国资委印发《中央企业合规管理办法》&#xff0c;要求中央企业加强合规管理&#xff0c;切实防控风险&#xff0c;并指…

新手小白学JAVA_IDEA修改主题 设置背景图片

很多小白在刚刚使用IDEA的时候还不是很熟练 本文主要给大家提供一些使用的小技巧&#xff0c;希望能帮助到你 1.修改IDEA默认主题 IDEA的默认主题是黑色的&#xff0c;其实也可以选择其他的主题 我们一起来试一试吧~ 2.修改IDEA背景图片 IDEA的背景图片也是可以自定义的 我们…

arcgis波段提取--多波段合成

1、打开软件&#xff0c;导入彩色栅格影像&#xff0c;如下&#xff1a; 上图有RGB三个波段&#xff0c;在左侧图层下可以看到波段情况。 2、在菜单栏中选择"窗口"--"影像分析"&#xff0c;如下&#xff1a; 点击影像分析功能&#xff0c;打开如下界面&am…

移除flyway,手动进行数据库的迁移

国产数据库如达梦、金仓数据库&#xff0c;开源数据迁移工具貌似支持的很少&#xff0c;手写工具类进行数据库脚本的迁移&#xff0c;主要有2个类如下&#xff1a; /*** 模拟flyway进行sql迁移*/ Component Slf4j public class SqlInitialize implements InitializingBean, Ord…