arm架构下torch环境的安装(主要是conda,torch,torchvision以及tensorflow)

以前装过arm架构下的深度学习环境还是有点麻烦的,在此记录一下
参考:https://blog.csdn.net/condom10010/article/details/128139401?ops_request_misc=&request_id=&biz_id=102&utm_term=orin%E5%B9%B3%E5%8F%B0%E6%9E%B6%E6%9E%84%E9%85%8D%E7%BD%AEtorch%E7%8E%AF%E5%A2%83&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-3-128139401.142v100control&spm=1018.2226.3001.4187

https://blog.csdn.net/qq_58728069/article/details/136292802?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171759001916800227447557%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=171759001916800227447557&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-6-136292802-null-null.142v100control&utm_term=orin%E5%B9%B3%E5%8F%B0%E6%9E%B6%E6%9E%84%E9%85%8D%E7%BD%AEtorch%E7%8E%AF%E5%A2%83&spm=1018.2226.3001.4187
arm架构下torch环境的安装

1. 查看arm域控 cuda 版本

nvcc -V
出现cuda版本cuda已完成安装

2. 下载archconda

    a) 命令sh Archiconda3-0.2.3-Linux-aarch64.shb) 可能bash会报错 sudo gedit ~/.condarc 查看 将export行显示conda安装路径留着把报错的行删掉c) 可能需要换源d) 创建虚拟环境 conda create -n 环境名 python=3.8e) 激活 conda activate 环境名f) 禁用初始bash环境自启conda config --set auto_activate_base false

