Jittor:Jittor1.3.1之离线安装

2023-05-16

背景

Jittor是一个非常牛逼的框架,维护了大量的官方demo,非常容易上手。与其他方法相比,采用了即时编译的流程,因此在效率上往往更高。
但是在使用Jittor的过程中,也遇到了一些比较头疼的事情,即如何在断网的服务器上安装jittor。通常在正常联网的电脑上,pip安装jittor以后,jittor还会调用compile_extern.py下载一些压缩包,导致断网电脑无法安装。
在后文中,将简要介绍jittor如何在离线服务器上安装。


方法

  1. 去官网下载最新的jittor源代码,较老的版本可能存在一些bug
git clone https://github.com/Jittor/jittor.git
  1. 安装jittor教程安装jittor到conda环境中
pip install ./jittor
  1. 尝试运行python -m jittor.test.test_example,会创建/home/usr-name/.cache/jittor目录,此时由于无法联网,测试代码会报错,但主要是提醒安装cub、cutt、mkl和nccl这四个压缩包。根据编译代码里提供的链接从其他电脑是下载压缩包,并分别重新命名并放到对应的目录下。
    在这里插入图片描述
    需要注意的是,系统最初可能不会生成所有的文件夹,需要手工生成。另外,jt.1.3.1里是jittor的编译中间代码,无需处理。
  2. 再次尝试运行python -m jittor.test.test_example,如果通过,则基本上安装成功。

可能遇到的问题

  1. 确保cuda>=10.1
    在使用Jittorr时,要保证服务器所使用的cuda版本足够。如果服务器上没有安装对应版本的cuda,那么安装即可。如果服务器上安装了cuda,但目前环境不是使用的对应版本,那么要做版本切换
    这里多说一句,大多数博客都建议通过重建cuda软链接的方式完成版本切换。但是,这种方法是不行的。服务器又不是你一个人用,你切换了别人怎么办?你配置的其他conda环境怎么办?况且,没有管理员权限,通常你也删除不了。比较合理的方式如下:
    1. 复制一个~/.bashrc,重命名为~/.bashrc_jittor
    2. 打开~/.bashrc_jittor,并设置其他CUDA版本的路径
    export PATH="$PATH:/usr/local/cuda-10.1/bin" export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/cuda-10.1/lib64"
    3. 使用source ~/.bashrc_jittor激活新的环境,并利用nvcc -v检查cuda版本是否成功切换
    4. 除此之外,可能系统中还存在其他版本cuda的路径保存在PATH中,可以通过export PATH=${PATH%:/usr/local/cuda-9.2/bin}删除

  1. jittor无法找到cudnn
    通常正常安装cudnn其实是不会遇到这个问题的,但是服务器管理员可能为了保证安装多个版本的cudnn,将cudnn安装在自定义目录下,此时需要进行以下调整
    1. site-package/jittor/compile_extern.py里添加cudnn的自定义路径
    L262
    cuda_include_name = search_file([cuda_include, extra_include_path, "/usr/include","/usr/local/cudnn/cudnn-10.1-linux-x64-v7.6.1.34/include"], lib_name+".h")
    L268
    culib_path = search_file([cuda_bin, cuda_lib, extra_lib_path, f"/usr/lib/{arch_key}-linux-gnu", "/usr/lib","/usr/local/cudnn/cudnn-10.1-linux-x64-v7.6.1.34/lib64"], f"lib{lib_name}.so", prefer_version)
    
    1. 修改<cudnn.h>为绝对路径#include "/usr/local/cudnn/cudnn-10.1-linux-x64-v7.6.1.34/include/cudnn.h",主要是site-package/jittor/extern/cuda/cudnn下的文件

  1. 提示site-packages/jittor/src/type/fp16_compute.h(32): error: expected a
    目前还不理解为啥,但是新版本的jittor已经修正了这个bug,似乎只存在与Jittor1.3.1。将site-package/jittor/src/type/fp16_compute.h里的typename std::enable_if<0<nbyte,void>::type更新成最新版本jittor的代码即可。

总结

有够麻烦的哈。

参考

  1. https://blog.csdn.net/Solomon1558/article/details/51763751

  2. https://blog.csdn.net/Nirvana15/article/details/119062355?spm=1001.2101.3001.6650.6&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-6.pc_relevant_antiscanv2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-6.pc_relevant_antiscanv2&utm_relevant_index=9

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

