服务器conda环境打包迁移 dgl安装 版本问题

2023-11-04

总结

租服务器配好conda环境,把环境迁移到没联网的学校服务器,要注意一定要检查两个服务器的CUDA版本是不是不同的,这可能会带来一些问题,因为CUDA是不在conda环境里面的。
最后解决安装dgl版本问题还是采用下载whl文件pip离线安装的。所以我们最好一开始就在autodl租一个跟学校服务器配置相同的服务器喽(也有同学选择先用虚拟机配环境应该也是个不错的选择),学校服务器(teacher09) torch版本1.10.0+cu102,CUDA10.1
在这里插入图片描述

问题背景

租autodl服务器https://www.autodl.com/跑代码(pycharm链接远程服务器可以在其帮助文档最佳实践中查看)太花钱,学校服务器不联网用着太不舒服,尝试创建conda环境,配置好环境之后把conda环境打包到学校服务器,是不是完美解决

创建虚拟环境

conda安装成功

以最近跑的项目CKBC 常识库补全为例

conda create -n CKBC_myk python=3.8
conda env list

在activate之前,有时候需要先conda init 再重启shell

conda activate CKBC_myk
pip install torch==1.10.0
pip install numpy
pip install tqdm
pip install transformers
pip install matplotlib

安装dgl

安装dgl rgcn跑代码尝试,错误解决

https://www.dgl.ai/pages/start.html

https://pytorch-geometric.com/whl/torch-1.10.0%2Bcu113.html

# 查看cuda版本
nvcc --version
#------打印信息:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Mon_May__3_19:15:13_PDT_2021
Cuda compilation tools, release 11.3, V11.3.109
Build cuda_11.3.r11.3/compiler.29920130_0

# 安装dgl
pip install -U isort==5.10.1 -i https://pypi.mirrors.ustc.edu.cn/simple
pip install dgl-cu113 dglgo -f https://data.dgl.ai/wheels/repo.html
#pip install dgl-cu117 dglgo -f https://data.dgl.ai/wheels/repo.html

生成requirements

  • 生成requirements.txt方便后续使用

    进conda虚拟环境,cd到项目目录下,执行:好像还是会下很多多余的库

    pip freeze > requirements.txt
    

    注意:这个会把环境中的所有库都保存下来,配合virtualenv才好用。如果没有virtualenv,这个方法会保存很多多余的库。

    可以采用

    pip install pipreqs
    pipreqs --force ./    # 如果报错,pipreqs ./ --encoding=utf-8
    

打包环境

  • 打包环境,直接zip打包是我自己想的,可能会有问题,可以跳过这两段代码,直接往后看,使用conda-pack打包
    apt-get update
    apt-get install zip
    zip -r CKBC_my.zip CKBC_myk/
    
    先传到本地,再传到学校服务器的conda env路径下后解压
    unzip CKBC_my.zip
    

找到其他环境迁移的方式:

https://huaweicloud.csdn.net/63806a8ddacf622b8df87613.html

推荐使用conda pack

第二种方式就是利用 conda-pack 命令直接对环境进行 打包。要想使用 conda-pack 包对环境打包实现环境迁移,我们需要提前安装一下 conda-pack包,conda-pack包是一个命令行工具,主要用于打包conda环境(包括环境中安装的软件包的所有二进制文件),此方法最好的地方就是 在没有网络的情况下仍可实现环境的复现,简直不要太优秀,下面说一下使用 conda-pack 的具体操作

  1. 安装conda-pack包
    conda install -c conda-forge conda-pack
    
    或者
    pip install conda-pack
    
  2. 使用 conda pack 命令开始打包环境
    # 将名字为 my_env 的虚拟环境 打包为 my_env.tar.gz(默认就是这形式)
    
    conda pack -n my_env
    
    # -o 就是给导出的虚拟环境重新命名,所以导出来的虚拟环境名字为 out_name.tar.gz
    
    conda pack -n my_env -o out_name.tar.gz
    
    # 指定虚拟环境包的输出路径
    
    conda pack -p /explicit/path/to/my_env
    
    解压tar.gz
    tar -xzvf file.tar.gz -C /home_data/teacher09/anaconda3/envs/

报错了

# 部分报错信息:
import dgl
  File "/home_data/teacher09/anaconda3/envs/CKBC_myk/lib/python3.8/site-packages/dgl/__init__.py", line 16, in <module>    
self._handle = _dlopen(self._name, mode)
OSError: libcudart.so.11.0: cannot open shared object file: No such file or directory

解决问题

上面的报错,我最开始以为是环境打包有问题,重新弄了几遍还是不行,中间又尝试是dgl相关的几个包的问题,但是在学下服务器又报一些其他的错误,看文件以为是找不到那个文件,重新去找到python-package里的那个文件替换还是不行,同时又学了一下liunx中文件的权限等,解决问题还问了同学,网上查了很多资料,一直以为是环境打包或者可能是miniconda和anaconda两个服务器不同的问题,后面我有搬出来chatgpt,逐渐解决问题,把我与chatgpt的对话放在文末

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

服务器conda环境打包迁移 dgl安装 版本问题 的相关文章

