update for format
@ -1,4 +1,4 @@
|
||||
# 编辑和作者(DONE)
|
||||
# 编辑和作者
|
||||
|
||||
## 章节编辑
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# 本地部署(DONE)
|
||||
# 本地部署
|
||||
|
||||
## Sphinx 环境安装
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 附录(DONE)
|
||||
# 附录
|
||||
|
||||
本节附录主要是介绍本开源课程的书写规范、使用到的书写工具、还有关于本课程相关配套内容的介绍。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 书写规范(DONE)
|
||||
# 书写规范
|
||||
|
||||
书写规范(Writing Conventions)给出了包含文档内的书写约定。请作者与贡献者参考以下约定检查格式,内容一致性与正确性。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 术语表(DONE)
|
||||
# 术语表
|
||||
|
||||
术语表(Glossary),本词汇表包含与 AI 系统相关的词汇和定义。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 参考链接(DONE)
|
||||
# 参考链接
|
||||
|
||||
参考链接(Reference)介绍了 AI 系统相关的链接。
|
||||
|
||||
@ -114,7 +114,7 @@
|
||||
6. [简单了解 LLVM IR 基本语法-CSDN 博客](https://blog.csdn.net/qq_42570601/article/details/107157224)
|
||||
1. https://learning.acm.org/techtalks/computerarchitecture
|
||||
2. https://segmentfault.com/a/1190000041739045
|
||||
[^1]: [Roofline Model 与深度学习模型的性能分析 - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/34204282)
|
||||
[^1]: [Roofline Model 与神经网络模型的性能分析 - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/34204282)
|
||||
[^2]: [谈谈对 OpenAI Triton 的一些理解 - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/613244988)
|
||||
|
||||
[^1]:刘松,卫国,博,.面向局部性和并行优化的循环分块技术[J].计算机研究与发展, 2015, 52(005):1160-1176.DOI:10.7544/issn1000-1239.2015.20131387.
|
||||
@ -680,13 +680,13 @@ learning, pages 448–456, 2015.](https://arxiv.org/abs/1502.03167v3)
|
||||
1. [深入浅出:AI 框架与计算图的关系](https://developer.baidu.com/article/details/3129186)
|
||||
2. [4.1. 计算图的设计背景和作用](https://openmlsys.github.io/chapter_computational_graph/background_and_functionality.html#id1)
|
||||
3. [【AI】推理系统和推理引擎的整体架构](https://blog.csdn.net/weixin_45651194/article/details/132872588)
|
||||
4. [谈谈AI 框架的数据排布](https://zhuanlan.zhihu.com/p/149464086)
|
||||
4. [谈谈 AI 框架的数据排布](https://zhuanlan.zhihu.com/p/149464086)
|
||||
5. [从零构建 AI 推理引擎系列](https://github.com/lucasjinreal/AI-Infer-Engine-From-Zero)
|
||||
6. [一篇就够:高性能推理引擎理论与实践 (TensorRT)](https://developer.aliyun.com/article/995926)
|
||||
7. [序列化之 FlatBuffers](https://harmonyhu.com/2018/08/11/flatbuffers/)
|
||||
|
||||
1. [【AI】推理引擎的模型转换模块](https://blog.csdn.net/weixin_45651194/article/details/132921090)
|
||||
2. [深度学习模型转换](https://blog.csdn.net/jasonaidm/article/details/90522615)
|
||||
2. [神经网络模型转换](https://blog.csdn.net/jasonaidm/article/details/90522615)
|
||||
3. [deep-learning-model-convertor](https://github.com/ysh329/deep-learning-model-convertor)
|
||||
4. [hb_mapper_tools_guide](https://developer.horizon.ai/api/v1/fileData/doc/ddk_doc/navigation/ai_toolchain/docs_cn/hb_mapper_tools_guide/01_model_conversion_details.html)
|
||||
5. [模型转换:由 Pytorch 到 TFlite](https://zhuanlan.zhihu.com/p/363317178)
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 书写工具(DONE)
|
||||
# 书写工具
|
||||
|
||||
## 书写工具
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystemtem)版权许可-->
|
||||
|
||||
# 本节内容(DONE)
|
||||
# 本节内容
|
||||
|
||||
### 本节介绍
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 的历史与现状(DONE)
|
||||
# AI 的历史与现状
|
||||
|
||||
本节将介绍 AI 的由来、现状和趋势,让大家能够了解 AI 应用的由来与趋势,为后面理解 AI 系统的设计形成初步的基础。在后面章节介绍的人工智能系统(AI System)奠定基础,值得注意的是,这些系统设计原则大部分也适合于机器学习系统(ML System)。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 发展驱动力(DONE)
|
||||
# AI 发展驱动力
|
||||
|
||||
AI 起源于上世纪五十年代,经历了几次繁荣与低谷,直到 2016 年谷歌旗下的 DeepMind 发布 AlphaGo 程序赢得与世界围棋冠军的比赛,大众对 AI 的关注与热情被重新点燃。其实 AI 技术早在这个标志事件之前已经在工业界很多互联网公司中得到了广泛应用与部署。例如,搜索引擎服务中的排序、图片的检索、广告推荐等功能,背后都有 AI 模型的支撑。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 系统全栈架构(DONE)
|
||||
# AI 系统全栈架构
|
||||
|
||||
通过对 AI 的发展、以及模型算法、硬件与数据的趋势介绍,我们已经了解了 AI 系统的重要性。本节将介 AI 系统的设计目标、组成和生态,让读者形成 AI 系统的知识体系,为后续展开每个章节的内容做好铺垫。
|
||||
|
||||
@ -156,7 +156,7 @@ AI 框架不仅仅是指如 PyTorch 等训练框架,还包括推理框架。
|
||||
|
||||
- **广泛用途的高效新型通用 AI 算法**:提供更多样的模型支持,推进和支持模型效果的提升。支持新的算子(例如,控制流等),更加灵活的模型结构(例如,图模型等),模型的融合(例如,多专家系统等)支持。
|
||||
|
||||
- **多种AI 框架的支持与进化**:由于多种框架与工具的存在,如何为用户提供更多样的框架的统一支持与优化对提升用户体验,复用已有代码有很强的实用价值。
|
||||
- **多种 AI 框架的支持与进化**:由于多种框架与工具的存在,如何为用户提供更多样的框架的统一支持与优化对提升用户体验,复用已有代码有很强的实用价值。
|
||||
|
||||
- **神经网络编译架构及优化**:在编译期,通过静态分析与优化的方法,提供更优化的编译支持,提升模型的性能,正确性等。类似传统编译器,网络模型的计算图可以通过融合等手段优化,算子内可以应用大量循环优化。同时面向网络模型本身的特点,也逐渐有工作利用一些等价和非等价计算图转换进行优化。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 系统与程序代码关系(DONE)
|
||||
# AI 系统与程序代码关系
|
||||
|
||||
模型算法的开发者一般会通过使用 AI 框架提供 Python 等高级语言的 API,来编写对应的人工智能程序,而人工智能程序的底层系统问题被当前层抽象隐藏。到底在每个代码部分具体底层发生了什么?有哪些有意思的系统设计问题?
|
||||
|
||||
@ -241,7 +241,7 @@ for n in range(batch_size):
|
||||
[参考实例 cudnn-training](https://github.com/tbennun/cudnn-training/blob/master/lenet.cu),需要~1000 行实现模型结构和内存管理等逻辑。
|
||||
|
||||
```C++
|
||||
// 内存分配,如果用AI 框架此步骤会省略
|
||||
// 内存分配,如果用 AI 框架此步骤会省略
|
||||
...
|
||||
cudaMalloc(&d_data, sizeof(float) * context.m_batchSize * channels * height * width);
|
||||
cudaMalloc(&d_labels, sizeof(float) * context.m_batchSize * 1 * 1 * 1);
|
||||
@ -256,7 +256,7 @@ cudnnConvolutionForward(cudnnHandle, &alpha, dataTensor,
|
||||
conv1Tensor, conv1);
|
||||
...
|
||||
|
||||
// 反向传播第一个卷积算子(仍需要写其他算子),如果用AI 框架此步骤会省略
|
||||
// 反向传播第一个卷积算子(仍需要写其他算子),如果用 AI 框架此步骤会省略
|
||||
cudnnConvolutionBackwardBias(cudnnHandle, &alpha, conv1Tensor,
|
||||
dpool1, &beta, conv1BiasTensor, gconv1bias);
|
||||
|
||||
@ -265,13 +265,13 @@ cudnnConvolutionBackwardFilter(cudnnHandle, &alpha, dataTensor,
|
||||
conv1bwfalgo, workspace, m_workspaceSize,
|
||||
&beta, conv1filterDesc, gconv1));
|
||||
|
||||
// 第一个卷积权重梯度更新(仍需要写其他算子),如果用AI 框架此步骤会省略
|
||||
// 第一个卷积权重梯度更新(仍需要写其他算子),如果用 AI 框架此步骤会省略
|
||||
cublasSaxpy(cublasHandle, static_cast<int>(conv1.pconv.size()),
|
||||
&alpha, gconv1, 1, pconv1, 1);
|
||||
cublasSaxpy(cublasHandle, static_cast<int>(conv1.pbias.size()),
|
||||
&alpha, gconv1bias, 1, pconv1bias, 1);
|
||||
|
||||
// 内存释放,如果用AI 框架此步骤会省略
|
||||
// 内存释放,如果用 AI 框架此步骤会省略
|
||||
...
|
||||
cudaFree(d_data);
|
||||
cudaFree(d_labels);
|
||||
|
@ -34,7 +34,7 @@ AI 大模型发展历经三个阶段,分别是萌芽期、探索期和爆发
|
||||
|
||||
以 CNN 为代表的传统神经网络模型阶段。1956 年,从计算机专家约翰·麦卡锡提出“人工智能”概念开始,AI 发展由最开始基于小规模专家知识逐步发展为基于机器学习。1980 年,卷积神经网络的雏形 CNN 诞生。1998 年,现代卷积神经网络 CNN 的基本结构 LeNet-5 诞生,机器学习方法由早期基于浅层机器学习的模型,变为了基于深度学习的模型。
|
||||
|
||||
在萌芽期阶段,小模型的研究为自然语言生成、计算机视觉等领域的深入研究奠定了基础,对后续AI 框架的迭代及大模型发展具有开创性的意义。此时在自然语言处理 NLP 的模型研究都是在研究基于给定的数据集,在特定的下游任务,如何设计网络模型结构、调整超参、提升训练技巧可以达到更高的任务分数,因此出现了 Word2vec、RNN、LSTM、GRU 等各种 NLP 模型结构。
|
||||
在萌芽期阶段,小模型的研究为自然语言生成、计算机视觉等领域的深入研究奠定了基础,对后续 AI 框架的迭代及大模型发展具有开创性的意义。此时在自然语言处理 NLP 的模型研究都是在研究基于给定的数据集,在特定的下游任务,如何设计网络模型结构、调整超参、提升训练技巧可以达到更高的任务分数,因此出现了 Word2vec、RNN、LSTM、GRU 等各种 NLP 模型结构。
|
||||
|
||||
- **探索期(2006-2019)**
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © ZOMI 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 课程概述(DONE)
|
||||
# 课程概述
|
||||
|
||||
## 课程简介
|
||||
|
||||
|
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 201 KiB |
Before Width: | Height: | Size: 2.0 MiB After Width: | Height: | Size: 1.6 MiB |
Before Width: | Height: | Size: 2.7 MiB After Width: | Height: | Size: 2.3 MiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 864 KiB |
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 2.0 MiB After Width: | Height: | Size: 1.7 MiB |
Before Width: | Height: | Size: 341 KiB |
BIN
01Introduction/images/01Present06.png
Normal file
After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 306 KiB After Width: | Height: | Size: 442 KiB |
Before Width: | Height: | Size: 1.9 MiB After Width: | Height: | Size: 1.9 MiB |
Before Width: | Height: | Size: 817 KiB After Width: | Height: | Size: 843 KiB |
Before Width: | Height: | Size: 2.4 MiB After Width: | Height: | Size: 2.3 MiB |
Before Width: | Height: | Size: 2.1 MiB After Width: | Height: | Size: 1.6 MiB |
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.6 MiB |
Before Width: | Height: | Size: 503 KiB After Width: | Height: | Size: 458 KiB |
Before Width: | Height: | Size: 393 KiB After Width: | Height: | Size: 417 KiB |
Before Width: | Height: | Size: 240 KiB After Width: | Height: | Size: 269 KiB |
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 3.4 MiB After Width: | Height: | Size: 3.0 MiB |
Before Width: | Height: | Size: 3.7 MiB After Width: | Height: | Size: 3.3 MiB |
Before Width: | Height: | Size: 139 KiB After Width: | Height: | Size: 151 KiB |
Before Width: | Height: | Size: 306 KiB After Width: | Height: | Size: 416 KiB |
Before Width: | Height: | Size: 361 KiB After Width: | Height: | Size: 295 KiB |
Before Width: | Height: | Size: 505 KiB After Width: | Height: | Size: 457 KiB |
Before Width: | Height: | Size: 442 KiB After Width: | Height: | Size: 467 KiB |
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 147 KiB |
Before Width: | Height: | Size: 489 KiB After Width: | Height: | Size: 457 KiB |
Before Width: | Height: | Size: 169 KiB After Width: | Height: | Size: 174 KiB |
Before Width: | Height: | Size: 489 KiB After Width: | Height: | Size: 449 KiB |
Before Width: | Height: | Size: 166 KiB After Width: | Height: | Size: 170 KiB |
Before Width: | Height: | Size: 119 KiB After Width: | Height: | Size: 123 KiB |
Before Width: | Height: | Size: 809 KiB After Width: | Height: | Size: 681 KiB |
Before Width: | Height: | Size: 394 KiB After Width: | Height: | Size: 360 KiB |
Before Width: | Height: | Size: 554 KiB After Width: | Height: | Size: 478 KiB |
Before Width: | Height: | Size: 122 KiB After Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 506 KiB After Width: | Height: | Size: 550 KiB |
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.3 MiB |
Before Width: | Height: | Size: 303 KiB After Width: | Height: | Size: 345 KiB |
Before Width: | Height: | Size: 492 KiB After Width: | Height: | Size: 495 KiB |
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 课程内容(DONE)
|
||||
# 课程内容
|
||||
|
||||
在整个 AI 系统的构建中,AI 算法、AI 框架、AI 编译器、AI 推理引擎等都是软件层面的概念,而 AI 芯片则是物理存在的实体,AI 芯片是所有内容的重要基础。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 计算模式(上)(DONE)
|
||||
# AI 计算模式(上)
|
||||
|
||||
了解 AI 计算模式对 AI 芯片设计和优化方向至关重要。本节将会通过模型结构、压缩、轻量化和分布式几个内容,来深入了解 AI 算法的发展现状,引发关于 AI 计算模式的思考,重点围绕经典网络模型和模型量化压缩两方面进行展开。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 计算模式(下)(DONE)
|
||||
# AI 计算模式(下)
|
||||
|
||||
了解 AI 计算模式对 AI 芯片设计和优化方向至关重要。本节将会接着从轻量化网络模型和大模型分布式并行两个主题来深入了解 AI 算法的发展现状,引发关于 AI 计算模式的思考。
|
||||
|
||||
@ -105,7 +105,7 @@ DDP 是一种分布式训练方法,它允许模型在多个计算节点上进
|
||||
|
||||
在 DDP 中,每个节点上的模型副本执行前向和后向传播计算,并计算梯度。然后,这些梯度在不同的节点之间进行通信和平均,以便所有节点都可以使用全局梯度来更新其本地模型参数。这种方法的优点是可以扩展到大量的节点,并且可以显著减少每个节点的内存需求,因为每个节点只需要存储整个模型的一个副本。
|
||||
|
||||
DDP 通常与AI 框架(如 PyTorch)一起使用,这些框架提供了对 DDP 的内置支持。例如,在 PyTorch 中,`torch.nn.parallel.DistributedDataParallel` 模块提供了 DDP 实现,它可以自动处理模型和梯度的同步,以及分布式训练的通信。
|
||||
DDP 通常与 AI 框架(如 PyTorch)一起使用,这些框架提供了对 DDP 的内置支持。例如,在 PyTorch 中,`torch.nn.parallel.DistributedDataParallel` 模块提供了 DDP 实现,它可以自动处理模型和梯度的同步,以及分布式训练的通信。
|
||||
|
||||
3. Fully Sharded Data Parallel, FSDP 全分片数据并行
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 关键设计指标(DONE)
|
||||
# 关键设计指标
|
||||
|
||||
前面我们已经对 AI 的计算模式有了初步的认识,那么这些计算模式具体是如何和 AI 芯片设计结合起来的呢?接下来我们将从 AI 芯片关键设计指标的角度来进一步拓展对 AI 计算体系的思考。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 核心计算之矩阵乘(DONE)
|
||||
# 核心计算之矩阵乘
|
||||
|
||||
AI 模型中往往包含大量的矩阵乘运算,该算子的计算过程表现为较高的内存搬移和计算密度需求,所以矩阵乘的效率是 AI 芯片设计时性能评估的主要参考依据。本节我们一起来看一下矩阵乘运算在 AI 芯片的具体过程,了解它的执行性能是如何被优化实现的。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 计算之比特位宽(DONE)
|
||||
# 计算之比特位宽
|
||||
|
||||
在前面的深度学习计算模式里面我们提到了模型的量化操作,通过建立一种有效的数据映射关系,使得模型以较小的精度损失获得更好的模型执行效率的收益。模型量化的具体操作就是将高比特的数据转换为低比特位宽表示。本节我们将对计算的比特位宽概念做一个更具体的了解。
|
||||
|
||||
@ -131,7 +131,7 @@ AI 模型在业界长期依赖于 FP16 和 FP32 数据类型的训练,后来 B
|
||||
|
||||
## 小结与思考
|
||||
|
||||
- FP8 是一种新的 8 位浮点数精度格式,包含 E4M3 和 E5M2 两种编码,旨在减少深度学习模型训练和推理的计算需求,同时保持模型精度。
|
||||
- FP8 是一种新的 8 位浮点数精度格式,包含 E4M3 和 E5M2 两种编码,旨在减少神经网络模型训练和推理的计算需求,同时保持模型精度。
|
||||
|
||||
- FP8 通过减少数据位宽,有效降低内存带宽压力、提升算力利用率,并简化推理部署过程,相比 FP16 和 FP32 混合精度训练,理论上可实现 2 倍速度提升和 50%-75%的内存及通信成本节约。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 计算体系概述(DONE)
|
||||
# AI 计算体系概述
|
||||
|
||||
《AI 计算体系》深入 AI 的计算模式,从而理解 AI 的“计算”需要什么。通过 AI 芯片关键指标,了解 AI 芯片要更好的支持“计算”,需要关注那些重点工作。最后通过深度学习的计算核心“矩阵乘”来看对“计算”的实际需求和情况,为了提升计算性能、降低功耗和满足训练推理不同场景应用,对“计算”引入 TF32/BF16,甚至是 FP8 等复杂多样比特位宽的数据精度格式。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# CPU 基础 (DONE)
|
||||
# CPU 基础
|
||||
|
||||
CPU 是 Central Processing Unit(中央处理器)的简称,它负责执行指令和计算,控制着计算机的所有组件。CPU 从无到有,从弱小到强大,经历了漫长发展过程,其间发生了无数的故事。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# CPU 指令集架构 (DONE)
|
||||
# CPU 指令集架构
|
||||
|
||||
我们知道,计算机指令是指挥机器工作的指示和命令,程序就是一系列指令按照顺序排列的集合,执行程序的过程就是计算机的工作过程。从微观上看,我们输入指令的时候,计算机会将指令转换成二进制码存储在存储单元里面,然后在即将执行的时候拿出来。那么计算机是怎么知道我们输入的是什么指令,指令要怎么执行呢?
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# CPU 计算本质(DONE)
|
||||
# CPU 计算本质
|
||||
|
||||
本节将深入探讨CPU的计算性能,从算力的敏感度和不同技术趋势中分析影响CPU性能的关键因素。我们将通过数据和实例,详细解释CPU算力的计算方法、算力与数据加载之间的平衡点,以及如何通过算力敏感度分析来识别和优化计算系统中的性能瓶颈。此外,我们还将观察服务器、GPU和超级计算机等不同计算平台的性能发展趋势,以及它们如何影响着我们对CPU性能的理解和期望。
|
||||
本节将深入探讨 CPU 的计算性能,从算力的敏感度和不同技术趋势中分析影响 CPU 性能的关键因素。我们将通过数据和实例,详细解释 CPU 算力的计算方法、算力与数据加载之间的平衡点,以及如何通过算力敏感度分析来识别和优化计算系统中的性能瓶颈。此外,我们还将观察服务器、GPU 和超级计算机等不同计算平台的性能发展趋势,以及它们如何影响着我们对 CPU 性能的理解和期望。
|
||||
|
||||
## 从数据看 CPU 计算
|
||||
|
||||
@ -177,9 +177,9 @@ $$
|
||||
|
||||
## 小结与思考
|
||||
|
||||
- 算力衡量CPU性能:通过核心数量、时钟频率和内存带宽等因素衡量CPU算力,算力敏感度分析帮助理解不同参数对性能的影响,优化系统设计。
|
||||
- 算力衡量 CPU 性能:通过核心数量、时钟频率和内存带宽等因素衡量 CPU 算力,算力敏感度分析帮助理解不同参数对性能的影响,优化系统设计。
|
||||
|
||||
- CPU性能和算力发展趋势:随着技术进步,CPU性能持续提升,算力增长推动了高性能计算、服务器、GPU集群和超级计算中心的发展,同时AI大模型训练时间随模型规模指数增长。
|
||||
- CPU 性能和算力发展趋势:随着技术进步,CPU 性能持续提升,算力增长推动了高性能计算、服务器、GPU 集群和超级计算中心的发展,同时 AI 大模型训练时间随模型规模指数增长。
|
||||
|
||||
## 本节视频
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# CPU 计算时延(DONE)
|
||||
# CPU 计算时延
|
||||
|
||||
CPU(中央处理器)是计算机的核心组件,其性能对计算机系统的整体性能有着重要影响。CPU 计算时延是指从指令发出到完成整个指令操作所需的时间。理解 CPU 的计算时延对于优化计算性能和设计高效的计算系统至关重要。在这一节我们将要探讨 CPU 的计算时延组成和影响时延产生的因素,并深入讨论 CPU 计算的时延产生。
|
||||
|
||||
@ -138,11 +138,11 @@ CPU 时延的产生可以归因于多种因素,包括硬件设计、内存访
|
||||
|
||||
## 小结与思考
|
||||
|
||||
- CPU计算时延是指令从发出到完成操作所需的时间,它由指令提取、解码、执行、存储器访问和写回等环节组成,对优化计算性能和设计高效计算系统至关重要。
|
||||
- CPU 计算时延是指令从发出到完成操作所需的时间,它由指令提取、解码、执行、存储器访问和写回等环节组成,对优化计算性能和设计高效计算系统至关重要。
|
||||
|
||||
- 内存速度、带宽和延迟直接影响CPU的访问时间,优化内存配置如增加缓存容量和提升内存带宽可以显著降低时延,提高系统性能。
|
||||
- 内存速度、带宽和延迟直接影响 CPU 的访问时间,优化内存配置如增加缓存容量和提升内存带宽可以显著降低时延,提高系统性能。
|
||||
|
||||
- 降低CPU计算时延的方法包括提高时钟频率、优化流水线设计、增加缓存容量、采用高效的并行算法和提升内存子系统性能,这些措施可以提升计算机系统的整体性能。
|
||||
- 降低 CPU 计算时延的方法包括提高时钟频率、优化流水线设计、增加缓存容量、采用高效的并行算法和提升内存子系统性能,这些措施可以提升计算机系统的整体性能。
|
||||
|
||||
## 本节视频
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# GPU 基础 (DONE)
|
||||
# GPU 基础
|
||||
|
||||
GPU 是 Graphics Processing Unit(图形处理器)的简称,它是计算机系统中负责处理图形和图像相关任务的核心组件。GPU 的发展历史可以追溯到对计算机图形处理需求的不断增长,以及对图像渲染速度和质量的不断追求。从最初的简单图形处理功能到如今的高性能计算和深度学习加速器,GPU 经历了一系列重要的技术突破和发展转折。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# NPU 基础(DONE)
|
||||
# NPU 基础
|
||||
|
||||
近年来,随着人工智能技术的飞速发展,AI 专用处理器如 NPU(Neural Processing Unit)和 TPU(Tensor Processing Unit)也应运而生。这些处理器旨在加速深度学习和机器学习任务,相比传统的 CPU 和 GPU,它们在处理 AI 任务时表现出更高的效率和性能。在接下来的内容中,我们将首先简单介绍引入什么是 AI 芯片,随后具体展开其的部署说明,技术发展路线和应用场景。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 超异构计算(DONE)
|
||||
# 超异构计算
|
||||
|
||||
在这一节中我们要从更远的视角来看看计算机架构发展的黄金 10 年,主要将围绕异构计算和超异构来展开。在开始具体内容前,我们非常推荐您观看以下两个视频:
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# AI 芯片基础(DONE)
|
||||
# AI 芯片基础
|
||||
|
||||
《AI 芯片基础》简单从 CPU 开始看通用逻辑架构(冯诺依曼架构),通过打开计算的本质(数据与时延)从而引出对于并行计算 GPU 作用和解决的业务场景,到目前最火的 AI 芯片 NPU。最后迈入超异构并行 CPU、GPU 和 NPU 并存的计算系统架构黄金十年。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# GPU 工作原理(DONE)
|
||||
# GPU 工作原理
|
||||
|
||||
前面的章节对 AI 计算体系和 AI 芯片基础进行讲解,在 AI 芯片基础中关于通用图形处理器 GPU 只是简单地讲解了主要概念,将从 GPU 硬件基础和英伟达 GPU 架构两个方面讲解 GPU 的工作原理。英伟达 GPU 有着很长的发展历史,整体架构从 Fermi 到 Blankwell 架构演变了非常多代,其中和 AI 特别相关的就有 Tensor Core 和 NVLink。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 为什么 GPU 适用于 AI(DONE)
|
||||
# 为什么 GPU 适用于 AI
|
||||
|
||||
为什么 GPU 适用于 AI 计算或者为什么 AI 训练需要使用 GPU,而不是使用 CPU 呢?本节内容主要探究 GPU AI 编程的本质,首先回顾卷积计算是如何实现的,然后探究 GPU 的线程分级,分析 AI 的计算模式和线程之间的关系,最后讨论矩阵乘计算如何使用 GPU 编程去提升算力利用率或者提升算法利用率。
|
||||
|
||||
@ -142,7 +142,7 @@ $$\text{Arithmetic Intensity} = \frac{2N^3 - N^2}{3N^2}≈O(N)$$
|
||||
>
|
||||
> 4. 节能优势:由于其高效的并行计算和混合精度计算能力,Tensor Core 在相同计算任务下通常能够比传统的计算单元更节能。
|
||||
>
|
||||
> Tensor Core 的出现极大地加速了深度学习和人工智能计算的速度和效率,使得训练和推理过程更加快速和高效。已经被广泛应用于AI 框架如 TensorFlow、PyTorch 等中,为用户提供了更好的计算体验。
|
||||
> Tensor Core 的出现极大地加速了深度学习和人工智能计算的速度和效率,使得训练和推理过程更加快速和高效。已经被广泛应用于 AI 框架如 TensorFlow、PyTorch 等中,为用户提供了更好的计算体验。
|
||||
|
||||
当 Tensor Core 在 L1 缓存、L2 缓存和 HBM 存储位置的不同将影响理想计算强度下矩阵的维度大小,每种存储和矩阵的计算强度分别对应一个交叉点,由此可以看出数据在什么类型的存储中尤为重要,相比较 FP32 和 FP64 对计算强度的影响更为重要。当数据搬运到 L1 缓存中时可以进行一些更小规模的矩阵运算,比如卷积运算,对于 NLP(Natural Language Processing)中使用的 transformer 结构,可以将数据搬运到 L2 缓存进行计算。因为数据运算和读取存在比例关系,如果数据都在搬运此时计算只能等待,导致二者不平衡,因此找到计算强度和矩阵大小的平衡点对于 AI 计算系统的优化尤为重要。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# GPU 架构与 CUDA 关系(DONE)
|
||||
# GPU 架构与 CUDA 关系
|
||||
|
||||
本节会讲解英伟达 GPU 硬件的基础概念,其次会讲解 CUDA(Compute Unified Device Architecture)并行计算平台和编程模型,详细讲解 CUDA 线程层次结构,最后将讲解 GPU 的算力是如何计算的,这将有助于计算大模型的算力峰值和算力利用率。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# GPU 架构回顾(DONE)
|
||||
# GPU 架构回顾
|
||||
|
||||
1999 年,英伟达发明了 GPU(graphics processing unit),本节将介绍英伟达 GPU 从 Fermi 到 Blankwell 共 9 代架构,时间跨度从 2010 年至 2024 年,具体包括费米(Feimi)、开普勒(Kepler)、麦克斯韦(Maxwell)、帕斯卡(Pashcal)、伏特(Volt)、图灵(Turing)、安培(Ampere)和赫柏(Hopper)和布莱克韦尔(Blackwell)架构。经过 15 年的发展,CUDA 已成为英伟达的技术“护城河”,Tensor Core5.0,NVLink5.0,NVswitch4.0,Transformer Engine2.0 等技术迭代更新,正如英伟达公司官方宣传语所言:“人工智能计算领域的领导者,推动了 AI、HPC、游戏、创意设计、自动驾驶汽车和机器人开发领域的进步。”
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 图形处理器 GPU(DONE)
|
||||
# 图形处理器 GPU
|
||||
|
||||
- 《图形处理器 GPU》深入地讲解 GPU 的工作原理,其最重要的指标是 GPU 计算吞吐、存储和传输带宽,并对英伟达的 GPU 的十年 5 代不断演进的硬件架构进行梳理。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# Tensor Core 基本原理(DONE)
|
||||
# Tensor Core 基本原理
|
||||
|
||||
在英伟达的通用 GPU 架构中,主要存在三种核心类型:CUDA Core、Tensor Core 以及 RT Core。其中,Tensor Core 扮演着极其关键的角色。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# Tensor Core 架构演进(DONE)
|
||||
# Tensor Core 架构演进
|
||||
|
||||
自 Volta 架构时代起,英伟达的 GPU 架构已经明显地转向深度学习领域的优化和创新。2017 年,Volta 架构横空出世,其中引入的张量核心(Tensor Core)设计可谓划时代之作,这一设计专门针对深度学习计算进行了优化,通过执行融合乘法加法操作,大幅提升了计算效率。与前一代 Pascal 架构相比,Volta 架构在深度学习训练和推理方面的性能提升了 3 倍,这一飞跃性进步为深度学习的发展提供了强大的硬件支持。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# Tensor Core 深度剖析(DONE)
|
||||
# Tensor Core 深度剖析
|
||||
|
||||
Tensor Core 是用于加速深度学习计算的关键技术,其主要功能是执行深度神经网络中的矩阵乘法和卷积运算。通过利用混合精度计算和张量核心操作,Tensor Core 能够在较短的时间内完成大量矩阵运算,从而显著加快神经网络模型的训练和推断过程。具体来说,Tensor Core 采用半精度(FP16)作为输入和输出,并利用全精度(FP32)进行存储中间结果计算,以确保计算精度的同时最大限度地提高计算效率。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 分布式通信与 NVLink(DONE)
|
||||
# 分布式通信与 NVLink
|
||||
|
||||
在进入大模型时代后,大模型的发展已成为人工智能的核心,但训练大模型实际上是一项比较复杂的工作,因为它需要大量的 GPU 资源和较长的训练时间。
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
|
||||
数据并行的优势和挑战:
|
||||
|
||||
数据并行可以允许训练过程水平扩展到更多的 GPU 上,从而加速训练。其优势是实现简单,而且可以灵活的调整工作单元的数量来适应可用的硬件资源,当前多种AI 框架提供了内置支持。不过数据并行随着并行的 GPU 数量增加,需要存储更多的参数副本,这会导致显著的内存开销。此外,梯度聚合步骤需要在 GPU 之间同步大量数据,这可能成为系统的瓶颈,特别是当工作单元的数量增多时。
|
||||
数据并行可以允许训练过程水平扩展到更多的 GPU 上,从而加速训练。其优势是实现简单,而且可以灵活的调整工作单元的数量来适应可用的硬件资源,当前多种 AI 框架提供了内置支持。不过数据并行随着并行的 GPU 数量增加,需要存储更多的参数副本,这会导致显著的内存开销。此外,梯度聚合步骤需要在 GPU 之间同步大量数据,这可能成为系统的瓶颈,特别是当工作单元的数量增多时。
|
||||
|
||||
为了解决数据并行中的通信瓶颈问题,研究者们提出了各种异步同步方案。在这些方案中,每个 GPU 工作线程可以独立于其他线程处理数据,无需等待其他工作线程完成其梯度计算和同步。这种方法可以显著降低因通信导致的停滞时间,从而提高系统的吞吐量。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# NVLink 原理剖析(DONE)
|
||||
# NVLink 原理剖析
|
||||
|
||||
随着人工智能技术的飞速发展,大模型的参数量已经从亿级跃升至万亿级,这一变化不仅标志着人工智能的显著提升,也对支持这些庞大模型训练的底层硬件和网络架构提出了前所未有的挑战。为了有效地训练这些复杂的模型,需要依赖于大规模的 GPU 服务器集群,它们通过高速网络相互连接,以便进行快速、高效的数据交换。但是,即便是最先进的 GPU 也可能因为网络瓶颈而无法充分发挥其计算潜力,导致整个算力集群的性能大打折扣。这一现象凸显了在构建大规模 GPU 集群时,仅仅增加 GPU 数量并不能线性增加集群的总体算力。相反,随着集群规模的扩大,网络通信的额外开销也会成倍增加,严重影响计算效率。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# NV Switch 深度解析(DONE)
|
||||
# NV Switch 深度解析
|
||||
|
||||
在当今的高性能计算领域,英伟达的 GPU 技术无疑是一颗璀璨的明星。随着人工智能和机器学习技术的飞速发展,对于计算能力的需求日益增长,GPU 之间的互联互通变得尤为重要。在这样的背景下,英伟达推出了 NVLink 协议,以及基于此技术的多 GPU 互联解决方案——NV Switch。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 英伟达 GPU 详解(DONE)
|
||||
# 英伟达 GPU 详解
|
||||
|
||||
- 《英伟达 GPU 原理》英伟达架构里面专门为 AI 而生的 Tensor Core 和 NVLink 对 AI 加速尤为重要,因此重点对 Tensor Core 和 NVLink 进行深入剖析其发展、演进和架构。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 谷歌 TPU 历史发展(DONE)
|
||||
# 谷歌 TPU 历史发展
|
||||
|
||||
在本节中,我们将深入探讨谷歌的 Tensor Processing Unit(TPU)的发展历程及其在深度学习和人工智能领域的应用。TPU 是谷歌为加速机器学习任务而设计的专用集成电路(ASIC),自首次推出以来,TPU 经历了多次迭代升级,包括 TPU v1、v2、v3 和 v4,以及 Edge TPU 和谷歌 Tensor 等产品。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 谷歌 TPU v1-脉动阵列(DONE)
|
||||
# 谷歌 TPU v1-脉动阵列
|
||||
|
||||
本节深入探讨了谷歌 TPU v1 的架构和设计原理。我们将解析 TPU v1 芯片的关键元素,包括 DDR3 DRAM、矩阵乘法单元(MXU)、累加器和控制指令单元。重点介绍脉动阵列(Systolic Array)的工作原理,它是 TPU 的核心,通过数据的流水线式处理实现高效的矩阵乘法计算。此外,我们还将对比 TPU v1 与 CPU、GPU 在服务器环境中的性能差异,以及 TPU v1 在当时技术背景下的创新之处。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 谷歌 TPUv2 训练芯片(DONE)
|
||||
# 谷歌 TPUv2 训练芯片
|
||||
|
||||
在 2017 年,谷歌更新了他们的 TPU 序列。谷歌将这一代 TPU 称之为 “用于训练神经网络的特定领域超级计算机”,那么显而易见,相比于专注于推理场景的 TPU v1,TPU v2 将自己的设计倾向放到了训练相关的场景。如果回顾历史,在 2017 年前后,深度学习跨时代的工作如雨后春笋般涌现,也就是那年,谷歌在 NIPS(也就是当今的 NeurIPS)发布了那篇革命性的 《Attention Is All You Need》,从而彻底革新了 NLP 的世界,也引领了未来十年的潮流。那么可以想象的是,这篇论文不仅是谷歌 Brain 研究院夜以继日的心血,也是谷歌在深度学习领域耕耘多年的成果。那么我们就来讲讲 TPU v2,那个站在 Attention 背后的超级计算机。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 谷歌 TPUv3 POD 形态(DONE)
|
||||
# 谷歌 TPUv3 POD 形态
|
||||
|
||||
## TPU v3 vs. TPU v2
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 国外 AI 芯片(DONE)
|
||||
# 国外 AI 芯片
|
||||
|
||||
- 《国外 AI 芯片》深入地剖析国外谷歌 TPU 和特斯拉 DOJO 相关 AI 芯片的架构,以 TPU 为主主要使用了数据流(Data FLow)的方式的脉动阵列来加速矩阵的运算,而特斯拉则使用了近存计算(Near Memory)两种不同的产品形态。
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 寒武纪(DONE)
|
||||
# 寒武纪
|
||||
|
||||
中科寒武纪科技股份有限公司成立于 2016 年 3 月 15 日,其名字 Cambricon 是由 Cambrian(寒武纪)和 Silicon(硅)组合成。企业使命是:为客户创造价值,成为持续创新的智能时代领导者,企业愿景是让机器更好地理解和服务人类。寒武纪提供云边端一体、软硬件协同、训练推理融合、具备统一生态的系列化智能芯片产品和平台化基础系统软件。下面我们将重点展开寒武纪产品背后的相关芯片架构和模块。
|
||||
|
||||
@ -349,7 +349,7 @@ __mlu_global__ void MatmulKernel(float* dst/*C*/, int16_t* src0/*A*/, int8_t* sr
|
||||
|
||||
- 寒武纪提供统一的平台级基础系统软件 Cambricon Neuware,支持云边端全系列智能芯片,简化 AI 模型迁移和软件开发。
|
||||
|
||||
- Cambricon BANG 平台提供了一套完整的软件栈,支持从 C/C++编程到AI 框架和通信库,简化了异构并行编程。
|
||||
- Cambricon BANG 平台提供了一套完整的软件栈,支持从 C/C++编程到 AI 框架和通信库,简化了异构并行编程。
|
||||
|
||||
- 寒武纪的 MLU 架构包括多层次的存储结构和多种计算能力,支持不同规模的并行计算任务,并通过软件工具优化性能。
|
||||
|
||||
|
@ -2,9 +2,9 @@
|
||||
|
||||
# 昇腾 AI 处理器
|
||||
|
||||
本节将会介绍华为昇腾 AI 处理器的架构与卷积加速原理。昇腾 AI 处理器是华为基于达芬奇架构专为人工智能领域设计的处理器,它支持云边端一体化的全栈全场景解决方案,具有高能效比和强大的3D Cube矩阵计算单元,支持多种计算模式和混合精度计算。
|
||||
本节将会介绍华为昇腾 AI 处理器的架构与卷积加速原理。昇腾 AI 处理器是华为基于达芬奇架构专为人工智能领域设计的处理器,它支持云边端一体化的全栈全场景解决方案,具有高能效比和强大的 3D Cube 矩阵计算单元,支持多种计算模式和混合精度计算。
|
||||
|
||||
昇腾 AI 处理器的架构包括了AI Core、AI CPU、多层级片上缓存/缓冲区和数字视觉预处理模块DVPP,这些组件通过CHI协议的环形总线实现数据共享和一致性。此外,本节还将探讨卷积加速原理,即昇腾AI处理器如何通过软硬件优化实现高效的卷积计算加速,包括矩阵计算单元和数据缓冲区的高效组合以及灵活的数据通路设计,以满足不同深度神经网络的计算要求。
|
||||
昇腾 AI 处理器的架构包括了 AI Core、AI CPU、多层级片上缓存/缓冲区和数字视觉预处理模块 DVPP,这些组件通过 CHI 协议的环形总线实现数据共享和一致性。此外,本节还将探讨卷积加速原理,即昇腾 AI 处理器如何通过软硬件优化实现高效的卷积计算加速,包括矩阵计算单元和数据缓冲区的高效组合以及灵活的数据通路设计,以满足不同深度神经网络的计算要求。
|
||||
|
||||
## 昇腾 AI 处理器
|
||||
|
||||
@ -64,8 +64,8 @@ AI Core 通过矩阵相乘完成了网络的卷积计算,之后向量执行单
|
||||
|
||||
## 小结与思考
|
||||
|
||||
- 昇腾AI处理器的创新:华为推出的昇腾AI处理器基于达芬奇架构,专为AI领域设计,提供云边端一体化的全栈全场景解决方案,以高能效比和强大的3D Cube矩阵计算单元为特点,支持多种计算模式和混合精度计算。
|
||||
- 昇腾 AI 处理器的创新:华为推出的昇腾 AI 处理器基于达芬奇架构,专为 AI 领域设计,提供云边端一体化的全栈全场景解决方案,以高能效比和强大的 3D Cube 矩阵计算单元为特点,支持多种计算模式和混合精度计算。
|
||||
|
||||
- 昇腾AI处理器架构:昇腾AI处理器是一个SoC,集成了特制的计算单元、存储单元和控制单元,包括AI Core、AI CPU、多层级片上缓存/缓冲区和数字视觉预处理模块DVPP,通过CHI协议的环形总线实现模块间的数据共享和一致性。
|
||||
- 昇腾 AI 处理器架构:昇腾 AI 处理器是一个 SoC,集成了特制的计算单元、存储单元和控制单元,包括 AI Core、AI CPU、多层级片上缓存/缓冲区和数字视觉预处理模块 DVPP,通过 CHI 协议的环形总线实现模块间的数据共享和一致性。
|
||||
|
||||
- 卷积加速原理:昇腾AI处理器针对卷积计算进行软硬件优化,利用AI Core的矩阵计算单元和数据缓冲区,缩短数据传输路径,降低延时,并通过灵活的数据通路满足不同深度神经网络的计算要求,实现高效能的卷积计算加速。
|
||||
- 卷积加速原理:昇腾 AI 处理器针对卷积计算进行软硬件优化,利用 AI Core 的矩阵计算单元和数据缓冲区,缩短数据传输路径,降低延时,并通过灵活的数据通路满足不同深度神经网络的计算要求,实现高效能的卷积计算加速。
|
BIN
02Hardware/06Domestic/08AscendBase.pdf
Normal file
BIN
02Hardware/06Domestic/08AscendBase.pptx
Normal file
@ -155,8 +155,8 @@ AI Core 中的存储系统为计算单元提供源源不断的数据,高效适
|
||||
|
||||
## 小结与思考
|
||||
|
||||
- 昇腾AI处理器的AI Core 利用达芬奇架构,通过其专门的矩阵、向量和标量计算单元,实现对深度学习算法中各类计算模式的高效处理。
|
||||
- 昇腾 AI 处理器的 AI Core 利用达芬奇架构,通过其专门的矩阵、向量和标量计算单元,实现对深度学习算法中各类计算模式的高效处理。
|
||||
|
||||
- AI Core的存储系统 采用分布式缓冲区设计,配合存储转换单元,优化数据流传输,减少功耗,并提高计算性能。
|
||||
- AI Core 的存储系统 采用分布式缓冲区设计,配合存储转换单元,优化数据流传输,减少功耗,并提高计算性能。
|
||||
|
||||
- 控制单元 在AI Core中扮演着指挥角色,通过预取指令、多流水线并行执行和事件同步模块,确保计算任务的顺利、高效执行。
|
||||
- 控制单元 在 AI Core 中扮演着指挥角色,通过预取指令、多流水线并行执行和事件同步模块,确保计算任务的顺利、高效执行。
|
BIN
02Hardware/06Domestic/09AscendSOC.pdf
Normal file
BIN
02Hardware/06Domestic/09AscendSOC.pptx
Normal file
BIN
02Hardware/06Domestic/10AscendCube.pdf
Normal file
BIN
02Hardware/06Domestic/10AscendCube.pptx
Normal file
BIN
02Hardware/06Domestic/11AscendCompute.pptx
Normal file
@ -1,6 +1,6 @@
|
||||
<!--Copyright © 适用于[License](https://github.com/chenzomi12/AISystem)版权许可-->
|
||||
|
||||
# 国内 AI 芯片(DONE)
|
||||
# 国内 AI 芯片
|
||||
|
||||
- 《国内 AI 芯片》深入地解读国内 AI 初创芯片厂商如国内第一 AI 芯片上市公司寒武纪、国内造 GPU 声势最大的壁仞科技、腾讯重头的燧原科技等科技公司的 AI 芯片架构。
|
||||
|
||||
|