[自动驾驶技术]-6 Tesla自动驾驶方案之硬件(AI Day 2021)

1 硬件集成

特斯拉自动驾驶数据标注过程中,跨250万个clips超过100亿的标注数据,无论是自动标注还是模型训练都要求具备强大的计算能力的硬件。下图是特斯拉FSD计算平台硬件电路图。

1)神经网络编译器

特斯拉AI编译器主要针对PyTorch框架,结合之前介绍过的编译器内容,特斯拉的自动驾驶算法模型需要通过编译器,生成硬件可执行的机器指令,才能在CPU、GPU或者AI芯片上运行。上图主要展示了AI编译器的计算图优化(算子融合:将CONV 2D和RELU算子融合为1个CONV 2D_RELU算子,这基本是常规标配做法),调度。

2)FSD计算平台

特斯拉FSD硬件计算平台集成了2颗SoC芯片,SOC-1输出最终的控制指令,SOC-2作为扩展计算。

3)AI模型评估中心

特斯拉的AI模型评估基础设施中心,可支持每周超过百万的评估计算,运行在超过3000个FSD计算平台上。

特斯拉的训练网络计算中心,2021年具备3个集群1组用于自动标注,2组用于模型训练。

2 DOJO项目  

Ganesh说:“计算能力容易扩展,但带宽扩展较为困难,而降低延迟则极其困难。”

现代CPU、GPU和AI加速器通过不断优化架构(如增加核心数、提高时钟速度、优化指令集)来提升性能。特别是GPU和AI加速器,天然适合大规模并行计算,通过增加更多的计算单元,可以显著提升计算能力。

然而无论哪种处理器都很容易受到内存带宽限制: CPU、GPU和AI加速器需要高速访问内存,而内存带宽的提升速度往往跟不上计算能力的提升速度,造成带宽瓶颈,也就是我们常说的内存墙问题。此外,芯片内部的总线架构(如PCIe、NVLink)需要支持高带宽传输,扩展这些总线的带宽需要对芯片封装、功耗管理和信号完整性进行优化,难度较大。在多芯片系统中,不同芯片之间的数据传输也受到带宽限制,需要高速互连技术(如Infinity Fabric、NVLink)来解决,但这些技术实现复杂且成本较高。

降低延迟极其困难:从CPU到GPU或AI加速器的数据传输路径中,每一步都可能增加延迟,例如内存访问延迟、缓存命中率、总线传输延迟等都是难以完全消除的因素。在多任务环境中,任务调度和切换会带来上下文切换延迟和资源争用问题,这些问题在实时性要求高的应用中尤为突出。若想硬件和软件协同优化来减少延迟,涉及复杂的设计流程和大量的调优工作,需要深入理解整个系统的工作机制。

特斯拉的Dojo架构由计算单元和Network Fabric(指芯片上用于连接和通信的网络架构,是一种高性能的互连系统,负责在芯片内部不同计算单元之间传输数据)组成,采用了多种技术例如采用2D网格网络进行数据传输、对神经网络分割、调用本地存储方式等解决带宽和延迟的限制。

(一句话,特斯拉极大程度提高了带宽降低了延迟,远超业内)

1)芯片

如上图所示是特斯拉SoC芯片上一个高性能的训练节点结构图:底部是机器学习阵列,左侧是SRAM存储阵列,再加上顶部的多线程可编程核。支持FP32、BFP16、CFP8。

  • 1024 GFLOPS(BF16/CFP8)
  • 64GFLOPS(FP32)
  • 512GB/S带宽

如上图所示,这是个超标量处理器核,四个宽标量核两个宽标量数据管线;支持四个线程;针对机器学习支持自定义指令集ISA,例如转置、链接遍历、广播等。(这部分工作原理会在处理器专栏做详细介绍)

特斯拉D1芯片由354个训练节点组成计算阵列,可谓针对机器学习的机器,GPU级别的芯片同时拥有CPU的灵活性核两倍NPU级别的I/O带宽,提供了超高性能的计算能力。

2)计算系统Computer Plane

特斯拉的计算系统上,1个Training Tile集成了25个D1芯片,四周使用高速连接器支持9TB/S带宽,支持9PFLOPS(BF16/CFP8)

3)计算集群

4)AI编译器

特斯拉Dojo编译器引擎,使用多种细颗粒度的并行化技术:数据并行、模型并行、计算图并行技术,还支持高层次的环路管理,例如循环等。

