科研实验室-服务器的使用和管理指南

上传人:1818****572 文档编号:121946898 上传时间:2020-02-28 格式:PPTX 页数:49 大小:5.61MB
返回 下载 相关 举报
科研实验室-服务器的使用和管理指南_第1页
第1页 / 共49页
科研实验室-服务器的使用和管理指南_第2页
第2页 / 共49页
科研实验室-服务器的使用和管理指南_第3页
第3页 / 共49页
科研实验室-服务器的使用和管理指南_第4页
第4页 / 共49页
科研实验室-服务器的使用和管理指南_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《科研实验室-服务器的使用和管理指南》由会员分享,可在线阅读,更多相关《科研实验室-服务器的使用和管理指南(49页珍藏版)》请在金锄头文库上搜索。

1、服务器的使用和管理指南 1 2 目录 3 目录 4 Linux是什么 Linux和Windows以及MacOS一样 都是一种操作系统 不同的是 Linux代码开源 可以免费使用 并以强大的命令行见长 通常情况下 Linux被打包成供个人计算机和服务器使用的Linux发行版 比如Debian Fedora和openSUSE等 5 Linux文件系统 文件系统 实质就是一棵目录树 最开始的目录叫做根目录 根目录中又有每一级子目录 或者文件 子目录又有子子目录和文件 其中每个子目录都有特定的功能 6 一切皆文件 对于Linux来说 所有的一切都是文件 这是最令人惊奇的概念之一 我们可以使用通用的工具

2、像访问普通文件一样访问计算机上的所有内容 无论是硬盘 显卡 进程或者可执行命令 在Linux下都是文件 7 环境变量 环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数 实质上是一系列键值对 在命令行界面中可以使用env命令查看所有的环境变量 PATH环境变量是一个重要的环境变量 其指定了系统应该到什么目录中去查找可执行命令 8 目录 9 Linux命令一般格式 command options arguments options 单词或 字母 如 h和 help 如果有多个选项 可以使用一个短杠连起来 如 lsa 根据命令的不同 参数分为可选的或必须的 在查看命令帮助时 会出现 等

3、符号 它们的含义如下 表示是可选的 表示是可变化的 x y z表示只能选择一个 abc表示三个参数 或任何二个 的混合使用 10 ssh命令 ssh命令是openssh套件中的客户端连接工具 可以基于ssh加密协议实现安全的远程登录服务器 Windows平台可以使用cmder进行ssh登录 Linux平台和MacOS平台可以在终端直接输入 以下是一些常用的选项 p 指定远程服务器上的端口 11 man命令 man命令是Linux下的帮助指令 通过man指令可以查看Linux中的指令帮助 配置文件帮助和编程帮助等信息 使用翻页键可以上下翻页 按q键可以退出帮助文档 12 which命令 whic

4、h命令用于查找并显示给定命令的绝对路径 环境变量PATH中保存了查找命令时需要遍历的目录 which指令会在环境变量 PATH设置的目录里查找符合条件的文件 13 pwd命令 pwd命令以绝对路径的方式显示用户当前工作目录 第一个 表示根目录 最后一个目录是当前目录 14 ls命令 ls命令用来显示目标列表 在Linux中是使用率较高的命令 ls命令的输出信息可以进行彩色加亮显示 以区分不同类型的文件 以下是一些常用的选项 l 列出长数据串 包含文件的属性与权限数据等 a 列出全部的文件 连同隐藏文件 开头为 的文件 一起列出来 h 将文件容量以较易读的方式 GB MB KB等 列出来 15

5、cd命令 cd命令用来切换工作目录至dirname 其中dirame可为绝对路径或相对路径 若目录名称省略 则变换至使用者的家目录 另外 也表示为家目录的意思 则是表示目前所在的目录 则表示目前目录位置的上一层目录 16 mkdir命令 mkdir命令用来创建目录 该命令创建由dirname命名的目录 如果在目录名的前面没有加任何路径名 则在当前目录下创建由dirname指定的目录 如果给出了一个已经存在的路径 将会在该目录下创建一个指定的目录 在创建目录时 应保证新建的目录与它所在目录下的文件没有重名 17 cp命令 cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录 它可以将

