写点什么

GPU 技术大会上采访 Greg Kurtzer

  • 2017-06-25
  • 本文字数:2895 字

    阅读完需:约 9 分钟

NVIDIA 在最近结束的 GPU 技术大会(GPU Technology Conference)上有不少发布,NVIDIA 的 CEO Jensen Huang 在他的主题演讲中谈到了AI 的重生、深度学习,以及下一代GPU 的代号 Volta ,和它将解决的机器学习算法中的一些痛点。

此次大会有一个主题、多场讲座、大量海报以及 GPU 领域新手所喜闻乐见的像深度学习专家一般的上手实验室。大会的话题广泛包括从虚拟现实到最近高性能计算领域所热捧的容器等方面。

InfoQ 就 GPU 技术大会、容器以及高性能计算(HPC)采访了 Gregory M. Kurtzer,他是多个开源项目的负责人和贡献者,参与了包括 Centos, Warewulf Singularity 等项目。

InfoQ:GPU 已经发展了一段时间,容器技术也是如此。在容器中使用 GPU 技术有什么新的动向么?

Gregory M. Kurtzer:容器中使用 GPU 技术并没有什么特别“新”的动向,像“nvidia-docker”等技术已经发展了有一段时间。它已经能很好地为操作本地私有资源的科学家服务,同时它也使用了如 Docker 等技术,使得协作和可移植成为可能,但是这些技术主要受限于一般目的的高性能计算及科学计算资源。

Singularity 带来了一种新的模式。它通过支持更大量的科学用例,并专注于计算的可重现及移动化,使容器可以支持高性能计算的资源。所有这些都是 GPU 原生支持的。

InfoQ:可以看到 Docker 和容器技术正进军各个领域。容器化应用对于高性能计算也是如此么?高性能计算是否更适合归属于一个特定的分类?

Gregory M. Kurtzer:为了准确回答这个问题,我想通过区分 Docker 和容器来澄清一下。Docker 是一个容器解决方案,但是除了 Docker 还有许多其他容器解决方案。

从 Docker 的角度来看,它是企业微服务虚拟化的绝佳解决方案。由于它是专为这种用例而量身设计的,因此这正是它所擅长的。它可以用于某些形式的本地、私有科学计算,研究人员可以通过专用笔记本或工作站来访问并构建工作流,再将其推送到 DockerHub 中。但是,如果这些用户希望将其研究扩展到传统的高性能计算上就可能会陷入僵局。

有一些很有声望的倡导者支持在科学计算领域使用 Docker,特别是高性能计算领域,这引起了很多用户的困惑及问题。非常不幸的是,Docker 架构和工作流与传统的高性能计算基础架构并不兼容,每个高性能计算中心都不得不处理这并不令人满意的结果。

现在,如果您像我一样考虑到的是高性能计算应用程序的紧密耦合、高度可扩展、基于 MPI 的应用,那么使用容器就可能并不那么具有吸引力了,因为用户空间的库堆栈必须进行大量调优并对底层硬件进行专门的优化,这势必是以损失可移植性为代价的。

但是,如果考虑的是科学计算应用(通常称为“科学长尾”)以外其他大部分情况,那么这样的用例就很常见而且容易实现。

还有另一种用例正迅速地获得关注。那就是计算敏捷性,也称为计算的移动性,它让用户可以打包特定的科学工作流,并在各种主机和资源上可重复地运行。

InfoQ:您能简单介绍下 Singularity 的历史么?以及它是如何结合容器和高性能计算的?

Gregory M. Kurtzer:Singularity 是一个专注于科学计算的可重现性、移动性、敏捷性和高性能计算兼容性的容器系统。

相较于其他系统,Singularity 为了实现移动性、可重现性和敏捷性,使用单个文件作为容器镜像。将整个操作系统、环境、应用程序和将给定工作流复制的整个软件堆栈的工作流封装在这个镜像中。这样只需简单地复制单个镜像文件,就可以将容器环境从一个系统复制到另一个系统。如果需要为镜像建立分支,同样只需复制文件,如果需要共享镜像,只要设置该文件的 POSIX 权限或通过电子邮件进行发送就可以了。相反,如果在容器中有受控的数据、库或应用程序,则可以以当前限制访问的方式限制对该容器的访问。容器和其他的数据一样,只是一个文件!此外,使用单个文件可以高度优化并发及并行,特别是在高性能并行文件系统上。由于使用了 Singularity 镜像中特定类型的任务,我们在速度上获得了显著的提升。

现在,Singularity 想通过获得对传统共享高性能计算资源的支持,来区别于其他企业所关注的容器系统。高性能计算系统通常已经同时有可信任和不受信任的用户,他们通过命令行 shell 登录到系统,同样是这些用户,我们不单单只想提供容器的访问,同时还要允许他们使用自己的不受信任的容器。Singularity 允许不受信任的用户以可信任的方式运行不受信任的容器,方法是保持父进程和容器化的子进程之间的连接,这些子进程为容器中用户的 shell 限制了权限。Singularity 还可以确保容器内的用户始终与调用的用户相同。一旦这样做,我们就可以阻止任何用户在容器内增加他们的权限。

这是一个与其他企业不同的使用模式,它还能让主机直接共享资源到容器中,从而模糊了容器与主机之间的界限。同时还允许容器内的应用程序与资源管理器和现有高性能计算资源(文件系统、GPU、高性能互连等)轻松集成。

Singularity 的大量使用率直接反映了我们这些功能的必要性。在这一点上,我们正在寻找志愿者或雇佣相关人员来参与到项目中!