特斯拉的软件栈有两个重点:用户编程接口,基于PyTorch做了扩展;使用LLVM作为底层处理生成硬件所需的二进制代码。

LLVM(Low Level Virtual Machine)是一套用于构建编译器和相关工具的开源项目,提供了一种模块化和可重用的编译器基础架构。LLVM的架构主要包括:前端负责将源代码转换为LLVM中间表示IR;中端对LLVM IR进行各种优化处理,提高代码执行效率;后端将优化后的LLVM IR转换为目标机器码,具体包括代码生成和目标特定优化。

(以下为笔者猜测内容)

特斯拉的Dojo AI编译器使用LLVM作为后端处理的基础架构,通过LLVM的模块化设计和强大的优化能力,实现高效的AI模型编译和执行:

  • 自定义目标支持:特斯拉可以通过LLVM的目标描述文件,定义Dojo芯片的特性,并扩展LLVM的指令选择和代码生成模块,以支持特斯拉可能有的特定的硬件加速单元和自定义指令集自定义指令。
  • 高效的寄存器分配:Dojo AI编译器可以利用LLVM的寄存器分配算法,优化寄存器使用,减少内存访问,提高模型执行效率。
  • 目标特定优化:通过LLVM的目标特定优化能力,Dojo AI编译器可以实现针对Dojo硬件的深度优化,包括利用硬件加速单元和并行计算资源,提高模型推理速度。
  • 模块化和可扩展性:LLVM的模块化设计允许特斯拉根据需要扩展和定制编译器后端,以适应不同的AI模型和硬件需求。可以在LLVM的基础上添加新的优化通道和代码生成策略,提升整体性能。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【面试必看】Java并发

并发 1. 线程 1. 线程vs进程 进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。 系统运行一个程序即是一个进程从创建,运行到消亡的过程。在 Java 中,当我们启动 main 函数时其实就是启动了一个 JVM 的进…

java文档管理系统的设计与实现源码(springboot+vue+mysql)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的文档管理系统的设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 文档管理系统的…

初学C语言100题:经典例题节选(源码分享)

1.打印Hello World! #include <stdio.h>int main() {printf("hello world\n");//使用printf库函数 注意引用头文件return 0; } 2.输入半径 计算圆的面积 int main() {float r, s;//定义变量scanf("%f", &r);//输入半径s 3.14 * r * r;// 圆的…

Android network — 进程指定网络发包

Android network — 进程指定网络发包 0. 前言1. 进程绑定网络1.1 App进程绑定网络1.2 Native进程绑定网络 2. 源码原理分析2.1 申请网络requestNetwork2.2 绑定网络 BindProcessToNetwork 3. 总结 0. 前言 在android 中&#xff0c;一个app使用网络&#xff0c;需要在manifest…

el-table 实现嵌套表格的思路及完整功能代码

要实现的需求是这样的&#xff1a; 本来我是用 el-table 的 :span-method 方法实现的&#xff0c;但发现合并起来有问题&#xff0c;跟我的需求差距有些大&#xff0c;于是我想到了嵌套表格。但是嵌套完之后的样子也是很奇怪&#xff1a; 不要气馁&#xff0c;思路还是对的&a…

InTouch历史报警、历史事件按时段查询,导出

简介&#xff1a;本插件基于上位机组态InTouch的历史报警、操作记录而开发 适用InTouch版本&#xff1a;不限 适用Windows系统&#xff1a;不限 适用数据库&#xff1a;SQL Server 标记名点数&#xff1a;不限 配套软件安装&#xff1a;Excel、WPS、SQL Server 功能&…

创新力作 焕新首发丨捷顺科技·捷曜系列智慧停车新品全新上市

2024捷顺科技智慧停车全家族新品全面上市 全新外观、全新特性、全新体验 新控制机、新道闸、新超眸相机... 每款新品都有哪些功能亮点 带您一探究竟

linux mail命令及其历史

一、【问题描述】 最近隔壁组有人把crontab删了&#xff0c;crontab这个命令有点反人类&#xff0c;它的参数特别容易误操作&#xff1a; crontab - 是删除计划表 crontab -e 是编辑&#xff0c;总之就是特别容易输入错误。 好在可以通过mail命令找回&#xff0c;但是mai…

2.冒泡排序

样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9 以下是解题答案&#xff1a; class demo1{public static void main(String[] args) {Scanner scnnew Scanner(System.in);int[] array new int[scn.nextInt()];if(array.length>0&&array.length<200){for(int…

书生·浦语大模型全链路开源体系-作业1

