CUDA 内存分配API 一、cudaMalloc 这是CUDA里最基础的内存分配方式,核心作用很简单,就是专门分配显存的。 访问权限:只能 GPU 使用,CPU 访问将会出现 SegmentFault,必须用 cudaMemcpy 手动搬数据(CPU和GPU之间来回传)。 适用场景:纯 GPU 计算、数据不用 CPU 频繁访问的场景,比如批量处理数据,全程靠 GPU 干活,数据只进不出。 核心优势:简洁直观 1234 2026-07-17 C++ > CUDA #C++ #CUDA
C++ std::clamp 一、基本概念 std::clamp 是 C++17 在 <algorithm> 头文件中引入的一个函数模板。它的作用是将一个值限制在指定的范围内。 函数原型: 12345template< class T >constexpr const T& clamp( const T& v, const T& lo, const T& hi );tem 2026-07-15 C++ > 语言特性 > C++17 #C++ #C++17
CUDA 规约优化实现 归约(Reduction)是并行计算中的经典操作,例如对数组求和。在 CUDA 中,由于 GPU 的 SIMT 架构,实现高效的归约需要充分考虑线程协作、内存层次和同步开销。本文将基于一份示例代码,逐步实现 CUDA 归约的优化。 问题:把 N=256M 个 float 加在一起。理想带宽利用 = N×4 字节 / 时间 / peak。 一、实现一:divergent 版 1234for (int 2026-07-12 C++ > CUDA #C++ #CUDA
CUDA(二):内存模型 一、概述 GPU 的计算能力极强——一块 A100 的峰值算力为 312 TFLOPS(FP16,Tensor Core 含稀疏加速),但它的显存带宽只有约 2 TB/s。做一道简单的算术:一次浮点乘加(FMA)需要读 2 个 float(8 Bytes)产生 2 个 FLOP,那么 2 TB/s 带宽最多喂饱 500 GFLOPS 的计算——不到峰值算力的 0.2%。 这意味着:绝大多数 Ker 2026-07-11 C++ > CUDA #C++ #CUDA
CUDA(一):编程模型 一、CUDA:用于异构计算的平台 CUDA 是一种通用的并行计算平台和编程模型,它利用 NVIDIA GPU 上的并行计算能力,以更高效的方式解决复杂的计算问题。通过使用 CUDA,你可以像使用中央处理器那样,直接对 GPU 进行计算操作。 CUDA 提供了两种用于管理 GPU 设备以及组织线程的 API 级别,如下图所示: CUDA Driver API CUDA Runtime API 2026-07-09 C++ > CUDA #C++ #CUDA
Transformer架构详解(5):残差连接与层归一化 一、为什么需要残差连接和层归一化 神经网络的训练依赖反向传播(Backpropagation),其本质是链式法则(Chain Rule)的递归应用。假设一个 L 层的网络,每层的变换为 #mjx-0537af5{ display:contents; mjx-assistive-mml { user-selec 2026-07-05 Transformer #深度学习 #Transformer #大模型
Transformer架构详解(4):前馈网络FFN深入理解 前馈网络(FFN)是 Transformer 中参数量最大的模块,占据单个 Block 约 2/3 的参数。它负责对每个 token 进行独立的非线性变换,是模型”记忆知识”和”深度推理”的核心载体。本文从 FFN 的结构设计出发,深入剖析激活函数演进、参数量计算、SwiGLU 门控机制,并延伸到张量并行切分、MoE 专家并行和 CUDA kernel 融合等 AI Infra 工程实践。 一、F 2026-07-03 Transformer #深度学习 #Transformer #大模型
Transformer架构详解(3):自注意力机制深入理解 一、引入:Self-Attention 1.1 Attention 的作用 Attention 中最核心的三个概念是 Query(Q)、Key(K)和 Value(V)。这三个词直接借鉴了信息检索领域的术语,下面先从一个真实的语言难题出发: 句子 A:The bank of the river.(河边) 句子 B:Money in the bank.(银行) 同一个词 “bank” 在两句话里 2026-06-30 Transformer #深度学习 #Transformer #大模型
Transformer架构详解(2):位置编码深入理解 一、位置编码的作用 自然语言是一种高度依赖顺序的符号系统。同样的几个词,仅仅调换顺序就可能产生截然不同的含义。 Transformer 的自注意力机制是排列不变的:它仅基于 token 之间的内容相似度计算权重,完全不依赖 token 在序列中的位置。这意味着,如果不加位置信息,模型会将输入序列视为一个无序集合,比如: 序列 A:我 打 你 序列 B:你 打 我 这两个序列的词表相同(均为 2026-06-28 Transformer #深度学习 #Transformer #大模型
Transformer架构详解(1):transformer架构总览 一、从 RNN 到 Transformer 在 Transformer 成为自然语言处理、语音识别、多模态建模等序列任务的通用基础架构之前,循环神经网络(RNN) 及其进阶变体 LSTM、GRU,长期主导序列建模领域。Transformer 的诞生并非无迹可寻的创新,而是为了系统性解决 RNN 系列架构的固有缺陷,打破传统序列模型的性能上限与算力瓶颈。 1.1 RNN 的缺陷 文本、语音、时间序列 2026-06-24 Transformer #深度学习 #Transformer #大模型