Jittor:Jittor1.3.1之离线安装 的相关文章

  • 虚拟机ubuntu单向ping通

    可以单向ping通 xff0c 到win端查看VMnet8 xff0c 发现VMnet8不见了 找回方法 xff1a 在VMware中对NAT模式进行 还原默认设置 操作或者配置好后点击确定 xff08 注意 xff1a 虚拟机开机后无法还
  • Beyond compare文件夹内容自动比较

    前言 xff1a 在一开始比较文件都是手动一个个去点击文件 xff0c 如果是几万个代码文件这将是巨大的工程 xff0c 带着偷懒的想法跑去找方法真找到了 默认会全部的文件标红 xff0c 这就很难受了 解决方案 xff1a 顶部的菜单 会
  • 从MIT协议谈契约精神

    以前看到过李笑来讲的发生在他身上的故事 xff0c 说他当年 2001年 住在双榆树 xff0c 经常去双安商场的地下超市买东西 xff0c 有一次买了个什么东西觉得不好 xff0c 要退 xff0c 超市服务员说按规定 xff0c 该类商
  • VLC命令行使用帮助

    Usage vlc options stream You can specify multiple streams on the commandline They will be enqueued in the playlist The f
  • 将Conda Prompt Here添加到右键菜单

    如何将Conda Prompt Here添加到右键菜单 Conda是一个非常流行的Python的环境管理工具 xff0c 在做项目的时候把它跟IDE整合在一起用来管理不同项目的环境会很方便 xff0c 但是在日常使用Windows的过程中如
  • AMS-1117

    电路图 说明 10uF 61 10622uF 61 226100nF 61 104106 61 10乘以10的6次方pF xff1b 简单点的说就是106表示容量 10后面加六个零 单位pF 转换成uF就是10uF 电容之间的换算公式 xf
  • ROS---用catkin创建ROS包、编译

    安装好ROS后 xff0c 默认已经安装了catkin xff0c 接着执行以下步骤 用catkin创建ROS包 span class hljs comment 每次都要进入这个目录 xff0c 也就是所有的包都要放在这个目录下 span
  • libQtGui.so: undefined reference to `png

    使用Qt4 包在Centos上编译时 xff0c 出现libQtGui so 找到未定义的png等 首先进行网上搜索 xff0c 没有发现任何思路 执行ldd时 xff0c 发现少了很多依赖库 xff0c 如下 xff1a ldd libQ
  • C/C++中在头文件中定义函数或变量会出现的问题

    在 C C 43 43 中 xff0c 我们一般是把代码分为头文件 xff08 h xff09 和源文件 xff08 c cpp xff09 分开保存 xff0c 这样可以方便代码管理和阅读 但是如果把函数或变量的定义也放在头文件中会出现什
  • C++ 求100的阶乘

    include lt iostream gt using namespace std int main int n int k 61 1 k为当前的位数 int fact 10000 61 1 0 cout lt lt 34 输入阶乘n 3
  • C++ 读入一个整数,将各个数位上的数拆分下来并输出(从高位到低位)。

    include lt iostream gt include lt cmath gt using namespace std void split int num int n 61 num int count 61 0 位数 int tem
  • C++建立一个关于平面点坐标的类

    建立一个关于平面点坐标的类 include lt iostream gt include lt cmath gt using namespace std class Cpoint private int flag flag 61 1时 xf
  • 图---生成树与最小生成树

    今天在做题的时候遇到一个问题 xff0c 如何根据图的邻接表来画出 DFS 生成树和 BFS 生成树 xff0c 有两年的真题中涉及到这个问题 xff0c 在以前的学习中没注意过此问题 xff0c 由于严奶奶的书上也只是一带而过 xff0c
  • 编写一个递归算法,实现将一棵二叉树的左右孩子互换。

    include 34 iostream 34 using namespace std define max 20 定义树的结点数 typedef struct BTNode 定义二叉树结点类型 char data 结点数据类型 struct
  • IIC协议解释

    xff08 1 xff09 概述 I2C Inter Integrated Circuit BUS 集成电路总线 xff0c 该总线由NXP xff08 原PHILIPS xff09 公司设计 xff0c 多用于主控制器和从器件间的主从通信
  • 使用栈非递归实现复制二叉树

    include 34 iostream 34 using namespace std define max 20 the number of node typedef struct BTNode char data struct BTNod
  • stanford-segmenter一个简单例子

    1 简介 stanford分词目前支持 Arabic 和 Chinese 它的原理是基于CRFs CRFs分词的原理不难懂 xff0c 就是把分词当作另一种形式的命名实体识别 xff0c 利用特征建立概率图模型后 xff0c 用Veterb
  • 集中式vs分布式

    Linus一直痛恨的CVS及SVN都是集中式的版本控制系统 xff0c 而Git是分布式版本控制系统 xff0c 集中式和分布式版本控制系统有什么区别呢 xff1f 先说集中式版本控制系统 xff0c 版本库是集中存放在中央服务器的 xff

随机推荐

  • 一个完整的schema验证xml的例子

    xml文件 xff1a lt reference xmlns 61 34 http www w3school com cn 34 xmlns xsi 61 34 http www w3 org 2001 XMLSchema instance
  • 三维视觉论文阅读:DeepPruner2019双目立体匹配

    论文 DeepPruner Learning Efficient Stereo Matching via Differentiable PatchMatch 摘要 DeepPruner这篇文章 xff0c 本人在2019年上半旬就大致读过一
  • 三维视觉论文阅读:RAFT2020双目光流

    论文 RAFT Recurrent All Pairs Field Transforms for Optical Flow 摘要 2020年下半年以来 xff0c 深度学习都逐渐走向了迭代优化 xff08 例如NeRf xff09 xff0
  • 三维视觉论文阅读:high-res-stereo2019双目立体视觉

    论文 Hierarchical Deep Stereo Matching on High resolution Images 摘要 本篇文章本人在看的时候 xff0c 感觉特别像StereoNet和StereoDRNet high res
  • 三维视觉论文阅读:MVSNet2018多视立体匹配

    论文 MVSNet Depth Inference for Unstructured Multi view Stereo 摘要 MVSNet是深度学习多视立体匹配的开山之作 xff08 我个人认为 xff09 xff0c 虽然其在网络结构上
  • 三维视觉论文阅读:RMVSNet2019多视立体匹配

    论文 Recurrent MVSNet for High resolution Multi view Stereo Depth Inference 摘要 MVSNet最大的问题是3D UNet xff0c 太耗费内存了 RMVSNet另辟蹊
  • 三维视觉论文实战:DenseDepth2019--网络结构及demo

    目的 本篇博客的主要目的是记录测试DenseDepth的demo的过程 xff0c 包括 pytorch模型构建 和 keras模型参数转pytorch 两大部分 xff0c 当然最后还有一个实验模块 注明以下 xff0c 本篇博客为啥要构
  • GTAV:原始影像和深度图获取

    背景 GTAV是一个非常好的游戏 xff0c 目前也已经被广泛应用到深度学习之中了 本篇博客简单介绍一下如何采集数据 1 数据采集 1 代码修改 本篇博客的代码来源于GTAVisionExport 但是上述代码中 xff0c 存在些许问题
  • Blender2.8:Blender Python渲染降噪节点(Cycles)

    参考 https www bilibili com read cv9221189 背景 Blender的Cycles渲染引擎存在非常多的噪声 方法 一个比较好的思路是利用 Denoising Data 和降噪节点 参考文档里的是手动设置 x
  • Ubuntu:显存占用及处理

    问题 在进行深度学习时 xff0c 显存是一种非常宝贵的资源 但是即便在Ubuntu下 xff0c 各种各样的系统配置都会不自觉的占用一些显存 xff0c 导致深度学习难以为继 在本博客中 xff0c 主要搬运一些查询显存占用原因及处理方法
  • Jittor:Jittor三千问

    Jittor三千问 记录一下在使用Jittor时遇到的问题和对应的解决方案 xff0c 持续更新 非常感谢梁盾博士的回复 1 Jittor如何指定显卡 xff1f 在运行脚本时 xff0c 使用 CUDA VISIBLE DEVICES 6
  • 机器学习:补课目录

    补课目录 xff1a xff08 已经完成 xff09 吴恩达DeepLearning ai xff1a Deep Learning Specialization xff08 正在进行 xff09 林轩田 机器学习基石 xff08 正在进行
  • conda:离线环境安装

    Aanconda的离线环境安装的必要条件是有一台可以联网的电脑 在后文中 xff0c 分别称可以联网的电脑为On line xff0c 不可以联网的电脑为Off line 以下即为对应的操作步骤 1 On line 下载annconda安装
  • Ubuntu:pip install gdal

    方法 sudo apt get update 必须首先安装gdal的lib xff0c python只是针对该lib的调用 sudo apt install gdal bin libgdal dev pip安装的版本必须和gdal一致 pi
  • Git:使用笔记

    git局部配置 git config user name 34 username 34 git config user email 34 email 34 git带用户密码clone git clone https username pas
  • Pytorch:conda安装不同版本的cuda

    我不会是最后一个知道可以用conda安装不同版本的cuda的人吧 通常的pytorch安装流程是 xff1a 首先安装NVIDIA驱动 xff0c 然后安装对应版本的cuda和cudnn最后再安装cuda支持的pytorch版本 然而实际上
  • obsidian使用技巧

    背景 obsidian是一个非常牛逼的本地笔记工具 xff0c 极大的提高了本人的学习能力 xff0c 卷的更加厉害了 此处简要记录一下在使用过程中遇到问题和对应的解决方案 xff0c 至于具体的使用方法网上多的是就不介绍了 三方插件推荐
  • ubuntu:命令行查询文件(夹)大小

    背景 使用命令行查询文件文件 夹 大小 参考 https www cnblogs com zhengyiqun1992 p 11183819 html 使用方法 查看当前文件夹下文件大小 ll h 输出如下 xff0c 其中文件夹大小是错误
  • VSCode:remote-ssh多级跳转

    背景 vscode目前是非常流行的编程工具 xff0c 提供了大量的插件 xff0c 尤其是其中的remote ssh xff0c 能够提供远程ssh连接服务器 xff0c 居家办公两不误 然而比较麻烦的事情是 xff0c 通常服务器为了保
  • Jittor:Jittor1.3.1之离线安装

    背景 Jittor是一个非常牛逼的框架 xff0c 维护了大量的官方demo xff0c 非常容易上手 与其他方法相比 xff0c 采用了即时编译的流程 xff0c 因此在效率上往往更高 但是在使用Jittor的过程中 xff0c 也遇到了