【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

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

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2017-06-25 19:001165
用户头像

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

关注

评论

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

深圳各大知名办公园区引进 GoWork 智能楼宇管理系统,开启商业地产行业的春天

Geek_116789

读笔 | 听说你也想辞职去摆摊?何不先收下这份秘籍

张鸱鸺

读书笔记 摆地摊 社会话题

就餐卡系统设计

烟雨濛濛

极客大学架构师训练营

作业二:根据当周学习情况,完成一篇学习总结

LN

推荐几款基于 Markdown 语法在线制作简历的平台

JackTian

GitHub 网站 markdown 简历 工具软件

Fabric的6大特性

程序那些事

区块链 blockchain 区块链技术 hyperledger fabric

极客时间 - 架构师训练营 - week1 - 课堂笔记

毛聪

极客大学架构师训练营

架构师训练营第一周学习总结

烟雨濛濛

架构师训练营 - 第一周 - 学习总结

韩挺

第一周练习1 食堂就餐卡系统设计

王鑫龙

极客大学架构师训练营

架构师训练营第一周命题作业

兔狲

食堂就餐卡系统架构设计文档

竹森先生

极客大学 架构设计 极客大学架构师训练营

架构师训练营第一周总结

Linuxer

极客大学架构师训练营

作业一:食堂就餐卡系统设计

LN

【架构师训练营】第1周作业2—学习总结

花生无翼

Hyperledger Fabric基础知识

程序那些事

区块链 以太坊 超级账本 hyperledger fabric

分布式账本简介

程序那些事

区块链 分布式系统 区块链技术 hyperledger fabric

【架构师训练营】第 1 周作业1—食堂就餐卡系统设计

花生无翼

极客大学架构师训练营

标题

lai

PostgreSQL权限控制

唯爱

怎样才能像月「睡后收入」 20 万的独立开发者一样挣钱?

非著名程序员

程序员 独立开发者 程序人生 提升认知

架构师训练营 - 第一周 - 食堂就餐卡系统设计

韩挺

如何使用UML做需求分析与系统架构

JefferLiu

UML 架构文档

食堂就餐卡系统设计

戴维斯

S型曲线 - 第二曲线

石云升

创新 增长 S型理论 第二曲线 破坏式创新

开启“观察者模式”,跳出灵魂看自己

小天同学

日常思考 个人感悟

IT自由职业者是怎么样的感受和体验

奈学教育

IT

IT自由职业者是怎么样的感受和体验

古月木易

IT职场

数据结构与算法之数组链表

shirley

数组 链表

架构师训练营第一周总结

极客大学架构师训练营

食堂就餐卡系统设计

TiK

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