QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

适用于紧密耦合的 HPC 工作负载的 Elastic Fabric Adapter (EFA)

  • 2019-10-01
  • 本文字数:2103 字

    阅读完需:约 7 分钟

适用于紧密耦合的 HPC 工作负载的 Elastic Fabric Adapter (EFA)

在 re:Invent 2018 上,我们发布了 Elastic Fabric Adapter (EFA) 并在当时以预览版形式推出。预览期间,AWS 客户在各种紧密耦合的 HPC 工作负载上对 EFA 进行了测试,为我们提供了有价值的反馈并帮助我们对最终产品进行了优化。

现已推出

今天我很高兴地宣布,EFA 现已准备好在多个 AWS 区域进行生产使用。它可以支持那些要求具有比传统 TCP 通信更低、更一致的网络延迟以及更高吞吐量的严苛型 HPC 工作负载。通过此次发布,您可以将 AWS 云的规模、灵活性和弹性应用于紧密耦合的 HPC 应用程序,而我也迫不及待地想要了解您使用它做了什么。例如,您可以扩展到数千个计算节点,而无需提前预留硬件或网络。


关于 EFA


Elastic Fabric Adapter 是一个具有更多功能的 AWS Elastic Network Adapter (ENA)(阅读我的文章 Elastic Network Adapter – Amazon EC2 的高性能网络接口,了解有关 ENA 的更多信息)。EFA 仍然可以处理 IP 流量,但也支持通常称为 OS 旁路的重要访问模型。使用此模型,应用程序(最常见的是通过一些用户空间中间件)可以访问网络接口,而无需让操作系统参与每条消息。这样做可以减少开销并使应用程序更有效地运行。其具体情况如此处所示(来源):



这块蛋糕的 MPI 实施和 libfabric 层起着至关重要的作用:


MPI – 作为“消息传递接口”的缩写,MPI 是一种历史悠久、旨在支持并行编程的通信协议。利用它所提供的功能,在一组紧密耦合的计算机上运行的进程可以采用与语言无关的方式进行通信。


libfabric – 此库适用于几种不同类型的网络结构提供程序(包括 EFA)和 MPI 等更高级别的库。EFA 支持标准 RDM(可靠数据报)和 DGRM(不可靠数据报)终端节点类型;要了解更多信息,请查看 libfabric 程序员手册。EFA 还支持我们称之为 Scalable Reliable Datagram 的新协议;该协议旨在在 AWS 网络中工作,并在我们的 Nitro 芯片中实施。


通过协同工作,这两个层(以及可以代替 MPI 插入的其他层)允许您将现有 HPC 代码带到 AWS 并在几乎不做任何更改的情况下运行它。


您今天可以在所有 AWS 区域的 c5n.18xlarge 和 p3dn.24xlarge 实例(只要这些实例可用)上使用 EFA。这些实例可以使用 EFA 在 VPC 子网内进行通信,而安全组必须具有允许安全组内的所有流量流动的入口和出口规则。每个实例都可以有一个 EFA,它可以在启动实例或停止实例时进行挂载。


您还需要以下软件组件:


EFA 内核模块 – EFA 驱动程序位于 Amazon GitHub 存储库以及 Amazon Linux 和 Amazon Linux 2 AMI 中。我们正在将其添加到其他 Linux 发行版的 AMI 中。


Libfabric 网络堆栈 – 您现在需要使用 AWS 自定义版本(在 Amazon Linux 和 Amazon Linux 2 AMI 中已存在)。我们正在将我们的更改纳入 libfabric 的下一版本 (1.8) 中。


MPI 或 NCCL 实施 – 您可以使用 Open MPI 3.1.3(或更高版本)或 NCCL(2.3.8 或更高版本)以及适用于 NCCL 的 OFI 驱动程序。我们还打算支持 Intel MPI 库。


您可以使用 CLI、API 或 EC2 控制台以及将在几周内推出的 CloudFormation 支持启动实例并挂载 EFA。如果您使用 CLI,则需要包含子网 ID 并要求提供 EFA,如下所示(确保包含相应的安全组):


$ aws ec2 run-instances ... \  --network-interfaces DeleteOnTermination=true,DeviceIndex=0,SubnetId=SUBNET,InterfaceType=efa
复制代码


实例启动之后,请运行 lspci | grep efa0 以验证 EFA 设备是否已挂载。您可以(但并非必须)在集群置放群组中启动实例,以便在每个轻脚都很重要的情况下从物理邻接中受益。在以这种方式使用时,EFA 可以提供 15.5 微秒的单向 MPI 延迟。


您也可以创建一个启动模板,然后使用它以按需或 Spot 形式启动 EC2 实例(直接或作为 EC2 Auto Scaling 组的一部分)、启动 Spot 队列,以及在 AWS Batch 上运行计算作业。


了解更多


要了解有关 EFA 的更多信息,并查看其他一些基准测试,请务必观看此 re:Invent 视频:(在具有 Elastic Fabric Adapter 的 EC2 上扩展 HPC 应用程序):



