基础配置

CPU: Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz * 16

MEM: 120 GiB

GPU: NVIDIA P100 * 2

OS: Ubuntu 18.04 64bit

环境配置

GPU驱动 cuda cuDNN

version url file
GPU Driver Tesla P100 https://www.nvidia.cn/Download/index.aspx NVIDIA-Linux-x86_64-418.67.run
cuda 10.1 https://developer.nvidia.com/cuda-downloads cuda_10.1.168_418.67_linux.run
cuDNN 7.6.2 for cuda10.1 https://developer.nvidia.com/rdp/cudnn-download cudnn-10.1-linux-x64-v7.6.2.24.tgz
  • GPU Driver
chmod +x NVIDIA-Linux-x86_64-418.67.run
./NVIDIA-Linux-x86_64-418.67.run

注意:

默认检查cc版本7.3,但本机是7.4,忽略即可

未发现X,如果X没有发现此驱动,需要安装pkg-cinfig和x.org sdk/development包

提醒32位未装

  • cuda
chmod +x cuda_10.1.168_418.67_linux.run
./cuda_10.1.168_418.67_linux.run
  • cudnn
cp cudnn-10.1-linux-x64-v7.6.2.24.tgz /usr/local/
cd /usr/local/
tar xvf cudnn-10.1-linux-x64-v7.6.2.24.tgz
ls cuda/lib64 | grep cudnn

环境变量:

# .bashrc
export PATH=$PATH:/usr/local/cuda-10.1/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.1/lib64

软件环境

  • python包
# 首先在本地生成项目的requirements.txt, 压缩上传
sudo pip3.6 install pipreqs
pipreqs Inverse-Reinforcement-Learning/
zip -r Inverse-Reinforcement-Learning.zip Inverse-Reinforcement-Learning/
scp Inverse-Reinforcement-Learning.zip root@39.104.56.54:~/ # 服务器上解压,安装对应包
unzip Inverse-Reinforcement-Learning.zip
apt install python3-pip # 注意服务器上pip对应python2
pip3 install -r requirment.txt
  • gnome & vnc

    呃 我们的项目需要用到窗口来做交互 同时方便大家使用 尝试装个gnome
apt install gnome-session gdm3
# 待续
  • jupyter notebook
pip3 install notebook
jupyter notebook --generate-config
# ipython
from notebook.auth import passwd
passwd() # 输入密码,复制该hash值
# vim ~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip = '内网ip' # 注意内网
c.NotebookApp.password = u'密码hash值'
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888
c.NotebookApp.notebook_dir = '/root'
screen -S jupyter_notebook
jupyter notebook --allow-root
<C-a> d

最后注意去ECS的控制台,选中该实例,添加一个允许8888/8888端口的自定义TCP安全组规则即可

遇到的问题

  1. 在强化学习的过程中涉及到真正的游戏环境, 所以需要把窗口取消掉
# 在pygame的环境下, 添加环境变量即可
os.environ["SDL_VIDEODRIVER"] = "dummy"
  1. 同时音频虽然可以不用取消, 但由于总是报错, 屏幕上出现很多的ALSA报错信息.

    第一次这么解决了, 但问题时python的tqdm信息也是通过错误信息提供的, 这样就把tqdm和真正的报错去掉了.
python3 xxx.py 2>/dev/null

这之后突然脑子上线, 用grep过滤掉ALSA的报错吧, 这样tqdm不会乱掉同时其他报错也都在, 缺点是这些信息都当做正常信息输出了

python3 xxx.py 1>&1 2>&1 | grep -v "ALSA" >&1

顺便一提, shell中双引号类似与python中的f"", 而单引号类似与r""

