博客
分类
标签
归档
友链
关于
Dark Mode
博客
分类
标签
归档
友链
关于
Dark Mode
Mens et Manus
HPC Profile
算子性能预估 算力 FLOP/s 拼尽全力每秒完成的浮点运算次数 带宽 byte/s 拼尽全力每秒完成的内存交换量 计算强度Arithmetic Intensity(计算访存比) FLOP/byte 平均读入数据能用上多少运算 理解角度 把BW用满能发挥出的算力 “一次IO”的计算强度(强度一定有个”计量时间”, byte size就是这里的时间) roofline mode...
2025-03-11
Read More
shfl, warp-level primitives
shfl: warp-level primitives一个warp有32个thread, warp内的线程称为通道(lanes), lane id的计算方法是threadid % 32, warp id的计算方法是threadid / 32。 线程束洗牌: warp-level原语 可以直接获取warp内的线程的寄存器值,直接使用寄存器交换 每次调用都会同步warp内的线程, sync m...
2024-08-11
Read More
bank confict和冲突消解
bank confict和冲突消解 一个conflict的实例: 矩阵转置存储在smem中。 thr0~3读取gmem一行, 存储到smem的一列, 这时同一列的thr就发生列bank conflict bank conflict 4Byte一个bank 简单方法 ldmatrix swizzle GPU为了提升并行度,可以提供了同时访问share memory功能,多个线程访问s...
2024-08-10
Read More
通过例子理解CUDA driver api和CUDA PTX
通过例子理解CUDA driver api和CUDA PTXcuda程序经过编译器编译后后添加很多对cuda driver api的调用, 这样用户就不用关心gpu module管理, context管理, kernel管理等的细节了。 不过我们就是想要知道细节, 所以这篇文章通过直接使用cuda driver api加载cuda ptx执行的方式体会其中的细节。 我们的目标是将下面这个cu...
2022-12-28
Read More
GPGPU-sim部署 + Ubuntu切换软件版本
环境 ubuntu18.04 cuda11 gcc5.5 流程安装依赖, 安装gcc5GPGPU-sim所需的依赖如下 GPGPU-Sim dependencies: 1sudo apt-get install build-essential xutils-dev bison zlib1g-dev flex libglu1-mesa-dev GPGPU-Sim documentation...
2022-11-05
Read More
Previous
2 / 2