win10系统编译安装flash_attn的全过程
1. 环境准备
1. 安装CUDA(已有请忽略),下载安装工具,根据引导顺序安装即可:
-
官网下载安装引导工具
官网下载地址: https://developer.nvidia.com/cuda-toolkit
点击下载的exe开始本地安装过程,根据引导顺序完成安装即可。
2.检查安装是否成功:
nvcc --version
2. 安装anaconda(已有请忽略),非必选项,有python环境即可。
1.下载anaconda
官网下载地址: https://www.anaconda.com/
2.点击下载按钮:
3.填写邮箱地址:
4.下载安装引导完成后,根据引导完成安装:
5.检查是否安装成功:
conda --version
6.创建python环境
# 解释:name为环境名称,可以任意命名,如test_conpile
conda create -n name python=3.12
7.激活环境
# 解释:name为上一步的命名
conda activate name
8.更改默认镜像源
查看镜像源:conda config --show channels
删除镜像源:conda config --remove-key channels
添加镜像源:conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
3. 安装torch
1.进入pytorch官网
官网地址:https://pytorch.org/
2.选择安装环境,并复制安装命令
# 根据自己的环境,直接复制run this command框中的命令到本地命令框执行:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
4. 安装Microsoft visual stdio(版本:2019-2022才行),注意:Microsoft visual stdio 2022版本需要.net framework版本≥4.6
1.官网下载visual stdio Install
地址:https://visualstudio.microsoft.com/zh-hans/downloads/
2.仅选择python开发就行,点击安装(请先看下一步)
3.安装Microsoft Visual C++ 14.0(已有请忽略)
4.安装.net framework 4.8(已有请忽略)
下载地址:https://dotnet.microsoft.com/zh-cn/download/dotnet-framework
选择对应的版本进行下载:
2. 正式进入编译安装flash_attn
1. 安装ninja
pip3 install ninja
2. 安装编译flash_attn
# MAX_JOBS可以根据硬件设置大一些,可以让编译更快
set MAX_JOBS=3
pip3 install flash_attn
备注:我的电脑(cpu:i5-4600、GPU:gtx-1060)用了6个小时完成编译。下图为编译好的源文件:
3. 编译过程中可能存在的问题
- 在编译过程中缓存文件会占用C盘空间,请检查预留足够的空间,在编译过程中,我的电脑占用峰值在17G。空间不够会报错:
ninja: fatal: CreateProcess: 页面文件太小,无法完成操作。
-
安装路径过长导致报错
解决办法:我是用的第2个办法解决: