用于HPC和深度学习工作负载的容器技术

服务器 服务器产品
对于在深度学习和HPC领域工作的开发人员来说,容器化的好处是显著的,而无需对性能进行显著影响。显然,随着组织充分利用DL技术提供由人工智能驱动的产品和服务,容器技术将变得更加重要。

在应用程序开发领域中,容器近几年来受到了广泛的关注——原因有很多。这里简单列举几个优点:容器简化并加速了构建和隔离应用程序的过程;它们是轻量级的,而且日常管理开支较低;它们能够更加容易地实现应用程序共享和再现性,因为容器映像包括应用程序及其开发环境。

特别是在深度学习(DL)框架中,容器化的重要性正在上升。为什么?每个DL框架都有许多依赖项。每个依赖库都有特殊的版本需求,所有DL框架都经常发生变化。大多数DL框架的友好支持操作系统是Ubuntu,而数据中心部署通常是运行Red Hat Enterprise Linux/Centos。容器化有助于开发人员克服这些挑战。所有东西都打包成一个单独的包,包括所有必需的部件。

[[227809]]

用于HPC和深度学习工作负载的容器技术

有许多技术可助力实施容器化,例如Docker、LXC、LXD和Singularity等。每一种技术都有各自的优缺点,可以迎合不同的受众类型,适用于不同的用例。对于专注于HPC技术使应用程序大规模化的用户来说——例如MPI和调度器(slurm, torque),Singularity可能是一个更好的选择。另一方面,如果用例是基于微服务的扩展,那么Docker,再加上诸如Kubernetes或Docker集群之类的编排技术,可能会是更好的选择。

对于HPC和DL应用,在Singularity平台上进行容器化会有一些额外的优势。特别地,与Singularity相结合的容器化,有助于开发人员克服与编译和大规模***运行相关的挑战。它使开发人员能够通过Singularity的MPI集成能力将工作负载扩展到单个节点。随着DL数据集的规模不断扩大,这种可伸缩性将成为许多用例的需求。

Singularity是在劳伦斯伯克利国家实验室专门为HPC和DL工作负载开发的。其核心概念是,在容器启动时,用户上下文始终保持不变。这里没有守护进程。相反,Singularity是可执行的。Singularity容器在用户空间中运行,这使得用户的权限在容器内部和外部都是相同的。

在戴尔EMC HPC和AI创新实验室,研究团队将Singularit用在了一个项目中,这个项目包含了其内部用例的DL和HPC应用程序。在这个项目中,该团队发现集装箱化简化了DL在单节点和多节点配置中的构建和部署。

更重要的是,研究团队发现与裸机相比,在Singularit上的DL应用程序没有性能损失。在其基准测试中,研究团队比较了裸机运行与容器运行的对比,发现相对性能差异小于2%。

这是关键。对于在深度学习和HPC领域工作的开发人员来说,容器化的好处是显著的,而无需对性能进行显著影响。显然,随着组织充分利用DL技术提供由人工智能驱动的产品和服务,容器技术将变得更加重要。

责任编辑:武晓燕 来源: IT168
相关推荐

2017-04-04 21:06:46

深度学习硬件神经网络

2024-02-19 10:25:34

深度学习人工智能AI

2024-08-09 08:12:35

深度学习VAEsGANs

2021-11-02 11:48:39

深度学习恶意软件观察

2024-03-18 00:00:04

AIKubernetes机器学习

2022-02-21 14:14:54

戴尔

2023-08-11 15:20:54

深度学习医学成像数据

2017-10-26 13:54:49

深度学习SparkMMLSpark

2021-08-02 10:15:58

人工智能AI深度学习

2010-09-16 14:38:36

电源冷却技术

2021-12-24 17:15:25

芯片处理器RISC-V芯片

2022-02-14 10:28:02

戴尔

2021-04-01 13:53:26

深度学习大数据人工智能

2020-04-27 09:52:03

预测销售机器学习ML

2017-11-28 09:21:53

LinuxWindowsDocker

2020-09-04 12:07:43

DL

2018-08-17 07:49:01

2023-09-12 08:00:00

大数据数据管理Snowflake

2010-04-23 10:03:42

tomcat负载均衡技术

2024-02-29 16:40:38

点赞
收藏

51CTO技术栈公众号