AWS 客户 CFD Direct 维护适用于计算流体动力学 (CFD) 的热门 OpenFOAM 平台,并且还生产 CFD Direct From the Cloud (CFDDC),后者是一款让您可以轻松地在 AWS 上运行 OpenFOAM 的 AWS Marketplace 产品。他们一直在对 EFA 进行测试和基准测试,并在最近一篇标题为采用 AWS EFA 的 OpenFOAM HPC 的博文中分享了他们的测量结果。在文章中,他们报告了一对模拟:


汽车周围的外部空气动力学 – 这个模拟超线性扩展到 200 多个内核,逐渐下降到 1000 个内核的线性扩展(每个内核大约 10 万个模拟单元)。


在具有水跃的堰上流动 – 根据“数据写入”设置,这个模拟(1000 个核心和 1 亿个单元)的比例在 67% 和 72.6% 之间。


阅读完整文章,了解更多信息并查看一些图表和可视化。

工作过程

我们计划以后为其他 EC2 实例类型添加 EFA 支持。一般情况下,我们计划为任何给定类型的两个最大尺寸为“n”的实例以及裸机实例提供 EFA 支持。


作者介绍:


Jeff Barr


AWS 首席布道师; 2004 年开始发布博客,此后便笔耕不辍。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/now-available-elastic-fabric-adapter-efa-for-tightly-coupled-hpc-workloads/


2019-10-01 18:161097
用户头像

发布了 1856 篇内容, 共 129.0 次阅读, 收获喜欢 81 次。

关注

评论

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

百分点大数据技术团队:数据治理“PAI”实施方法论

百分点大数据团队

AI数学基础之:概率和上帝视角

程序那些事

人工智能 AI 程序那些事 概率论

Shibboleth IdP4 升级指南

冯骐

认证 Shibboleth IdP 上海教育认证 上海教育

SQL Server 删除正在使用数据库

田镇珲

报名 | 全球首个小资源音色克隆赛结果出炉,高分队伍线上报告会

爱奇艺技术产品团队

Java的锁

并发编程

云小课丨网络好不好,ping一下就知道

华为云开发者联盟

网络 虚拟私有云 ping ICMP 安全组

2021 创新加速周蓄势待发,铆足牛劲再出发!

亚马逊云科技 (Amazon Web Services)

一个简单实用的Linux性能分析工具

运维研习社

Linux 性能分析

力扣(LeetCode)刷题,简单+中等题(第32期)

不脱发的程序猿

算法 LeetCode 编程能力 28天写作 3月日更

金三银四如何突击面试美团?面试题(含答案)+学习笔记+电子书籍+学习视频

比伯

Java 编程 架构 面试 程序人生

Elasticsearch Analyzer 分词器

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

《精通比特币》学习笔记(第二章)

棉花糖

区块链 读书笔记

25个关键技术点,带你熟悉Python

华为云开发者联盟

Python

百分点数据科学实验室:产品生命周期管理创新应用落地实践

百分点大数据团队

KubeEdge 1.6发布:可靠的K8s原生边云API

华为云原生团队

开源 云原生 边缘技术 kubeedge

智汇华云 | ArcherOS Stack—软件定义数据中心“利器”

华云数据

详解NLP和时序预测的相似性(附赠AAAI21最佳论文INFORMER的详细解析)

华为云开发者联盟

自然语言处理 深度学习 时序预测 RNN Informer

百亿级流量的百度搜索中台,是怎么做可观测性建设的?

百度Geek说

中台 云原生 #百度#

华云大咖说 | 高校混合云建设及应用

华云数据

互联网短平快下,DevCloud如何支撑软件开发的“转型”?

华为云开发者联盟

android 敏捷开发 软件开发 华为云 devcloud

工作中,有哪些SQL是我们必须要掌握的?

xiezhr

oracle sql SQL语法 3月日更

MySQL数据库DDL、DML详解

若尘

MySQL

Kubectl Plugin 推荐(一)| 可观测性篇

郭旭东

kubectl kubectl plugin

人民网:亚马逊云科技,以这样姿势扎根中国!

亚马逊云科技 (Amazon Web Services)

是什么支持“毅力号”在火星上尽情摄影?

亚马逊云科技 (Amazon Web Services)

【LeetCode】用栈实现队列Java题解

Albert

算法 LeetCode 28天写作

不知不觉不假思索——可供性

Justin

心理学 28天写作 游戏设计

笔记整理:技术架构涵盖内容和演变过程总结

小傅哥

Java 程序员 小傅哥 架构设计 架构图

滚雪球学 Python 第二轮开启,进阶之路,列表与元组那些事儿

梦想橡皮擦

28天写作 3月日更

建信金科大咖访谈:金融科技驱动业务创新,智慧运营引领发展转型

金科优源汇

适用于紧密耦合的 HPC 工作负载的 Elastic Fabric Adapter (EFA)_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章