CUDA 学习笔记
"简介 传统上,绝大多数软件应用程序都是作为顺序程序编写的,也就是冯·诺伊曼架构。这些程序的执行可以被人理解为根据程序计数器的概念,按顺序逐步浏览代码。程序计数器包含处理器将要执行的下一条指令的内存地址。 与之相对的就是并行程序,其中多个执行线程合作以更快地完成工作。 异构并行计算 CPU 的设计优化是为了顺序代码性能: 算术单元(ALU)和操作数传递逻辑的设计旨在最小化算术操..."
"简介 传统上,绝大多数软件应用程序都是作为顺序程序编写的,也就是冯·诺伊曼架构。这些程序的执行可以被人理解为根据程序计数器的概念,按顺序逐步浏览代码。程序计数器包含处理器将要执行的下一条指令的内存地址。 与之相对的就是并行程序,其中多个执行线程合作以更快地完成工作。 异构并行计算 CPU 的设计优化是为了顺序代码性能: 算术单元(ALU)和操作数传递逻辑的设计旨在最小化算术操..."
"🧾 问题场景 输入数组(即一维 Tensor) A: A = [100, 99, 98, ..., 1](长度 N = 100) 我们希望 把所有元素乘 2 我们设定:BLOCK_SIZE = 32(每个线程处理 32 个元素) 🧠 核心代码 import torch import triton import triton.language as tl @triton..."
"问题 当编译器在链接报 undefined symbol 时,大部分情况下都会给出函数的调用链,但有些情况下不会给出相关信息,所以需要手动查找 假设有如下代码: #include <variant> int main() { std::variant<int,double> v = 1.1; auto i = std::get<int&gt..."
"rclone 下载 从 https://github.com/rclone/rclone/releases 下载对应的文件,只有命令行工具,没有 gui,包含了 server 和 client。 rclone webdav server 如果服务器没有提供 webdav,可以使用 rclone 自带的 webdav 服务,通过 docker 或使用 rclone cli 即可运行,这里..."
"简介 LoRA(Low-Rank Adaptation of LLMs),即 LLMs 的低秩适应,是参数高效微调最常用的方式之一。属于 PEFT(Parameter-Efficient Fine-Tuning) 的一种方式。 LoRA 的本质就是用更少的训练参数来近似 LLM 全参数微调所得的增量参数,从而减少内存的占用。 原理 对 LLM 做微调的结果可以简要地表示为: [\\m..."
"环境搭建 wsl + torch 详见 使用 WSL2 + WSLg 在 Windows 上跑带图形界面的 AI 应用 LLaMA-Factory 参考本文进行安装 git clone --depth 1 https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory pip install -e ".[torch,met..."
"环境搭建 注意:ROCm 6.4.1 更新后,已经完美支持 wsl 下的 ComfyUI,可跳过本节,可以参考: Install Radeon software for WSL with ROCm Install PyTorch for ROCm 主要依赖于该项目:https://github.com/patientx/ComfyUI-Zluda ..."
"介绍 开启 -finstrument-functions 选项后,编译器会在所有函数的进入和退出位置插入检测函数: void __cyg_profile_func_enter (void *this_fn, void *call_site); void __cyg_profile_func_exit (void *this_..."
"准备 x86 Linux 环境,最好使用最新的 Debian。如果装在其他机器上,可以使用 Remote-SSH 进行开发,见VSCode远程SSH连接方法 安装 qemu for arm sudo apt install qemu-system-arm 安装 Arm GNU Toolchain 开发 创建一个 ARM 项目,参考 ..."
"创建项目 首先安装 nodejs 环境 安装 yeoman,这是一个脚手架程序,用于快速创建一个新项 npm install --global yo 使用 yeoman 创建一个 vscode extension 项目 npx yo code 选择 New Extension (Typ..."