Linux系统部署深度学习环境

设置jupyter notebook远程访问

一般安装教程参考,我的问题在于软件安装完成也弄好配置,但通过iptables开放端口后死活不能访问。最后才发现是redhat系和debian系防火墙管理应用不同的问题,我所用的是redhat系列的centos,所以应该用firewall开放端口:
在防火墙添加开放8888端口
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
也可以直接开放一个范围的端口,因为多用户系统可能大家都有这个需求,notebook发现8888端口不可用时会自动开放下一端口8889
firewall-cmd --zone=public --add-port=8888-9000/tcp --permanent
防火墙重新载入配置
firewall-cmd --reload
查看某端口开放情况
firewall-cmd --zone=public --query-port=8888/tcp
查看已开放端口
firewall-cmd--zone=public --list-ports
删除开放该端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent

更多firewall命令可参考教程CentOS7 Firewall常用命令汇总,开放端口及查看已开放的端口

深度学习库torch

当服务器中其他用户已经安装好anaconda, torch, cuda, cudnn.torch时,新用户是否还要重复安装,或者说能否直接用已安装好的环境?
我们先来了解以上几个名词:
cuda

CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题

torch

torch是目前深度学习领域与caffe,theano齐名的库,基于lua语言。 除了对lua语言的table数据类型(table 是lua语言的核心数据结构,通过适当的构建方法,可以当列表,字典等等数据结构使用)的支持,还提供了新的数据类型
Tensor,类似matlab中的matrix。

cudnn

cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在GPU上实现高性能现代并行计算。

torchvision:

是独立于pytorch的关于图像操作的一些方便工具库。

pytorch:是一个python工具包

pytorch可以说是torch的python版,然后增加了很多新的特性,Pytorch采用python语言接口来实现编程,而torch是采用lua语言。

所以结论是cuda,cudnn,torch可以共用,但anaconda和所需的pytorch必须重新安装。
首先cuda和cudnn是软件,只要有人安装好,你只需要在自己的用户系统环境上添加软件的安装目录就可以:
vim ~/.bashrc
#添加路径
source ~/.bashrc
同理anaconda也是软件,可以公用,但问题在于公用的话无法保证个人文件的管理,存在误删可能,所以还是推荐装自己的。pytorch就是python的一个工具包,必须要通过conda install 安装的,从官网选择合适版本来安装。

补充

  1. 如果发现notebook进程开了多个端口而你实际上只需要一个可以通过按端口查找pid然后杀死进程:
    ps aux | grep 8888
    kill -9 pid
  2. 发现csdn复制粘贴如果带有标题###符号的化会导致内容显示为空无法编辑和保存,可以通过在草稿里打开同一篇文章解决。

你可能感兴趣的:(运维)