6、单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下 以下是一些常用的选项 R或 r 递归处理 将指定目录下的所有文件与子目录一并处理 18 mv命令 mv命令用来对文件或目录重新命名 或者将文件从一个目录移到另一个目录中 19 rm命令 rm命令可以删除一个目录中的一个或多个文件或目录 也可以将某个目录及其下属的所有文件及其子目录均删除掉 以下是一些常用的选项 r或 R 递归处理 将指定目录下的所有文件与子目录一并处理 20 free命令 free命令可以显示当前系统未使用的和已使用的内存数目 还可以显示被内核使用的内存缓冲区 以下是一些常用的选项 h 以人类友好可读的单位显示

7、21 df命令 df命令用于显示磁盘分区上的可使用的磁盘空间 可以利用该命令来获取硬盘被占用了多少空间 目前还剩下多少空间等信息 以下是一些常用的选项 h 以人类友好可读的单位显示 22 top命令 top命令可以实时动态地查看系统的整体运行情况 是一个综合了多方信息监测系统性能和运行信息的实用工具 23 ncdu命令 ncdu NCursesDiskUsage 是一个基于ncurses界面的磁盘占用分析工具 ncdu的统计结果是一个交互界面 你可以使用上下键在目录之间移动 使用右键进入对应的目录 使用左键返回上一级目录 使用d键删除选中的文件或目录 也可以使用 键呼出帮助文档 24 目录 2

8、5 GPU是什么 GPU GraphicsProcessingUnit 又称图形处理器 显卡 是一种专门在个人计算机 工作站 游戏机和一些移动设备上运行图形渲染计算工作的处理器 因为深度学习计算所需的性能特性和图形渲染计算十分类似 所以近几年来GPU被大量用于深度学习训练 26 CPU与GPU的比较 CPUCPU是通用计算结构 CPU通常只有几核至几十核 CPU面对的是高度复杂 包含大量逻辑判断和跳转以及经常被中断的计算环境 CPU为高效执行代码 缓存命中和分支预测 而优化 GPUGPU是专用计算结构 GPU通常有成百上千核 GPU面对的则是类型高度统一的 相互无依赖的大规模数据和不需要被打断

9、的纯净的计算环境 GPU为大规模并行计算 浮点数运算 而优化 27 目录 28 深度学习组件层次结构 NVIDIAGPUs HostOS GPUDriver CUDAToolkit cuDNN NVIDIA是加速深度学习发展方面的先行者 多年来一直致力于开发深度学习软件 库和工具 目前的深度学习解决方案几乎完全依赖NVIDIAGPU加速计算 左图是深度学习中不同组件的依赖关系 上层组件依赖于下层组件运行 CUDAToolkit是深度学习计算库和底层驱动的连接层 起到了承上启下的关键作用 下面将逐一介绍这些组件和其安装方法 29 安装GPU驱动程序 GPU驱动程序是一个为计算机软件与硬件交互提供

10、接口的程序 可以到这里选择对应的型号和平台下载 下载完成后可以使用以下命令安装 30 查看GPU的使用情况 当GPU驱动程序安装好之后 可以使用nvidia smi命令查看GPU的使用情况 31 安装CUDA CUDA ComputeUnifiedDeviceArchitecture 统一计算架构 是由NVIDIA所推出的一种集成技术 用户可利用其接口调用GPU进行计算 CUDA仅支持8系之后的GPU 可以到这里查看CUDA设备支持列表 最新的CUDA版本为9 2 可以到这里选择对应的平台和系统进行下载 32 安装CUDA 下载完成后可以使用以下命令安装 33 安装cuDNN cuDNN CU

11、DA DeepNeuralNetworklibrary 是由NVIDIA所推出的为神经网络高度优化的GPU加速库 其支持卷积 池化 激活操作的前向和反向传播 目前最新的cuDNN版本是7 1 可以到这里下载 34 安装cuDNN 下载完成后可以使用以下命令安装 35 安装深度学习框架 这里以PyTorch框架为例 打开PyTorch官网 选择对应的平台以及Python和CUDA的版本 执行网页中给出的命令即可 36 目录 37 Docker是什么 Docker是一个开放源代码软件项目 让应用程序布署在软件容器下的工作可以自动化进行 借此在Linux操作系统上 提供一个额外的软件抽象层 以及操作

