当前位置: 首页 > news >正文

[最佳实践] conda环境内安装cuda 和 Mamba的安装

Mamba安装失败的过程中,causal-conv1d安装报错为连接超时

Mamba安装

主要故障是 pip install causal-conv1d==1.2.0 安装失败

安装实践比较长,请耐心等待

解决方案

受到启发运行Mamba项目时无法直接用pip install安装causal_conv1d和mamba_ssm_pip install causal-conv1d编译文件-CSDN博客

本地安装causal-conv1d时,一定要检查机器的gcc和g++版本,本人默认是gcc5就会编译报错,gcc9就能安装成功
安装时间比较长,请耐心等待

conda create -n your_env_name python=3.10.13
conda activate your_env_name
conda install cudatoolkit==11.8 -c nvidia
pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 --index-url https://download.pytorch.org/whl/cu118
conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc
conda install packaging
git clone https://github.com/Dao-AILab/causal-conv1d.git 
cd causal-conv1d 
git checkout v1.2.0 # current latest version tag 
CAUSAL_CONV1D_FORCE_BUILD=TRUE pip install .
git clone https://github.com/state-spaces/mamba.git
cd ../mamba
git checkout v1.2.0 # current latest version tag
MAMBA_FORCE_BUILD=TRUE pip install .

Ubuntu下gcc多版本共存和版本切换_ykrgcc-CSDN博客这里详细讲述了gcc版本切换

成功预览

image.png

失败经历
经历一

:::info

  1. Ubuntu内部先安装cuda11.8和cudnn
  2. 然后安装pytorch
  3. 然后安装pip install causal-conv1d==1.2.0 ,然后就报错了。都没等到安装Manba
    :::
经历二

然后通过观察
Mamba 环境安装踩坑问题汇总及解决方法_building wheel for causal-conv1d (setup.py) …-CSDN博客
调整为
:::info

  1. Ubuntu内部先安装cuda11.8和cudnn
  2. 然后安装pytorch
  3. conda install packaging
  4. 然后安装pip install causal-conv1d==1.2.0,然后就报错了。也是都没等到安装Manba
    :::
    任然报错
经历三

完全按照作者提到的
:::info

  1. conda create -n your_env_name python=3.10.13
  2. conda activate your_env_name
  3. conda install cudatoolkit==11.8 -c nvidia
  4. pip install torch2.1.1 torchvision0.16.1 torchaudio==2.1.1 --index-url https://download.pytorch.org/whl/cu118
  5. conda install -c “nvidia/label/cuda-11.8.0” cuda-nvcc
  6. conda install packaging
  7. pip install causal-conv1d==1.2.0 # 此处报错
  8. pip install mamba-ssm
    :::
    image.png

前面已经安装好了很多的依赖,只不过还是报错了
说是链接超时,网络问题。看到了希望

经历4
conda create -n your_env_name python=3.10.13
conda activate your_env_name
conda install cudatoolkit==11.8 -c nvidia
pip install torch==2.1.1 torchvision==0.16.1 torchaudio==2.1.1 --index-url https://download.pytorch.org/whl/cu118
conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc
conda install packaging
git clone https://github.com/Dao-AILab/causal-conv1d.git 
cd causal-conv1d 
git checkout v1.2.0 # current latest version tag 
CAUSAL_CONV1D_FORCE_BUILD=TRUE pip install .
pip install mamba-ssm # 此处报错

image.png
至此才有了文章顶部的解决方案

conda环境内部安装cuda

好处就是当前环境使用的cuda和机器内的cuda不冲突

conda install cudatoolkit==11.8 -c nvidia
conda install -c "nvidia/label/cuda-11.8.0" cuda-nvcc

参考:flash-attention踩坑:使用conda管理CUDA

相关文章:

  • 详解Java中集合的List接口实现的ArrayList方法 | Set接口实现的HashSet方法
  • leetcode 热题 100_找到字符串中所有字母异位词
  • 计算机组成原理-第七章 输入/输出系统【期末复习|考研复习】
  • 企业数字人虚拟形象定制解决方案
  • [SpringCloud] OpenFeign核心架构原理 (一)
  • 『运维备忘录』之 RegEx 正则表达式实例汇总
  • 学习JAVA的第十三天(基础)
  • 芋道项目部署问题指南
  • 常用“树”数据结构
  • 通信棒自动化测试工具
  • uni-app 系统状态栏高度CSS变量--status-bar-height
  • istio pod不启动及访问报RBAC错误问题解决
  • JavaWeb Response:设置响应数据
  • 如何更好的引导大语言模型进行编程的高效开发流程?
  • Kali Linux 2024.1
  • ----------
  • 78. Subsets
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • Java新版本的开发已正式进入轨道,版本号18.3
  • leetcode46 Permutation 排列组合
  • react-native 安卓真机环境搭建
  • TCP拥塞控制
  • Vue 动态创建 component
  • 阿里云购买磁盘后挂载
  • 给第三方使用接口的 URL 签名实现
  • 简单数学运算程序(不定期更新)
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 为视图添加丝滑的水波纹
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 新书推荐|Windows黑客编程技术详解
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 用element的upload组件实现多图片上传和压缩
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • (2.2w字)前端单元测试之Jest详解篇
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (30)数组元素和与数字和的绝对差
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (LeetCode C++)盛最多水的容器
  • (离散数学)逻辑连接词
  • (理论篇)httpmoudle和httphandler一览
  • (万字长文)Spring的核心知识尽揽其中
  • (一) storm的集群安装与配置
  • (原創) 如何使用ISO C++讀寫BMP圖檔? (C/C++) (Image Processing)
  • (转)一些感悟
  • .bat文件调用java类的main方法
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net 4.0发布后不能正常显示图片问题
  • .net core使用ef 6
  • .net 发送邮件
  • .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现)
  • .sh
  • // an array of int
  • @SuppressWarnings(unchecked)代码的作用