记一次配置阿里云ECS GPU计算型gn5实例的更多相关文章

  1. 配置阿里云ECS支持IPv6,解决苹果app审核失败问题

    前几天iOS的App提交给苹果审核没通过,给出的原因是:该应用在 IPv6 的环境下无法使用.检查发现:阿里云优化过的系统没有启用IPv6协议,需要配置启用一下,但是只单独启用IPv6也是无法直接提供 ...

  2. 初步配置阿里云ECS服务器

    阿里云服务器配置记录01 购买阿里云学生服务器9.9元每月 创建ubuntu64位实例系统,注意必须添加安全组设置才可远程登入(设置课访问端口及IP范围 putty 软件在windows10下远程登入 ...

  3. 阿里云ECS服务器,修改实例密码,查看CPU核数,内存,阿里云服务器关机了怎么办?

    新买的ECS服务器是没有密码的,需要重置密码(root,P@ssw0rd),并重启: 查看CPU核数和内存: 阿里云服务器关机了,不用怕,登录阿里云,可以启动和关闭

  4. 阿里云ECS开放批量创建实例接口,实现弹性资源的创建

    摘要: 为了更方便的实现弹性的资源创建,方便用户一次运行多台ECS按量实例来完成应用的开发和部署,阿里云开放了ECS的批量创建实例接口RunInstances,可以单次最多创建100台实例,避免重复调 ...

  5. 配置 阿里云ECS Ubuntu 16.04 64bit 桌面环境

    1. 步骤 安装软件 修改root权限 重启 2. 详情 1. 安装软件 创建脚本文件(例如:desktopSetting.sh),并输入以下内容: #!/bin/bash #更新软件库 apt-ge ...

  6. 购买阿里云ECS+安装宝塔面板+Mac下怎么连接阿里云ECS服务器

    1.购买阿里云ECS 2.重置实例密码 这个有点对用户不友好,实际意思就是设置服务器的root登录密码 3.配置安全组放行端口 因为服务器需要从宝塔网站download安装包,包括一些常用的服务比如S ...

  7. Chromebook 阿里云ECS 配置 jupyter Notebook

    前言 新购入一台Chromebook Pixel ,为方便机器学习编程,用学生版的阿里云ECS搭建了jupyter Notebook 为减少下次踩坑,参考链接记录如下: 参考链接 阿里云使用笔记(一) ...

  8. 阿里云ECS主机多个网站配置,是有先后顺序的

    注意:阿里云ECS主机多个网站配置,是有先后顺序的: 进入路径:/alidata/server/httpd-2.4.2/conf/vhosts/  注意这个2.4.2是自己的版本不一样,但是找到 se ...

  9. 阿里云ECS每天一件事D1:配置SSH

    近期因为项目需求,采购了两台阿里云ECS,选择的系统为CentOS 6.3 X64 安全加固版,额外买了160G的硬盘,应该够应付此项目的需求了. ECS默认已经配置好了sshd服务,可以使用root ...

随机推荐

  1. kotlin if

    val max = if (a > b) { print("Choose a") a } else { print("Choose b") b } 注意和 ...

  2. linux下的开源NFC协议栈

    1. 协议栈名称 neardal 2. 源码 https://github.com/connectivity/neardal.git 3. 由谁维护? intel 4. 基于neardal的nfc协议 ...

  3. Rsync数据同步工具及sersync同步工具

    Rsync简介 Rsync英文全称Remote synchronization,从软件的名称就可以看出来,Rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像,远程备份的功能,这个功能类似s ...

  4. jeecg中列表点击单号跳入链接

    效果如图:点击单号,跳到一个新的页面 1.首先列表给一个自定义的js: <t:dgCol title="业务编号"  field="orderCode" ...

  5. manager 实现进程之间的数据共享 list dict

    manager 能够实现进程之间的数据共享 (list,dict) 如果多个进程同事修改同一份共享数据,这个时候需要加锁,保证数据的准确性. (1) dict list 可以实现进程之间的数据共享 ( ...

  6. 一个伪静态与404重定向例子(房产网),.htaccess文件内容

    ErrorDocument 404 /404.phpRewriteEngine OnRewriteBase /RewriteRule ^(.*)\.(asp|aspx|asa|asax|dll|jsp ...

  7. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_1-4.在线教育后台数据库设计

    笔记 4.在线教育后台数据库设计     简介:讲解后端数据库设计    ,字段冗余的好处,及常见注意事项 1.数据库设计:          er图:          实体对象:矩形        ...

  8. Hadoop HDFS命令学习笔记

    cat Usage: hadoop fs -cat [-ignoreCrc] URI [URI ...] Copies source paths to stdout. Options The -ign ...

  9. Linux (Ubuntu)安装svn

    1 先查看是否已经安装了svn 如果没有安装svn则: ubuntu@ip----:~$ svn --version The program 'svn' is currently not instal ...

  10. java数据结构之LinkedList

    一.LinkedList源码注释 //LinkedList源码 jdk版本1.8.0_121 public class LinkedList<E> extends AbstractSequ ...