随机推荐

  • 星星之火-48:在LTE中,66.67us的符号发送时间是怎么来的呢?

    66 67us符号的发送时间是怎么来的呢 这就涉及到 发送一个符号所需的时间 即符号周期是怎么来的 1 先从频率的角度看子载波的频率 频分复用 1 LTE基带信号的带宽 1 4MHz 3MHz 5MHz 10MHz 15MHz 20MHz等
  • 企业微信回调接口验签

    文章目录 一 企业微信配置参数 二 验签 三 企业微信客户联系回调 四 相关工具类 企业微信提供了回调接口 允许企业服务商和企业应用接收到企业微信的事件通知和用户操作通知 在接收到回调通知时 需要进行验签操作 以确保通知的安全性和有效性 官
  • html+css+js

    2021年3月16日 一 标签内容 1 声明为HTML5文档 1 用于游览器正确显示网页 2
  • react项目搭建 (eslint+prettier)

    1 安装nodejs 安装git 安装vscode 安装yarn 2 npm install create react app yarn g 在yarn中安装react脚手架 3 在系统资源中配置path 在指定目录下create reac
  • JAVA面试(三)

    1 什么是本地调用 java编译器将包含本地方法的class对应的方法添加ACC NATIVE标识 而JVM负责将动态库加载到内存 Java执行引擎执行到本地方法时找到对应的函数 完成本地方法的调用 2 多线程 3 线程同步怎么实现 1 s
  • MFCC特征值详解

    看了网上的很多MFCC 依然没能够学号MFCC 因此糊了一段时间详细的看了下MFCC的内容 现在也算是对于MFCC有了更深入的理解了 不管是语音识别还是其他的一系列的识别大体都分为三个步骤 1 输入信号的预处理2 特征值提取3 相关算法的识
  • 薪资16K,在阿里外包工作是一种什么体验...

    我17年毕业于一个普通二本学校 电子信息工程学院 是一个很不出名的小本科 大学期间专业知识也没有去认真的学习 所以毕业的时候就随便找了一份工作 在一个小公司做功能测试 记得那时候税前薪资大概是7k左右 因为是在工厂 工作环境很差 也很危险
  • Fabric CA 1.4 官方文档中文版

    链接 Fabric CA中文文档 目录 概述 Fabric CA概述 快速上手 安装前提条件 安装软件 使用Fabric CA命令行 配置软件 Fabric CA 服务器 初始化服务器 启动服务器 配置数据库 配置LDAP 搭建集群 搭建多
  • moviepy快速切分视频并保存片段

    文章目录 1 直接使用ffmepg 2 使用moviepy本身 moviepy安装最新版本 pip install moviepy pre upgrade 版本是v2 0 0 dev2 有两种方法一种快速的 1 直接使用ffmepg fro
  • 基于STM32的DMX512开发笔记

    首先基本了解一下DMX512的基本协议 一 DMX512协议 DMX 是Digital MultipleX 的缩写 意为多路数字传输 DMX512控制协议是美国舞台灯光协会 usITT 于1990年发布的灯光控制器与灯具设备进行数据传输的工
  • 使用小波变换对图像进行去噪

    使用小波变换对图像进行去噪 实现效果 代码 import matplotlib pyplot as plt from skimage restoration import denoise wavelet estimate sigma fro
  • GAN_Unet模型实现

    文章目录 摘要 一 GAN 1 1 输入 输出 1 2 优化目标 1 3 缺点 1 4 CGAN 1 5 LSGAN 1 6 C LSGAN实现 1 7 判别器 总代码 二 Unet 2 1 编码器 2 2 编码器 2 3 效果 2 4 模
  • 深度学习(自编码器)

    深度学习目录 自适应线性单元 Widrow and Hoff 1960 神经认知机 Fukushima 1980 GPU 加速 卷积网络 Chellapilla et al 2006 深度玻尔兹曼机 Salakhutdinov and Hi
  • MVC笔记 初识模型(二)

    1 在视图中创建窗口 新建一个View视图 添加视图 选中复选框 创建强类型视图 需要输入的地方可以用MVC内置的HTML辅助方法来生成字段 需要显示标题的地方可以用 方法 需要显示文本的地方可以使用 方法 在MVC中 可以利用Html B
  • FPGA/IC 秋招笔试/面试题总结(续)

    请根据目录浏览 觉得有用三连支持一下也是一种鼓励 打印版半价半价 联系微信 Crazzy M 原创不易 100页 未经允许 请勿转载 FPGA IC 秋招笔试 面试题总结 目录展示 点击查看 内容展示 FPGA IC 秋招笔试 面试题总结
  • webpack-使用html-webpack-plugin和ejs-loader将侧栏、头部、底部公共html做成模板,并生成合并后的html页面...

    在学习前端自动化之前一直使用 PHP JSP 将在每个页面将头部 侧栏 底部等部分引入 现在前端 娱乐圈 一直噼里啪啦的每天出新东西 自从接触了前端自动化我就觉得这种工作可以交给前端了但一直没时间研究一下 最近有时间看一下 踩了好多坑终于成
  • 10:00面试,10:06就出来了,问题问的实在有点变态

    从小厂出来 没想到在另一家公司又寄了 到这家公司开始上班 加班是每天必不可少的 看在钱给的比较多的份上 就不太计较了 没想到8月一纸通知 所有人不准加班 加班费不仅没有了 薪资还要降30 这下搞的饭都吃不起了 还在有个朋友内推我去了一家互联
  • SVN经典目录结构说明

    SVN经典目录结构说明 SVN的经典目录包含trunk tags branches trunk trunk是主干 也就是主要工作的地方 也是最新的代码存放的地方 branches branches是分支的意思 分支开发和主线开发是可以同时进
  • MySQL数据库和表基础操作

    目录 一 数据库的基本操作 二 表的基本操作 1 表结构操作 2 表数据操作 CRUD增删查改 一 数据库的基本操作 创建数据库 create database 数据库名 切换数据库 use 数据库名 删除数据库 drop database
  • 服务器conda环境打包迁移 dgl安装 版本问题

    总结 租服务器配好conda环境 把环境迁移到没联网的学校服务器 要注意一定要检查两个服务器的CUDA版本是不是不同的 这可能会带来一些问题 因为CUDA是不在conda环境里面的 最后解决安装dgl版本问题还是采用下载whl文件pip离线