跳到主要内容
SUN / 笔记

BLOG / 766 ARTICLES

技术笔记

计算机基础、AI、后端与客户端开发笔记

#1-hpc_note · 23 篇文章清除筛选
10 分钟
AI

triton内核开发基础2

本节的例子是学习实现一个融合的 “Softmax” 算子:对于某类矩阵,其速度是显著快于 PyTorch 的原生操作,因为这些矩阵的行能够适应 GPU 的 SRAM。

10 分钟
AI

CUDA背景知识

GPU的微观结构因不同厂商、不同架构都会有所差异,但核心部件、概念、以及运行机制大同小异,NVidia Tesla 微观架构如下图所示:

12 分钟
AI

CUDA编程模型进阶

前面学习了 CUDA 编程模型的基本概念,内核配置以及内核调用,我们会编写简单的 CUDA 代码了,本文将深入探讨 CUDA 编程模型是如何映射到 GPU 底层硬件架构的,并探讨影响性能的各种底层因素。

12 分钟
AI

CUDA编程模型概述

CUDA 是 NVIDIA 的通用并行计算架构(编程模型),是在 C 语言基础上扩展的。借助于CUDA,你可以像编写 C/C++ 语言程序一样实现并行算法。

28 分钟
AI

英伟达GPU架构总结

深度神经网络是由大量具有相同结构的神经元堆叠而成的,它们本质上具有很高的并行性,同时,神经网络严重依赖矩阵数学运算。对于多层网络来说,其需要大量的浮点性能和带宽来提高计算效率和速度,而 GPU 拥有数千个针对矩阵数学运算优化的处理核心-CUDA 核心,可提供数十至数百 TFLOPS 的性能,因此 GPU 硬件天然适合神经网络的训练和推理计算。

9 分钟
AI

浅析dataflow芯片架构和组成

GPU 虽然是冯诺依曼架构,但是去除了 CPU 中的分支预测、乱序执行等模块,遵循 SIMT(Single Instruction Multiple Thread)的编程模型,同一条指令可以同时在多个线程上执行,极大的增强了计算程序执行时的并行性。

9 分钟
AI

深入理解 roofline 模型

为了做性能分析,Roofline 模型论文引入了“操作强度”(operational intensity)这个概念,表示每字节 DRAM/HBM 数据传输(traffic)所对应的操作次数(每字节 flops),这里的字节数是指那些经过缓存层过滤后进入主内存 DRAM/HBM 的字节,即我们关注的是缓存与内存之间的数据传输,而不是处理器与缓存之间的数据传输(

15 分钟
AI

CUDA执行模型

前面的内容我们学习了 CUDA 编程模型中主要有两个抽象(逻辑)概念:内存层次结构和线程层次结构,知道了线程的组织结构是由执行配置 <<<grid_size, block_size>>> 决定的,并知道如何编写简单的 kernel 函数。今天的内容则重点在于分析 GPU 并行架构的抽象视图,从而分析线程的并发,从而能编写在吞吐量和内存访问更优的 kernel