异构硬件

Multi-GPU Programming with Standard Parallel C++, Part 1

NVIDIA CUDA Programing Guide 2.0 Final

  • 看起来nv在2008年cuda接口就基本稳定了

WinnieS的微博:图书推荐

  • 手把手教你设计CPU--RISC-V处理器
  • RISC-V架构与嵌入开发快速入门

M1 CPU 那么多的核,macOS 是怎样管理的?

  • MacOS的E核(Efficiency Core)和P核(Performancs Core的调度策略)
  • 应用程序通常由 Grand Central Dispatch 使用 QoS 管理
  • 最低 QoS 线程只在 E 集群上运行
  • 用户进程优先分配P核,过多后再分配E核
  • 引导或者更新后,系统可能处于单E核运行状态

图片

深入理解混合精度训练:从 Tensor Core 到 CUDA 编程

  • 介绍tensorcore的调用接口
  • cuda warpper接口
  • cudnn封装接口

OpenSource GPU

  • veriGPU, 基于RISC-V ISA的verilog GPU开源项目

CUDA多个流的使用

SmartNICs to xPUs – Why is the Use of Accelerators Accelerating?

  • 会议:2022-05-20

CPU缓存一致性协议- 深入理解内存屏障

  • CPU缓存一致性协议解析

FPGA并行编程

  • FPGA编程;Parallel Programming for FPGAs的中文翻译版

CPU性能和Cache

CPU相关书籍推荐和部分芯片微架构

  • CPU相关图书推荐; 另有多张CPU架构图片(如RISC-V)

Tensil tutorial for YOLO v4 Tiny on Ultra96 V2

  • 在FPGA上实现了一个深度神经网络

讲座:开源,让天下没有难做的芯片

  • 包云岗; 香山RISC-V; 芯片简介; 内有视频

Nvidia MPS 总结

  • MPS: Multi-Process Scheduling
  • 多个进程向驱动提交指令, 驱动只有一个队列, 减少context切换导致的性能损失

CPU和GPU线程概念的异同(英文)

  • 相同点
  • 都有程序计数器/线程ID/计算单元等内容
  • 不同点
  • GPU线程必须执行相同指令流, 处理的数据可以不相同
  • CPU线程上限受限于从内存中读取的指令数据数量, GPU没有此限制, 所以线程数大于CPU
  • GPU中对于只访问一次(没有数据依赖)的尽量不用for循环
  • Nvidia CUDA C++ 编程指南
  • CUDA 汇编参考手册

图书: The Art of Multiprocessor Programming

Everything You Need to Know About the NVMe® 2.0 Specifications and New Technical Proposals: NVMe 2.0

NVMe® Key Value Command Set Provides the Key to Storage Efficiency: blog, NVMe KVS

NVIDIA CUDA

教程

使用技巧

bash pip3 install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html * CUDA_VISIABLE_DEVICES="0,1,2"可以控制使用的卡 * Train With Mixed Precision: doc, pdf, NV混合精度训练文档, 中文翻译版csdn * TorchScript GELU error: issue, torch版本问题, 需要NV官方dockernvcr.io/Nvidia/pytorch:21.12-py3以后能解决, 也可以将镜像内/opt/下的torch及编译的依赖库拷贝出来编译安装 * NVIDIA Deep Learning Frameworks: doc, NV支持的深度学习库更新的release note * NVIDIA AI Platform Delivers Big Gains for Large Language Models: blog, NV加速大型语言模型训练,最多有30% * pytorch cuda kernel gelu: gelu的pytorch实现 * Nvidia profiling工具 * nvprof, 另外还有nsys

文件列表

  • 04.Hardwares