在线查询网站开发语言,烟台做网站哪家好,wordpress直链视频,关键词优化搜索引擎最近给公司搭建了一个小型的深度学习环境#xff0c;实现了多人通过SSH对GPU资源的利用#xff0c;下面对一些关键架构和易用性部分进行记录。
一、整体软硬件框架 1、硬件配置#xff0c;采用的双GPU的方案#xff0c;两块消费级显卡。 2、应用层架构 宿主机系统为ubunt…最近给公司搭建了一个小型的深度学习环境实现了多人通过SSH对GPU资源的利用下面对一些关键架构和易用性部分进行记录。
一、整体软硬件框架 1、硬件配置采用的双GPU的方案两块消费级显卡。 2、应用层架构 宿主机系统为ubuntu22 采用sshdocker路径映射的形式docker的容器主要提供训练相关环境实际的代码保存在训练服务器的硬盘上通过服务器本身的网络与Gitlab同步数据部分也挂载到训练服务硬盘上。数据和代码路径一同映射到容器中。 数据服务器是只读的做存档之用需要copy到训练服务器上进行处理和训练加载。
二、GPU框架 这里套用Nvidia的图 在宿主机中安装gpu的drivernvidia-container-toolkit。在容器中安装cuda-toolkit。
三、docker的几个易用性 1、初始环境获取。 我使用的是阿里云提供的初始镜像。https://cr.console.aliyun.com/cn-hangzhou/instances/artifact 按需选择即可我这里选用了ubuntu22py310pytorch23cu12的镜像 2、镜像的保存与导入。
#1、导出
docker export container_id /path/to/save/container.tar
#2、导入
docker import - newImage /path/to/save/container.tar3、完成初始环境后有几个易用性可进行配置 1)、ssh开机启动 2)、宿主机与容器之间的路径映射 3)、ssh的端口映射 4)、容器中的时间配置成和宿主机一样(非实时同步
其中1)需要在容器内配置完再保存成镜像后重新载入。 2)和3)需要在创建容器时执行。 4)可以在容器运行时执行。 2)3)4)相关指令如下
docker run -p 2024:22 -it --gpus all -v /home/user/workspace:/home/workspace imageName /bin/bash
# 将ssh的端口映射到2024
# 在该容器中使用全部的gpu资源
# 将宿主机user的workspace映射到容器中的workspacedocker cp /usr/share/zoneinfo/Asia/Shanghai ContainerID:/usr/share/zoneinfo/Asia/Shanghai
docker cp /etc/localtime ContainerID:/etc/localtime
# 将宿主机的时区信息copy到容器中
# 将宿主机的当前时间信息copy到容器中三、总结 硬件虚拟化的基本步骤是一样的一层是基本硬件驱动一层是虚拟化管理。 对于深度学习环境而言有两大部分需要完成上述管理简单划分为CPU和GPU其中CPU又包含了内存和硬盘等。 两者都有其对应的工具简单画图示意下