【实验记录】ssh远程使用Linux服务器跑pytorch程序过程

1、SSH服务

linux系统ssh user@address

win10系统:一、安装OpenSSHOpenSSH(注意此步骤只保留客户端,其他正常安装)

二、打开cmd,就可以使用 ssh user@address

遇到的问题 kex_exchange_identification: Connection closed by remote host

网络上的解决方法:

原因是客户端连接数过多。缺省情况下,SSH终端连接数最大为10个。在这种情况下,需要改SSH的配置文件:

(PS:从第10个连接开始,以30%的概率(递增)拒绝新的连接,指导连接数达到100

1、修改/etc/ssh/sshd_config中#MaxStartups 10,将其改为MaxStartups 100,或改为合适值;

2、重启SSH服务,systemctl  restart  sshd。

        以上方法对我无效,使用who查看时仅有2个用户在线。最终,其中一个用户切换成普通用户后就登录成功,但仍有登录失败概率,怀疑是网络问题。

2、安装anaconda

Bash安装

bash Anaconda3-5.2.0-Linux-x86_64.sh

配置环境

Vim ~/.bashrc

打开文件后,在最后一行加入:

export PATH=/home/username/anaconda3/bin:$PATH

按Esc键 并:wq保存退出

source ~/.bashrc

遇到的问题:

此处出现手滑输错成 export PATH=/home/username/anaconda3/bin:$path(path写成小写)

造成结果:出现所有命令失效的情况。

报错:命令'vi'可在'usr/bin/vi/处找到 由于/usr/bin不在PATH环境变量中故无法找到该命令。

解决方法:这时候可以临时设置环境变量:

export PATH="$PATH:/usr/bin" 

出现 < 后输入 vim 退出,(相当于重新写了个临时命令)

即可以临时使用 vi ~/.bashrc 直接重复配置环境的输入修正错误。

检测是否成功 :输入conda

3、安装pytorch

创建一个虚拟环境

conda create -n torch python=3.8

——torch是环境名,可自命名;python=3.8对应你现有的python版本,如果你想在虚拟环境中使用其他版本的python也OK,安装会更慢。

激活虚拟环境

source activate torch

——已激活(虚拟环境):

退回到base

deactivate torch

——正常环境:

查看python版本

python --version

——检测到:anaconda自带的是python3.8

检测cuda版本

cat /usr/local/cuda/version.txt

——检测结果:CUDA10.2.89

安装pytorch

conda install pytorch=1.2.0 torchvision==0.4.0

——此处由于使用的T40C 老旧显卡,只能使用pytorch1.2.0

遇到的问题:此处显示python=3.8不适用torchvision==0.4.0

解决方法:重新创建虚拟环境,将python改为3.6,激活后不退出,直接进行安装。

官网给出1.2.0的安装方法:

# CUDA 10.0

pip install torch==1.2.0 torchvision==0.4.0

# CUDA 9.2

pip install torch==1.2.0+cu92 torchvision==0.4.0+cu92 -f https://download.pytorch.org/whl/torch_stable.html

# CPU only

pip install torch==1.2.0+cpu torchvision==0.4.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

检测cuda和cudnn是否有用

import torch

print(torch.__version__)



print(torch.version.cuda)

print(torch.backends.cudnn.version())



torch.cuda.is_available()

# cuda是否可用;



torch.cuda.device_count()

# 返回gpu数量;



torch.cuda.get_device_name(0)

# 返回gpu名字,设备索引默认从0开始;



torch.cuda.current_device()

# 返回当前设备索引

——检测结果如下:

四、上传文件

使用scp

(¥ SCP命令方法传送门:Linux scp命令 | 菜鸟教程

上传文件:

scp -P 22 file user@119.28.40.194:home/user/ 

(-P端口号 当前目录下的文件名 用户@域名:目录)

上传文件夹(目录):

scp -P 22 -r filework  user@119.28.40.194:home/user/ 

上传完毕后,激活虚拟环境

PS:可以通过ls查看一下文件是否都传成功。

五、运行

问题一:运行pytorch文件出现ModuleNotFoundError: No module named 'XX'。

解决方法:

缺失相对应的库的问题,安装相应库即可。

pip install XXX

问题二:另外,如果安装超时报错,因为源不稳定造成的。

解决方法:

选用国内源(实例为douban,清华源也推荐使用)

pip install 插件名 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

问题三:AttributeError: 'NoneType' object has no attribute 'XXX’

解决方法:

文件上传过来后,路径没有改,所以程序读取不到文件。修改路径即可。

补充:退出ssh,程序继续执行的方法

screen命令

进入:输入screen,并按空格或回车

退出:Ctrl+A+D

查看会话:screen -ls

重新进入会话:screen -r 会话名字

杀死进程:screen -S 会话名字 -X quit

以上,就是通过SSH在linux服务器上远程运行pytorch程序的全过程。

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要租用服务器来运行PyTorch程序,您可以按照以下步骤进行操作: 1. 选择合适的云服务提供商:目前市场上有许多云服务提供商,如亚马逊AWS、微软Azure和谷歌云平台等。根据您的需求和预算选择适合您的云服务提供商。 2. 注册并登录:根据您选择的云服务提供商,注册一个账户并登录。 3. 创建虚拟机(VM):在云服务提供商的控制台中,创建一个新的虚拟机实例。选择适当的操作系统(如Linux或Windows),注意确保所选操作系统支持PyTorch。 4. 配置虚拟机:创建虚拟机时,您可以选择虚拟机的规格(内存、CPU等)。根据您的需求和预算选择适当的规格。 5. 安装PyTorch使用SSH远程桌面连接到您的虚拟机。然后按照PyTorch官方文档的指南,在虚拟机上安装PyTorch。 6. 上传和运行代码:将您的PyTorch代码上传到虚拟机,并在虚拟机上运行。您可以使用SSH远程桌面连接来执行命令并启动程序。 7. 数据和模型管理:确保您的数据集和模型文件在虚拟机上可访问。您可以通过将它们上传到虚拟机的本地存储或使用远程存储服务(如云存储)来实现。 8. 监控和调试:监控您的虚拟机的性能和资源使用情况。如果遇到任何问题,使用提供商的调试工具或日志查找并解决错误。 9. 使用结束后,及时关闭虚拟机并释放资源,以避免不必要的费用。 总结起来,租用服务器来运行PyTorch程序过程包括选择云服务提供商、创建虚拟机、安装PyTorch、上传和运行代码、数据和模型管理、监控和调试等步骤。这样的租用方式为您提供了高性能的计算资源和灵活的管理选项,无需担心硬件投资和维护成本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值