写点什么

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

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

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

关注

评论

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

自助洗车机洗车怎么收费和付费

共享电单车厂家

自助洗车加盟 自助洗车收费 自助洗车付费

APISIX 助力中东社交软件,实现本地化部署

API7.ai 技术团队

API网关 社交软件 APISIX Summit

7 月亚马逊云科技培训与认证课程,精彩不容错过!

亚马逊云科技 (Amazon Web Services)

架构师 培训 认证

首批 | 腾讯云完成国内首个云原生安全成熟度评估

腾讯安全云鼎实验室

云原生

低代码开发:企业应用构建新模式

力软低代码开发平台

24H共享便民自助洗车加盟怎么样

共享电单车厂家

共享自助洗车 自助洗车加盟 24小时自助洗车 便民自助洗车

Apache Dolphinscheduler3.0.0-beta-1 版本发布,新增FlinkSQL、Zeppelin任务类型

白鲸开源

Apache 大数据 开源 Apache DolphinScheduler 消息队列 workflow

SQL和Python 哪个更容易自学?

Jackpop

SRE,了解一下?35+岁程序员新选择

华为云开发者联盟

SRE 华为云

“互联网+”大学生创新创业大赛来了,欢迎报名龙蜥社区赛题!

OpenAnolis小助手

开源 操作系统 互联网+ 龙蜥社区 大学生创新创业大赛

vue-表单输入绑定

小恺

6月月更

使用 Amazon EC2 降低 DeepRacer 的训练成本 DeepRacer-for-cloud 的实践操作

亚马逊云科技 (Amazon Web Services)

Amazon EC2 EC2

大数据平台迁移实践 | Apache DolphinScheduler 在当贝大数据环境中的应用

白鲸开源

Apache 大数据 开源 DolphinScheduler workflow

融云 x 川航: 为民航通信安上“即时之翼”

融云 RongCloud

Jupyter Notebook,太强大了!

Jackpop

要想自助洗车加盟赚钱记住这几点

共享电单车厂家

自助洗车加盟 自助洗车品牌

Curve 进入 CNCF Sandbox,完善统一云原生开源存储拼图

网易数帆

开源 分布式 云原生 存储 cncf

自助洗车市场悄然兴起你准备好了吗

共享电单车厂家

自助洗车 自助洗车加盟

瀑布式项目管理软件测评!

爱吃小舅的鱼

写代码过程中最忌讳什么?

Jackpop

共享自助洗车机让你告别传统洗车

共享电单车厂家

共享自助洗车 自助洗车加盟

FutureTask

急需上岸的小谢

6月月更

API 网关 Apache APISIX 助力雪球双活架构演进

API7.ai 技术团队

zookeeper 投资 网关 APISIX APISIX Summit

华为云重磅发布:“乐高式”自动驾驶研发开放平台,携手伙伴共建生态

华为云开发者联盟

自动驾驶 云计算 华为云

JDK7 HashMap如何实现?

源字节1号

软件开发 前端开发 后端开发 小程序开发

开启全方位安全巡检

观测云

测试进阶必备,这5款http接口自动化测试工具不要太香~

伤心的辣条

Python 程序人生 软件测试 自动化测试 接口自动化测试

@开发者 云端一条生产线,让软件开发更敏捷、更安全

华为云开发者联盟

云计算 敏捷 华为云 devcloud

阿里云 MSE 基于 Apache APISIX 的全链路灰度方案实践

API7.ai 技术团队

阿里云 MSE APISIX 网关 全链路灰度

10段实用Python代码,帮我省了几万块钱!

Jackpop

如何系统地学习 C++ 语言?太全面了!

Jackpop

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