PyTorch - 高效快速配置 Conda + PyTorch 环境 (解决 segment fault )

欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/134463035

PyTorch

在配置算法项目时,因网络下载速度的原因,导致默认的 conda 与 pytorch 包安装缓慢,需要配置新的 conda 与 pip 源,以及下载安装 pytorch 环境。

1. 配置 conda 与 pip 源

配置 conda 清华源,vim ~/.condarc 添加:

channels:- defaults
show_channel_urls: true
default_channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
channel_priority: disabled
allow_conda_downgrades: true

配置 pip 阿里云源,先删除其他 pip 配置,再配置新的 pip 源,即:

rm /opt/conda/pip.conf
rm /root/.config/pip/pip.conf
vim ~/.pip/pip.conf

配置 pip 源包括 阿里云(aliyun) 与 Nvidia,如下:

[global]
no-cache-dir = true
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url = https://pypi.ngc.nvidia.com
trusted-host = mirrors.aliyun.com pypi.ngc.nvidia.com

2. PyTorch

安装 conda 环境,初始化 conda和更新 conda,再创建特定的 conda 环境,即:

conda init bash
source ~/.bashrc
conda update -n base -c conda-forge conda
conda env list
conda create -y -n [your name] python=3.9

需要注意,尽量指定 python 版本。

PyTorch 安装官网:https://pytorch.org/get-started/locally/,之前版本的路径:https://pytorch.org/get-started/previous-versions/

主要包括 2 个版本:最新的 2.+,之前的1.31+版本。根据网络条件,选择不同的安装方式,需要注意的是:

  • conda 安装,需要 nvidia 源,目前没有比较快速的 nvidia 源,
    • 可选:nvidia: https://mirrors.sustech.edu.cn/anaconda-extra/cloud/nvidia/,测试速度一般
    • 参考:GitHub - 重新考虑增加 anaconda 的 nvidia channel
  • pip 安装,来源于 https://download.pytorch.org/whl/
    • 下载速度因网络而异,忽快忽慢,经常中断。
    • 建议直接下载之后安装。

可以根据具体的安装命令选择下载的包,例如:

pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117

需要注意:

  1. 选择正确的 cuda 版本,如 cu117。
  2. 选择正确的 python 版本,这个与创建 conda 环境相关,也可以进入 python 命令查看。
  3. 选择正确的环境,例如 linux_x86_64,是一般服务器的环境。

例如下载地址 https://download.pytorch.org/whl/,则需要下载的包:

pip install torch-1.13.1+cu117-cp39-cp39-linux_x86_64.whl
pip install torchvision-0.14.1+cu117-cp39-cp39-linux_x86_64.whl
pip install torchaudio-0.13.1+cu117-cp39-cp39-linux_x86_64.whl

可以上传至百度网盘,使用 bypy 包下载到服务器,使用 pip 进行安装,注意安装顺序是torch、torchvision、torchaudio,其他包默认安装,即可。

Baidu

需要注意的是,如果遇到 segment fault ,参考 蛋白质结构预测 ESMFold 算法的工程配置:

import torch
segment fault(core dumped) # 报错

则使用 unset LD_LIBRARY_PATH,即可,并且在文件 .bashrc.profile/etc/profile中查看,是否清除。

cat ~/.bashrc | grep LD_LIBRARY_PATH
cat ~/.profile | grep LD_LIBRARY_PATH
cat /etc/profile | grep LD_LIBRARY_PATH

PyTorch 的简易测试命令:

pythonimport torch
print(torch.__version__)  # 1.13.1
print(torch.cuda.is_available())  # True
exit()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/189511.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL数据库——存储过程-游标(介绍-声明游标、打开游标、获取游标记录、关闭游标,案例)

目录 介绍 声明游标 打开游标 获取游标记录 关闭游标 案例 介绍 游标(CURSOR)是用来存储查询结果集的数据类型 , 在存储过程和函数中可以使用游标对结果集进行循环的处理。 游标的使用包括游标的声明、OPEN、FETCH 和 CLOSE,其语法…

【开源】基于Vue和SpringBoot的民宿预定管理系统

项目编号: S 058 ,文末获取源码。 \color{red}{项目编号:S058,文末获取源码。} 项目编号:S058,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用例设计2.2 功能设计2.2.1 租客角色…

MySQL 运算符二

逻辑运算符 逻辑运算符用来判断表达式的真假。如果表达式是真,结果返回 1。如果表达式是假,结果返回 0。 运算符号作用NOT 或 !逻辑非AND逻辑与OR逻辑或XOR逻辑异或 1、与 mysql> select 2 and 0; --------- | 2 and 0 | --------- | 0 | -…

logistic回归后快速绘制亚组森林图!SCI发表级高清图片分分钟生成!

本周为大家重点介绍一下风暴统计平台的最新板块——亚组森林图! 现在亚组分析好像越来越流行,无论是观察性研究还是RCT研究,亚组分析一般配备森林图。 比如这张图: 还有这个: 森林图不仅是画图的画法,背后还…

【计算思维】蓝桥杯STEMA 科技素养考试真题及解析 5

1、要把下面4张图片重新排列成蜗牛的画像,该如何排列这些图片 A、 B、 C、 D、 答案:A 2、将下图的绳子沿虚线剪开后,绳子被分成了()部分 A、6 B、7 C、8 D、9 答案:C 3、下面的立体图形,沿箭头方向看去&#…

hash 哈希表

哈希表是一种期望算法。 一般情况下,哈希表的时间复杂度是 O(1)。 作用 将一个复杂数据结构映射到一个较小的空间 0~N(10^5~10^6),最常用的情景:将 0~10^9 映射到 0~10^5。 离散化是一种及其特殊的哈希方式。离散化…

DAY57 739. 每日温度 + 496.下一个更大元素 I

739. 每日温度 题目要求: 请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用 0 来代替。 例如,给定一个列…

Android Studio Error “Unsupported class file major version 61“---异常信息记录

编译时异常信息 原因及解决办法 问题出在JAVA 17上,并且使用的Gradle JDK是:Android Studio java home版本17.0.1将其更改为:Android Studio默认JDK版本11.0.10 即可解决 操作步骤 1 2 3

Fedora 项目近日发布了 Fedora Linux 39

导读几经推迟之后,Fedora 项目近日发布了 Fedora Linux 39,这是红帽公司赞助的面向大众的 GNU/Linux 发行版的最新稳定版本,采用了最新的技术和开源应用程序。 Fedora Linux 39 由 Linux 内核 6.5 支持,并提供了一些最新的桌面环境…

llvm源码windows编译

1.克隆llvm源码: git clone --config core.autocrlf=false https://github.com/llvm/llvm-project.git 2.创建build文件夹并生成makefile 生成前置条件: cmake ,ninja,python3要先安装 cmake -S llvm -B build -G Ninja -DCMAKE_BUILD_TYPE=Release 生成成功 3.编译 进…

滚雪球学Java(09-3):Java中的逻辑运算符,你真的掌握了吗?

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好…

C#,数值计算——插值和外推,双线性插值(Bilin_interp)的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// 双线性插值 /// interpolation routines for two dimensions /// Object for bilinear interpolation on a matrix. /// Construct with a vector of x1. /// value…