3. 选用适合的pytorch版本

    a) 网址[https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048](https://forums.developer.nvidia.com/t/pytorch-for-jetson/72048)b) 推荐选择python3.8对应的torch版本c) 在虚拟环境下 运行pip install torch----------

4. 选择合适的torchvision版本

    **a) 由于pip install torchvision==版本号 不支持arm架构 所以需要编译torchvision源码**b) 查看torch和torchvision对应关系 网址[https://pytorch.org/get-started/previous-versions/](https://pytorch.org/get-started/previous-versions/)c) 然后去对应github上下载对应版本[https://github.com/pytorch/vision/tree/v0.13.0](https://github.com/pytorch/vision/tree/v0.13.0)d) 下载完成解压后进入目录 安装依赖包i. sudo apt-get install libopenblas-base libopenmpi-devii. pip install Cython  注意要在虚拟环境下安装iii. export BUILD_VERSION=0.13.0    iv. python setup.py install –user  注意编译过程很漫长 会报warning 但是不用介意v. 编译完成即可

环境检查的程序:
使用对应的python环境,然后:

import torchclass check_all:"""检测当前设备torch、tensorflow安装状态"""def __init__(self):"""常量"""torchvision = __import__("torchvision")tf          = __import__("tensorflow")self.tensorflow_version = tf.__version__self.tensorflow_is_gpu  = tf.test.is_built_with_cudaself.torch_version = torch.__version__self.cuda_version = torch.version.cudaself.torchvision_version = torchvision.__version__self.use_device = torch.cuda.current_device()p = torch.cuda.get_device_properties(self.use_device)self.gpu_size = int(p.total_memory/ 1024 ** 3)self.device_number = torch.cuda.device_count()self.gpu_name = torch.cuda.get_device_name(self.use_device)self.gpu_capability = torch.cuda.get_device_capability(self.use_device)def check(self):"""检测输出"""print("tensorflow版本{}".format(self.tensorflow_version))print("tensorflow是否为CUDA显卡驱动:{}".format("是"if self.tensorflow_is_gpu else "不是"))print("CUDA版本:{}".format(self.cuda_version))print("pytorch版本:{}\ntorchvision版本:{}".format(self.torch_version,self.torchvision_version))print("pytorch是否为CUDA显卡驱动:{}".format("是" if torch.cuda.is_available() else "不是"))print("当前设备显卡数量为:{},使用设备编号为:{}".format(self.device_number,self.use_device))print("当前使用的设备显卡名称为:{}".format(self.gpu_name))print("当前显卡算力为:{}\n当前显卡的内存大小为:{}GB".format(self.gpu_capability,self.gpu_size))if __name__ == '__main__':check = check_all()check.check()

这里也在检查tensorflow,也可以使用源码安装,直接就能安装(在对应的python环境下)

pip install tensorflow-2.8.0+nv22.4-cp38-cp38-linux_aarch64.whl

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

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

相关文章

ubuntu22.04防火墙策略

1. 安装和配置UFW 1.1 安装UFW 如果UFW尚未安装,可以使用以下命令进行安装: sudo apt update sudo apt install ufw1.2 启用UFW 启用UFW并允许SSH流量,以防止自己被锁定在系统之外: sudo ufw allow OpenSSH sudo ufw enable2…

2 程序的灵魂—算法-2.2 简单算法举例-【例 2.4】

【例 2.4】求 100 1 - 1/2 - 1/3 … 1/100 算法可表示如下: S1: sigh1 S2: sum1 S3: deno2 S4: sigh(-1)sigh S5: term sigh(1/deno ) S6: termsumterm S7: deno deno 1 S8:若 deno≤100,返回 S4;否则,结束。 double sum 1.0; …

C++11 列表初始化(initializer_list),pair

1. {} 初始化 C98 中,允许使用 {} 对数组进行初始化。 int arr[3] { 0, 1, 2 };C11 扩大了 {} 初始化 的使用范围,使其可用于所有内置类型和自定义类型。 struct Date {int _year;int _month;int _day;Date(int year, int month, int day):_year(year…

线性数据结构-栈

在JavaScript中,栈(Stack)是一种遵循后进先出(Last In First Out, LIFO)原则的数据结构。这意味着最后进入栈的元素将会是第一个被移除的元素。栈通常被用于限制线性数据的访问顺序,使得数据的插入和删除操…

【MySQL】(基础篇二) —— MySQL初始用

MySQL初始用 目录 MySQL初始用基本语法约定选择数据库查看数据库和表其它的SHOW 在Navicat中,大部分数据库管理相关的操作都可以通过图形界面完成,这个很简单,大家可以自行探索。虽然Navicat等图形化数据库管理工具为操作和管理数据库提供了非…

简单了解java中的Map集合

Map 1、Map集合概述 java.util.Map<K, V>集合&#xff0c;里面保存的数据是成对存在的&#xff0c;称之为双列集合&#xff0c;我们称之为键值对。而Collection集合中的元素是单个存在的&#xff0c;称之为单列集合。 2、Map集合的特点 1、可以存储两个数据 2、key元…

微信小程序 导航navigation-bar

属性类型默认值必填说明最低版本titlestring否导航条标题2.9.0loadingbooleanfalse否是否在导航条显示 loading 加载提示2.9.0front-colorstring否导航条前景颜色值&#xff0c;包括按钮、标题、状态栏的颜色&#xff0c;仅支持 #ffffff 和 #0000002.9.0background-colorstring…

微信机器人实现OCR识别录入数据

介绍 采用微信的hook插件&#xff0c;然后解析微信发来的数据图片&#xff0c;通过ocr识别 然后将数据落入execl表格中。同时有权限的人可以导出数据表格即可。 流程图 代码片 文本消息处理流程_robot.py elif msg.type 0x01: # 文本消息# 管理员列表dba_user_list [wxid_…

关于Latitude5490的问题Bios引导问题

关于Latitude5490的问题Bios引导问题 一、问题描述1、第一次维修&#xff1a;2、第二次维修&#xff1a; 二、捣鼓过程1、Latitude 5490的Bios引导2、捣鼓硬盘分区格式3、使用PE修复引导4、处理方法 三、参考链接 一、问题描述 本人原本电脑型号为Latitude 5480&#xff0c;电…

Git:从配置到合并冲突

目录 1.前言 2.Git的下载与初始化配置 3.Git中新建仓库 4.Git的工作区域和文件状态 5.Git中查看操作和提交记录 6.Git中添加和提交文件 7.Git中回退提交版本 8.Git中查看版本间的差异 9.Git中删除文件 10.Git中忽略指定文件 11.Git中配置SSH密钥 12.Git中关联克隆仓库 13.Git中…

Windwos下运行程序如何不弹出黑窗口(控制台窗口)

一、在程序最开始处加一句&#xff1a; #pragma comment(linker,"/subsystem:windows /entry:mainCRTStartup") 二、在CMakeLists.txt里面加上WIN32

结构体(c++语言)

在实际问题中&#xff0c;一组数据往往具有不同的数据类型。例如&#xff0c;人口大普查时&#xff0c;我们需要记录每一位公民的姓名&#xff0c;年龄&#xff0c;性别&#xff0c;住址&#xff0c;身份证号码。这些信息分别要用整型&#xff0c;字符型&#xff0c;字符串型来…

Promise.any 使用方法

Promise.any() 是 JavaScript 中的一个静态方法&#xff0c;用于处理多个 Promise&#xff0c;并返回第一个成功解决&#xff08;fulfilled&#xff09;的 Promise 的结果。它在 ES2021&#xff08;ES12&#xff09;中引入&#xff0c;是 Promise 类的一部分。 语法 Promise.…

【教学类-40-01】20240607类似MJ的免费AI绘画工具——文心一格与通义万相

背景需求&#xff1a; 风变的AI对话大师一年到期了&#xff0c;也没有看到续费的按钮。不能使用它写代码了。 MJ早就用完了&#xff0c;最后480次&#xff0c;我担心信息课题会用到它生图&#xff0c;所以不敢用。 最近探索其他类似MJ的免费出图工具 一、文心一格&#xff08;…

windows10使用触控板、鼠标(magic trackpad)———附带BootCamp6驱动下载链接

文章目录 0 背景1 步骤1.1 下载1.2 解压1.3 安装驱动 参考 0 背景 最近在台式机&#xff08;windows10系统&#xff09;上使用mac设备&#xff0c;键盘magic keybord连上数据线就可以直接使用&#xff0c;但是触控板magic trackpad却不行&#xff0c;只有鼠标左键&#xff0c;…

每日一题——Python实现PAT甲级1077 Kuchiguse(举一反三+思想解读+逐步优化)

一个认为一切根源都是“自己不够强”的INTJ 个人主页&#xff1a;用哲学编程-CSDN博客专栏&#xff1a;每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 我的写法 代码点评 时间复杂度分析 空间复杂度分析 总结 我要更强 方案1&#x…

CloudFlare 防火墙规则里开放合法 Bot 爬虫的方法

明月使用 CloudFlare 也算是有一阵子了,可以说效果非常好更是非常满意,毕竟每天成千上万的 Web 攻击和 cc 攻击都能控制在几乎可以忽略不计的程度了,上次因调试需要关闭了国内线路上的网站卫士统计图覆对比就很能说明这点儿: 这是关闭防火墙当天的实时防御统计结果 这是开启…

刘强东的拼搏哲学与产品创新的启示

在当今这个快速变化的时代&#xff0c;成功不再是偶然&#xff0c;而是需要一种敢于挑战、敢于拼搏的精神。正如京东创始人刘强东所说&#xff1a;“实现梦想&#xff0c;记住这句话就够了。敢于挑战&#xff0c;敢于拼搏的人不一定能成功&#xff0c;但成功的人一定是敢于挑战…

linux Ubuntu安装samba服务器与SSH远程登录

目录 1&#xff0c;下载安装包 2&#xff0c;添加服务器 3&#xff0c;修改服务器配置 3.1 备份配置文件 3.2 修改配置 4&#xff0c;开启samba服务器 5&#xff0c;开关电脑与服务器设置 6&#xff0c; SSH远程登录 1&#xff0c;下载samba服务器安装包 sudo apt in…

unity3d:GameFramework+xLua+Protobuf+lua-protobuf,生成.cs,.pb工具流

概述 1.区分lua&#xff0c;cs用的proto 2.proto生成cs&#xff0c;使用protogen.exe&#xff0c;通过csharp.xslt修改生成cs样式 3.proto生成lua加载.pb二进制文件&#xff0c;并生成.pb列表文件&#xff0c;用于初始化加载 4.协议id生成cs&#xff0c;lua中枚举 区分cs&…