12、系统层虚拟化的自动管理机制 38 Docker的优势 快速配置环境深度学习的开发环境配置起来常常比较繁琐 对于刚刚入门者更是如此 使用Docker可以只输入1行命令快速配置好环境进行实验 一致的运行环境深度学习实验由于需要大量的计算 常常在高性能服务器上运行 使用Docker可以保证本地开发环境与服务器环境一致 确保不会出现因为环境问题导致的错误 易于迁移如果你想将你的项目发布出去 那么Docker将是一个很好的选择 因为其具有开箱即用这一优点 更加轻松的维护和拓展Docker官方维护了一系列高质量的镜像 我们自身可以在这些镜像的基础上根据自身的需要进行进一步的定制 大大降低了维护的成本 39

13、 Docker基本概念 容器 镜像 仓库 pull push run commit 镜像是静态的定义 容器是镜像的运行时实例 容器可以被创建 启动 停止 删除和暂停 仓库是镜像集中存储和分发的服务 官方仓库提供了大量的高质量镜像 Docker镜像是一个特殊的文件系统 除了提供容器运行时所需的程序 库 资源 配置等文件外 还包含了一些为运行时准备的一些配置参数 镜像不包含任何动态数据 其内容在构建之后也不会被改变 40 安装Docker Docker的安装过程可以参考这里 41 Docker的基本使用 我们可以使用dockerpull命令拉取镜像 可以使用dockerrun拉取镜像 下面是一个例

14、子 42 目录 43 NVIDIADocker是什么 由于GPU属于特殊硬件资源 在Docker中使用GPU资源十分复杂 为了解决这一问题 英伟达公司推出了NVIDIADocker使得开发者可以在Docker容器中便捷地使用NVIDIAGPU NVIDIADocker提供了一个命令行封装供用户调用 并且会自动地处理容器与GPU之间的关系 安装步骤可以参考官方的Github仓库 NVIDIAGPUs HostOS GPUDriver CUDAToolkit cuDNN DockerEngine 44 NVIDIADocker运行深度学习实验 下面是使用NVIDIADocker运行mnist手写体

15、识别深度学习实验的一个例子 nvidia dockerrun rm it ipc hostufoym deepo pytorch py36 cu90 bin bash c wget q 45 目录 46 公共数据管理 公共数据主要是指数据集 数据集一般会占据大量磁盘空间 如果没有统一的存放方式 每个人都自己存一份副本 无疑会造成服务器空间的大量浪费 因此 希望大家使用数据集时遵循以下约定 所有公共的数据集均存放在 home datasets目录下 请不要在个人目录下存放数据集 数据集文件夹的命名格式为数据集名称 版本 中间不需要任何分隔符 且英文字母统一使用小写形式 如coco2014 coc

16、o2017 cifar10和imagenet2012 这样在不同的服务器中数据集都有统一的名字 方便大家的使用 如果发现所需数据集在服务器上不存在 可以将数据集准备好移入 home datasets 注意遵循上一条中的命名规范 注意不要保留数据集的原始压缩文件以节省服务器的磁盘空间 home datasets中的数据集属于公用数据集 如果希望更改或者删除某个数据集 请联系服务器管理员 47 个人数据清理 个人数据主要包括代码 实验日志 实验模型等 其中实验日志和模型如果不及时清理会占用大量的磁盘空间 影响服务器的正常使用 请使用服务器时关注自己使用的磁盘空间 及时删除不必要的文件 可以使用 Linux常用命令 中介绍的df命令查看服务器的整体空间使用情况 如需查看个人目录占用空间 可以使用使用 Linux常用命令 中介绍的ncdu命令 ncdu的统计结果是一个交互界面 你可以使用上下键在目录之间移动 使用右键进入对应的目录 使用左键返回上一级目录 使用d键删除选中的文件或目录 也可以使用 键呼出帮助文档 48 参考资料 Linux 维基百科 自由的百科全书 https zh wikip

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 实验设计

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号