Ubuntu服务器+win10+PyCharm远程深度学习开发

文章目录

目标与思路

  • 目标场景:项目代码以及数据集在Ubuntu远程服务器上,使用ssh和sftp协议连接服务器,在个人电脑上进行远程编辑、调试与运行,并使用远程的资源,包括GPUs和CPU以及内存等。
  • 本人使用PyCharm较为习惯,之前有过使用vscode在较大C++项目上出问题的情况,所以偏向于使用P有Charm,注意如果要使用remote功能,需要专业版PyCharm(去某宝)。但是PyCharm在实现上述场景时需要本地有代码备份(不需要数据集备份)。

Ubuntu服务器

  • 服务器通过ssh连接+用户名+用户密码,需要注意,要么使用校园vpn或者在校园网内,记住服务器ipv4地址,如果出现连接不上,但是能ping服务器的情况,可能是服务器端没有安装sshd(ssh server,记得安装并开启服务)。
  • 每个人的个人用户没有权限查看其他用户的文件,也没有root权限,所以无法安装一些ubuntu包,但是可能的解决方案是找到pypi中可替代的包,比如实时监测服务器显卡资源占用情况的NVITOP。
  • 每个用户自己安装一个conda(miniconda比较合适)

Win10

  • 我希望使用win10系统,借助PyCharm完成深度学习或者其他python项目的开发,首先需要安装专业版PyCharm(某宝),随后进行ssh configuration ,然后Deployment → \rightarrow →Remote host , 选择相应的ssh configuration并配置mapping。至此如果一切正常,则你可以访问到远程的文件资源,并且由于设置了路径映射,所以你可以进行项目文件同步,并且值得一提的是,不要吧数据集同步,因为数据集太大,如果批量修改了文件,那么会很麻烦,需要时间太长,并且在本地端存数据集太不优雅了。注意设置Tools → \rightarrow →Deployment → \rightarrow →Options → \rightarrow →设置自动同步。
  • 关于PyCharm我还有些自己喜欢的配置:设置free distraction mode(View → \rightarrow →Appearance),并且去除不常用的side bars和main menu中不需要的选项,在进入free distraction mode之后,代码编辑框的left margin会很大,可以进入setting设置。
  • 此时通过Tools可以开启SSH session terminal,可以进行代码运行等操作,创建好自己的conda环境。但是无法单步调试,考虑到我们需要需要使用远程资源并且调试,我们需要设置remote interpreter(设置ssh interpreter,找到conda目录下envs中你自己环境的python,将其设置为你的remote interpreter)。
  • 此外,PyCharm的remote terminal可以用,但是推荐再装一个专门做连接的软件Mobaxterm,传文件之类的会比较快,可以常开一个监控GPUs资源占用的窗。
  • 使用ssh terminal时,有个小技巧是,有时候网络不稳定会导致terminal断开连接,此时东西都丢失了,这时可以使用类似于screen之类的终端复用器,让终端在远程运行,而本地开的terminal只是一个窗口。
相关推荐
2301_815091014 分钟前
TCP 并发服务器模型:4 种 IO 模型完整梳理
服务器·网络·tcp/ip
捷瑞电子工坊7 分钟前
Ubuntu 终端指令速查手册(持续更新)
linux·ubuntu·教程·开发工具·命令行·速查手册·终端指令
斑马13914 分钟前
Linux软件编程学习笔记(十二)——TCP并发服务器模型
java·服务器·网络
发光的沙子1 小时前
嵌入式系统架构师----Ubuntu如何安装不在列表内的软件?
linux·运维·ubuntu
C+ 安口木1 小时前
Alibaba Cloud Linux 3 服务器环境搭建实战记录
linux·运维·服务器
聚搜云——JuSouClouD1 小时前
杭州腾讯云代理商:腾讯云2核4G服务器够用吗?网站、API和开发测试怎么选
服务器·云计算·腾讯云
zhangguojia72 小时前
权限弹窗点击允许的授权流程
运维·服务器·数据库
AI备忘录2 小时前
(十九)华为华三锐捷迈普思科 交换机链路聚合配置命令(LACP/静态聚合五厂商对照)
运维·服务器·网络·网络协议·tcp/ip·华为
其实防守也摸鱼3 小时前
教育信息技术应用创新---基础软件信息赛
运维·服务器·数据库·github·copilot
苏生Susheng3 小时前
【软件实施】Windows 服务器运维实战
java·运维·服务器·windows·spring boot·javaweb·实施