视频链接&#xff1a;书生浦语大模型全链路开源体系_哔哩哔哩_bilibili 1. LLM发展 LLM是近年来人工智能领域的一个重要发展方向。大型语言模型的历史可以追溯到2017年,当时OpenAI推出了GPT-1(Generative Pre-trained Transformer)模型,这是一个基于Transformer架构的语言生成…

【前端三剑客之HTML】详解HTML

1. HTML(超文本标记语言) HTML意为超文本标记语言&#xff0c;其可以通过标签把其他网页/图片/视频等资源引入到当前网页中&#xff0c;让网页最终呈现出来的效果超越了文本.HTML是一种标记语言&#xff0c;其是由一系列标签组成的. 而且每个标签都有特定的含义和确定的页面显…

LeetCode/NowCoder-链表经典算法OJ练习3

孜孜不倦&#xff1a;孜孜&#xff1a;勤勉&#xff0c;不懈怠。指工作或学习勤奋不知疲倦。&#x1f493;&#x1f493;&#x1f493; 目录 说在前面 题目一&#xff1a;返回倒数第k个节点 题目二&#xff1a;链表的回文结构 题目三&#xff1a;相交链表 SUMUP结尾 说在前…

K-means聚类算法详细介绍

目录 &#x1f349;简介 &#x1f348;K-means聚类模型详解 &#x1f348;K-means聚类的基本原理 &#x1f348;K-means聚类的算法步骤 &#x1f348;K-means聚类的优缺点 &#x1f34d;优点 &#x1f34d;缺点 &#x1f348;K-means聚类的应用场景 &#x1f348;K-mea…

全局查询筛选器适用场景 以及各场景示例

EF Core中的全局查询筛选器&#xff08;Global Query Filters&#xff09;是一种强大的功能&#xff0c;可以在实体框架的DbContext级别为特定的EntityType设置默认的过滤条件。这些筛选器自动应用于所有涉及到相关实体的LINQ查询中&#xff0c;无论是直接查询还是通过Include或…

借助 CloudFlare 增强站点内容保护防采集

今天在一位站长的帮助下实测了 CloudFlare 增强站点内容保护实现防采集的功能,效果那是杠杠的,如果您的站点原创内容比较多的话,明月强烈建议试试 CloudFlare 这个内容保护,无论是 WordPress 、Typecho 都有非常好的效果,并且几乎没有任何误伤,搜索引擎爬虫蜘蛛更是不会影…

利用边缘计算网关的工业设备数据采集方案探讨-天拓四方

随着工业4.0时代的到来&#xff0c;工业设备数据采集成为了实现智能制造、提升生产效率的关键环节。传统的数据采集方案往往依赖于中心化的数据处理方式&#xff0c;但这种方式在面对海量数据、实时性要求高的工业场景时&#xff0c;往往显得力不从心。因此&#xff0c;利用边缘…

内存泄漏案例分享3-view的内存泄漏

案例3——view内存泄漏 前文提到&#xff0c;profile#Leaks视图无法展示非Activity、非Fragment的内存泄漏&#xff0c;换言之&#xff0c;除了Activity、Fragment的内存泄漏外&#xff0c;其他类的内存问题我们只能自己检索hprof文件查询了。 下面有一个极佳的view内存泄漏例子…

数据结构——不相交集(并查集)

一、基本概念 关系&#xff1a;定义在集合S上的关系指对于a&#xff0c;b∈S&#xff0c;若aRb为真&#xff0c;则a与b相关 等价关系&#xff1a;满足以下三个特性的关系R称为等价关系 (1)对称性&#xff0c;aRb为真则bRa为真&#xff1b; (2)反身性,aRa为真; (3)传递性,aRb为真…

【程序员如何送外卖】

嘿&#xff0c;咱程序员要在美团送外卖&#xff0c;那还真有一番说道呢。 先说说优势哈&#xff0c;咱程序员那逻辑思维可不是盖的&#xff0c;规划送餐路线什么的&#xff0c;简直小菜一碟。就像敲代码找最优解一样&#xff0c;能迅速算出怎么送最省时间最有效率。而且咱平时…

“技术与管理并重:构建以等保测评为导向的全方位防御体系“

在数字化转型浪潮下&#xff0c;企业信息安全面临着前所未有的挑战。为了有效应对日益复杂的网络威胁&#xff0c;构建一个稳固的信息安全防线&#xff0c;技术手段与管理制度的有机结合显得尤为重要。本文将探讨如何以信息安全等级保护测评&#xff08;等保测评&#xff09;为…