从高层 PyTorch 到中层 CUDA Kernel 到底层硬件 Tensor Core

层级 组件 作用 举例
① 高层框架 PyTorch 用户用它写模型,调用 tensor 操作 torch.matmul(a, b)
② 执行层 / 中间层 CUDA kernel 实现 PyTorch 的底层算子逻辑,运行在 GPU 上 cublasGemmEx(), custom_op
③ 硬件执行层 Tensor Core NVIDIA GPU 中用于高效执行矩阵乘法的物理单元 FP16/FP8 TensorMath 单元

🔧 Tensor Core 是什么?

是 NVIDIA Volta 之后引入的硬件结构(TensorMath 单元)

本质是一个 4x4 或 8x8 矩阵乘加(FMA)模块

优化执行如下类型计算:

D = A × B + C

支持精度:FP16, BF16, TF32, FP8(取决于架构)

➡️ Tensor Core 能以比传统 CUDA core 快几倍的吞吐执行矩阵乘法!

🛠️ CUDA kernel 是什么?

是你编写或 PyTorch/库调用的 GPU 端执行代码

是 GPU 上的计算任务载体(你可以手写 .cu 文件,也可以用 JIT 写)

举例:

PyTorch 自带 kernel:aten::add, aten::matmul

cuBLAS kernel:cublasGemmEx()

你自己写的 kernel:my_custom_add<<<>>>

➡️ CUDA kernel 调度线程块 + 调用底层硬件单元(如 Tensor Core)

🧩 torch.compile、custom kernel 与 Tensor Core 的连接

模块 与 Tensor Core 的关系

torch.compile 会尝试 fuse 运算 → 使用 Triton / cuBLAS 等生成高效 kernel

Triton kernel 能生成调用 Tensor Core 的代码(例如 FP16 matmul)

Custom CUDA kernel 你手写 kernel 时,可以手动调用 Tensor Core 相关 intrinsics

相关推荐
Coder_Boy_14 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
会飞的老朱16 小时前
医药集团数智化转型,智能综合管理平台激活集团管理新效能
大数据·人工智能·oa协同办公
聆风吟º17 小时前
CANN runtime 实战指南:异构计算场景中运行时组件的部署、调优与扩展技巧
人工智能·神经网络·cann·异构计算
寻星探路18 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
Codebee19 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º20 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys20 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_567820 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子20 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
ValhallaCoder20 小时前
hot100-二叉树I
数据结构·python·算法·二叉树