flashattention1-2-3 系列总结
给定输入向量 \mathbf{x} = [x_1, x_2, \dots, x_N],Softmax(x) 函数的输出定义为(默认对行进行 Softmax。):
BLOG / 766 ARTICLES
计算机基础、AI、后端与客户端开发笔记
给定输入向量 \mathbf{x} = [x_1, x_2, \dots, x_N],Softmax(x) 函数的输出定义为(默认对行进行 Softmax。):
前面学习了 CUDA 编程模型的基本概念,内核配置以及内核调用,我们会编写简单的 CUDA 代码了,本文将深入探讨 CUDA 编程模型是如何映射到 GPU 底层硬件架构的,并探讨影响性能的各种底层因素。
FasterTransformer(FT) 是一个库,用于实现基于 Transformer 的神经网络推理的加速引擎,对于大模型,其以分布式方式跨越许多 GPU 和节点。FasterTransformer 包含 Transformer 块的高度优化版本的实现,其中包含编码器 Encoder 和解码器 Decoder 部分。基于 FT 可以运行完整的编码器-解
深度神经网络是由大量具有相同结构的神经元堆叠而成的,它们本质上具有很高的并行性,同时,神经网络严重依赖矩阵数学运算。对于多层网络来说,其需要大量的浮点性能和带宽来提高计算效率和速度,而 GPU 拥有数千个针对矩阵数学运算优化的处理核心-CUDA 核心,可提供数十至数百 TFLOPS 的性能,因此 GPU 硬件天然适合神经网络的训练和推理计算。
为了让 LLM 成为真正的智能体,必须具备与外部环境交互的能力——访问实时数据、调用外部软件。没有标准化通信协议,每次集成都需定制开发,难以复用,阻碍了复杂 AI 系统的扩展和互联。
Softmax 函数在机器学习中应用广泛,此前的多项研究提出了更快的替代方案。本文针对提升原始 Softmax 性能,提出了一种一次遍历输入数据来计算 Softmax 函数归一化项的方法,作用是减少内存访问次数,并称其为“在线 Softmax”,并推测这种减少内存访问的方法可以提升 Softmax 在实际硬件上的性能。基准测试也证实了这一推测:Softmax