pycharm 远程连接服务器

https://blog.csdn.net/qq_36667170/article/details/121716527

pycharm 指定 GPU

  1. 源代码中添加

    1
    2
    3
    import os
    # 指定使用0,1,2三块卡
    os.environ["CUDA_VISIBLE_DEVICES"] = "0,1,2"
  2. 命令行添加

    1
    2
    3
    #!/bin/bash
    export CUDA_VISIBLE_DEVICES="1,2"
    python -m torch.distributed.launch \
  3. pycharm 中指定

    1. 第一步, 打开”Edit Configurations”
    2. 第二步, 设置环境变量, 按下图序号操作即可
    image-20230621160339265

远程调试

argparse 配合 pycharm 命令行参数

  1. 对于–xxx 这种参数,在添加的时候需要把–xxx 同时加上

    image-20240104110318432

Pycharm上传代码到服务器

导航栏Tools—>Deployment—>Configuration

image-20220902212009347 image-20220902212039711 image-20220902212219151

配置Root path

image-20220902215416908

配置Deployment path

image-20220902215439890

测试上传

image-20220902215730531

3


常用命令

  • nohop命令提交的作业在xshell断开后仍然可以运行。命令格式:nohop ./***.sh > out 2>&1 &。其中脚本文件需要有可执行权限,’out’ 为指定的结果输出文件。
  • ps -u ‘username’ -f 查看用户所用进程及详细信息
  • kill PID不管用的时候,尝试加-9参数kill -9 PID,或者kill父进程: kill PPID
  • top:查看系统资源占用情况以及每个进程资源占用情况。top -u 用户名,查看对应用户的进程占用情况。
  • nohup ./脚本 > 输出文件名 2>&1 &
  • gpustat 可已查看每个GPU当前使用的用户
  • tail -f 输出文件名,动态查看输出信息
  • nvidia-smi:查看显存使用情况

常见报错

  • CUDA out of memory。爆显存

    解决方式:换一张剩余显存大的卡。

  • 进程总是被kill 掉
    原因:爆内存,被Linux系统kill 掉了。
    解决方式:等系统内存多的时候再提交。或者优化程序代码。