win操作系统下安装Deepspeed

news2024/9/21 11:08:48

1. 准备cunda环境

下载cuda、cudnn,

CUDA Toolkit Archive | NVIDIA Developericon-default.png?t=N7T8https://developer.nvidia.com/cuda-toolkit-archive

Log in | NVIDIA Developericon-default.png?t=N7T8https://developer.nvidia.com/rdp/cudnn-download 选择版本可以参考里的Index of /anaconda/cloud/pytorch/win-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorpytorch版本信息

具体流程可以参考【精选】CUDA安装教程(超详细)_Billie使劲学的博客-CSDN博客

2. 安装nvcc

下载安装包:

https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=Community&channel=Release&version=VS2022&source=VSLandingPage&cid=2030&passive=false

需要选择“使用c++桌面开发”,之后按提示安装即可,最后按提示重启操作系统,在cmd窗口输入nvcc -v,即可查看安装信息

3. 安装pytorch环境

conda install pytorch=2.0.1 torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia 

其中pytorch的版本需要根据需要调整

如果使用清华源安装pytorch,使用如下命令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/
conda install pytorch=2.0.1 torchvision torchaudio pytorch-cuda=11.7 -c nvidia 

安装完成后,需要推出conda的powershell prompt命令行,重新打开。否则python环境有可能会提示找不到torch

4. 从github上获取deepspeed代码

经过测试发现,pip install方式获取的deepspeed代码是无法在windows下使用的,所以需要根据requirements.txt上要求的版本从github上clone或直接从release里下载对应的版本。

比如,0.9.2版本的下载路径是:https://github.com/microsoft/DeepSpeed/archive/refs/tags/v0.9.2.zip

5. 编译代码

需要“以管理员身份运行”启动anaconda的powershell prompt命令行程序,执行

build_win.bat

报错1:

csrc/transformer/inference/csrc/pt_binding.cpp(537): error C2398: 元素“2”: 从“size_t”转换为“_Ty”需要收缩转换

可以参考:

如何在window10安装DeepSpeed chat(补充编译报错C2398部分)_deepspeed安装-CSDN博客

修改csrc/transformer/inference/csrc/pt_binding.cpp,加入(unsigned)

报错2:

LINK : fatal error LNK1181: 无法打开输入文件“aio.lib”

参考Win11系统下安装Deepspeed报错处理_vah101的博客-CSDN博客

6. 配置环境变量

编译完成后,在deepspeed的bin目录下,生产了deepspeed可执行文件,之后可以将deepspeed的bin目录增加到系统环境变量中配置path里,直接在命令行执行deepspeed不报错,就说明成功。

7. 使用的注意事项

此后,在安装其他的应用中,如果requirements.txt有deepspeed,需要将其deepspeed注释掉

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

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

相关文章

通过阿里云创建accessKeyId和accessKeySecret

我们想实现服务端向个人发送短信验证码 需要通过accessKeyId和accessKeySecret 这里可以白嫖阿里云的 这里 我们先访问阿里云官网 阿里云地址 进入后搜索并进入短信服务 如果没登录 就 登录一下先 然后在搜索框搜索短信服务 点击进入 因为我也是第一次操作 我们一起点免费开…

禁止U盘拷贝-保护数据安全

禁止U盘拷贝-保护数据安全 下载使用安企神U盘管理系统 U盘是一种可移动存储设备,可以方便地实现数据的传输和共享。然而,U盘的通用性和便携性也给它带来了安全隐患。如果U盘落入恶意用户手中,可能会导致敏感数据的泄露,给企业和…

在线数据库设计工具Itbuilder

有人说——不具备全局观的设计者想着如果把一片树叶设计的非常美,而忘了树叶需要树枝,树枝是构成大树的一部分,所以说去培育一片森林,才叫做设计。而数据库设计亦是如此,如果纠结于某个列某个表的设计,而忘…

01-windows栈溢出

简单栈溢出 测试环境: win xp sp3 cn 辅助环境:mac,安装了pwntoosl、msf 使用0day安全中的随书文件:0day\02栈溢出原理与实践\2_4_overflow_code_exec\Debug\stack_overflow_exec.exe git clone https://github.com/jas502n/0da…

3. 博弈树 (15分)

下棋属于一种博弈游戏,博弈过程可以用树(博弈树)来表示。假设游戏由两个人( A 和 B )玩,开始由某个人从根结点开始走,两个人轮流走棋,每次只能走一步, 下一步棋只能选择当…

Python 算法高级篇:启发式搜索与 A *算法

Python 算法高级篇:启发式搜索与 A *算法 引言 1. 什么是启发式搜索?1.1 启发式函数的特性1.2 启发式搜索算法 2. A *算法的原理2.1 A *算法的伪代码2.2 A *算法的优点 3. Python 中的 A *算法实现4. 总结 引言 启发式搜索是一种常用于解决路径规划和优…