InfoQ:NVIDIA 提供了一个 Docker 插件以及一个利用 GPU 的可选命令行。这和 Singularity 有什么区别?

Gregory M. Kurtzer:Nvidia 的 Docker 解决方案利用了 Docker 的设计假设,即取消设备间的隔离,重新映射驱动、库及必要的数据到运行的 Docker 实例中来实现隔离。在独立系统中,该方式可以让容器与主机的 GPU 进行交互,但这并不能解决 Docker 与传统高性能计算系统不兼容的众多其他问题。

Singularity 是专门为传统的高性能计算用例而设计的,并且支持受控的软件、库和数据(例如导出控制、HIPAA、政府或商业机密)。此外,Singularity 可以轻松地模糊主机和容器之间的界限,并方便地使容器化应用原生地与主机 GPU 进行交互。

InfoQ:可以谈论下在高性能计算领域其他与 Singularity 竞争的容器平台么?当前 Singularity 社区的参与度和路线图是什么?尤其在关于 Docker 生态系统方面,比如 Kubernetes、Docker Swarm 等。

Gregory M. Kurtzer:Singularity 的竞争者不多,还没有其他的容器系统专注于使用单个镜像文件来为非 root 用户的计算提供可重现性和移动性。Singularity 抓住了这个机会。

目前,我们希望让 Kubernetes 和 Mesos 支持 Singularity。但不幸的是,这一切都还在研究层面,这些项目的主要维护者对这并不感兴趣(至少我目前看来是这样的)。所以,我们准备了一些资金,希望聘请相关开发者来进行这个工作。

就我们的路线图而言,Singularity 的独特定位是支持“可信计算”和其他需要高度信任,受控制的工作流的范例。这是我们路线图上的一大努力方向,同时还有对后台守护进程容器化的支持,以及 Singularity 处于领先地位的新概念——数据容器。

InfoQ:您在 GPU 技术大会上最大的感想是什么?您认为将来 GPU 将如何发展?

Gregory M. Kurtzer:不敢相信这次大会获得了如此多的关注!在午餐休息时我都被人群弄得晕头转向了,想象一下,在一个飞机机库大小的会场挤满了人。机器学习发展迅速,它代领 GPU 技术提升到了新水准!很欣喜看到 GPU 技术大会的壮大!

主题演讲和其他录音可以在 NVIDIA 的 on demand GTC 网站查看。

查看英文原文 Q&A with Greg Kurtzer from the GPU Technology Conference

公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2017-06-25 19:001153
用户头像

发布了 41 篇内容, 共 12.8 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

十八般武艺玩转GaussDB(DWS)性能调优:路径干预

华为云开发者联盟

数据库 sql 性能调优 GaussDB 算子

Java 异常处理

小方

Java java异常处理

大型企业引进低代码开发技术是大趋势

Sam678678

Redis 学习笔记 02:链表

架构精进之路

redis 七日更 28天写作

Serverless 在 SaaS 领域的最佳实践

Serverless Devs

Serverless 云原生 SaaS

HDFS SHELL详解(6)

罗小龙

hadoop 28天写作 hdfs shell

与前端训练营的日子 --Week11

SamGo

学习

调查bug的手段有哪些?(没有调查,就没有发言权,二)Jan 13, 2021

王泰

28天写作

每个人都拥有这项神技能

熊斌

职场成长 28天写作

Socket粘包问题终极解决方案—Netty版(2W字)!

王磊

Java socket Netty

APICloud的发展和应用

anyRTC开发者

ios android 跨平台 sdk APICloud

从美国《拜杜法案》到中国供应链体系形成的内在逻辑

JiangX

供应链 28天写作 制造

智能合约上链系统开发|智能合约上链APP软件开发

系统开发

智汇华云 | 安超OS为企业数字化转型构建坚实的云基座

华云数据

【PS】给黑白照片上色

德育处主任

PhotoShop ps 28天写作

进来抄作业:分布式系统中保证高可用性的常用经验

华为云开发者联盟

高可用 运维 设计 分布式系统 系统

低代码开发技术

Sam678678

微信视频号常见问题 | 视频号 28 天 (06)

赵新龙

28天写作

知乎问答:“既然生命无意义,为什么要活着?”

三只猫

28天写作

okhttp3 第一次使用

我就感觉到快

港股配资系统搭建

软件开发大鱼V15988750073

金融科技 港股交易系统开发 在线开户系统 CFD交易系统 港股多账户系统

实时媒体AI,打破内容创作天花板,加速视频创新

华为云开发者联盟

人工智能 云原生 媒体 视频

Android开发时的多点触控是如何实现的?

博文视点Broadview

科技赋能传统产业:工业绿色可视化—核电站工艺流程组态仿真

一只数据鲸鱼

物联网 数据可视化 组态软件 绿色工业 核电站

快抛弃你错误的坚持

石君

生活随想 28天写作

高频量化交易机器人系统开发|高频量化交易机器人APP软件开发

系统开发

开发复杂业务系统,有哪些设计思路

邴越

看图学NumPy:掌握n维数组基础知识点,看这一篇就够了

华为云开发者联盟

Python 机器学习 数组 Numpy

盘点2020| 开启小马哥的新未来

小马哥

盘点2020

跨越全场景统一架构三大挑战,MindSpore亮出“四招”

华为云开发者联盟

深度学习 联邦学习 mindspore 算子 ai框架

重学JS | 异步编程 Generator()

梁龙先森

面试 大前端 编程语言 28天写作

GPU技术大会上采访Greg Kurtzer_语言 & 开发_Rags Srinivas_InfoQ精选文章