【Java集合类面试二十九】、说一说HashSet的底层结构

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:说一说HashSet的底层结构…

【CCF-A类】IEEE-TRANS系列,1区顶刊,WOS稳定收录32年,对国人友好,仅17天检索!

论文写作堪比西天取经,当我们经历“九九八十一难,取得真经“,还有最关键的一步,就是选刊发表。是“投石问路”,还是“投其所好”? 选刊有多重要,相信只要有过发表SCI经验的人都十分清楚。如果不…

【QT】对象树

一、QT对象树的概念 先来看一下 QObject 的构造函数: 通过帮助文档我们可以看到,QObject 的构造函数中会传入一个 Parent 父对象指针,children() 函数返回 QObjectList。即每一个 QObject 对象有且仅有一个父对象,但可以有很多个…

什么是间谍软件恶意软件?

攻击者利用此类软件从受感染的设备中收集和传输信息。这可能包括个人、银行和用户凭证(社交网络、流媒体服务、邮件等的登录名和密码),以及设备内存中的文件。 在间谍软件的帮助下,欺诈者还可以窃取公司凭证,不仅伤害…

Vue 3中toRaw和markRaw的使用

文章目录 Vue 3的响应性系统使用toRaw使用markRaw使用场景1. 与第三方库交互2. 提高性能3. 避免无限循环 总结 🎉欢迎来到Java学习路线专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:IT陈寒的博客&#…

Linux基础:2:shell外壳+文件权限

shell外壳文件权限 一.shell原理:1.对比:windo GUI 和 shell1.windo GUI2. shell 2.为什么?是什么?怎么办?1.为什么有shell2.是什么?3.怎么办?4.补充: 二.linux权限管理:…

Linux redis 安装

1、解压 tar -zxvf redis-5.0.10.tar.gz 2、cd /data/redis-5.0.10 文件夹 3、make 等待make命令执行完成即可。 make命令报错:cc 未找到命令,系统中缺少gcc,执行命令安装 gcc: yum -y install gcc automake autocon…

蓝桥杯每日一题2023.10.25

乘积尾零 - 蓝桥云课 (lanqiao.cn) 题目描述 题目分析 由于需要相乘的数很多&#xff0c;所以我们不能直接进行暴力模拟&#xff0c;我们知道10 2 * 5&#xff0c; 所以我们只需要找出这个数2和5的个数&#xff0c;其中2和5个数小的那个则为末尾0出现的个数 #include<bi…

探讨安科瑞低压备自投装置AM5-DB的应用-安科瑞 蒋静

1 概况 本项目主要为发电机组供电切换提供备自投保护功能&#xff0c;该发电机组的供电主要由两进线一母联的系统组成&#xff0c;其中&#xff0c;每路进线分别由一路市电和一路柴油发电机切换提供&#xff0c;故此&#xff0c;我司用了三台低压备自投装置AM5-DB来实现备自投…

软信天成:助力某制造企业建设产品主数据管理平台案例分享

某国有大型传统制造企业是一家跨领域、跨行业经营的国际化公司&#xff0c;在全球范围内拥有动力系统、工程机械、汽车制造等多个业务板块、分子公司遍及世界、产品远销110多个国家和地区&#xff0c;产品品类繁多&#xff0c;分支架构错综复杂。 近年来&#xff0c;数字化的深…

欢迎浪潮KaiwuDB成为开源社白金合作伙伴

众多开源爱好者翘首期盼的开源盛会&#xff1a;第八届中国开源年会&#xff08;COSCon23&#xff09;将于 10月28-29日在四川成都市高新区菁蓉汇举办。本次大会的主题是&#xff1a;“开源&#xff1a;川流不息、山海相映”&#xff01;各位新老朋友们&#xff0c;欢迎到成都&a…

Find My护照|苹果Find My技术与护照结合,智能防丢,全球定位

护照是一个国家的公民出入本国国境和到国外旅行或居留时&#xff0c; 由本国发给的一种证明该公民国籍和身份的合法证件。 护照&#xff08;PASSPORT&#xff09;一词在英文中是口岸通行证的意思。也就是说&#xff0c; 护照是公民旅行通过各国国际口岸的一种通行证明。 护照…

非对称加密---椭圆曲线---单向散列函数

4. 非对称加密 "非对称加密也叫公钥密码: 使用公钥加密, 使用私钥解密"在对称密码中&#xff0c;由于加密和解密的密钥是相同的&#xff0c;因此必须向接收者配送密钥。用于解密的密钥必须被配送给接收者&#xff0c;这一问题称为密钥配送问题。如果使用非对称加密也…

C语言求数组最小值,并返回下标

#include<stdio.h> #include<string.h> void main() {int a[] {12,5,21,33,55,77,11,2};int zf sizeof(a) / sizeof(a[0]);for (int i 0; i < zf; i){if (a[i] < a[0]){a[0] a[i];}}printf("最小为%d&#xff0c;下标是0",a[0]); } 如果是求最…