Descartes Labs 打造了世界上速度最快的 TOP500 超级计算机之一,这也是这份榜单上第一个在虚拟化公共云资源上运行的系统。
Descartes Labs 的 Linpack Benchmark 得分为 1.926 petaflops,使用 AWS 上公开可用的云资源
早在 1998 年,Mike Warren 及其在洛斯阿拉莫斯国家实验室的同事们组装了第一个跻身世界上速度最快的超级计算机 TOP500 榜单的 Linux 集群,一年后他第二次摘得高性能计算领域的最高奖戈登·贝尔(Gordon Bell)奖。
如今,21 年后他领导 Descartes Labs 的技术团队,完成了另一个开创先河的壮举:使用公共云中的虚拟化资源,创下了新的性能基准记录,获得的运算速度(petaflops)比 2010 年世界上最快的计算机更胜一筹。
Mike 在 1998 年使用 Linux 称得上是个另类,因为榜单上另外 499 台超级计算机每一台使用五花八门的专有操作系统。他早已厌倦了在 IBM、Sun 和五六种版本的 UNIX 之间移植代码,因此 Linux 提供的硬件和软件分离这个优点得到了积极的支持。
除了可扩展性、互操作性和全球社区等其他优点外,Linux 还让 Mike 及 HPC 的其他创新者得以通过将商用 PC 组装成各自的定制超级计算机,改变游戏规则。
Mike Warren 在 1998 年展示了第一台跻身 TOP500 榜单的 Linux 超级计算机
今天,曾经的孤例现在成了事实上的标准,因为 TOP500 超级计算机榜单上的每一台都运行 Linux。采用 Linux 操作系统表明简化 HPC 应用软件的设计和部署方面迎来了巨大飞跃。过去,相关人员会购买一个特殊的 IBM 或 Cray 系统,然后很容易购买邮购的 PC 并安装 Linux,现在亚马逊及其他云提供商基本上让人们无需操心硬件部分。
由于用途一分为二:专用机器上运行的“紧密耦合”应用软件和在公共云中运行的“松散耦合”应用软件,大概 2002 年开始这个最新动向彻底颠覆了 HPC 供应商,尽管两者在底层使用实际上相同的硬件。
TOP500 榜单上的 500 台超级计算机现在全都运行 Linux
松散耦合的应用软件在拥有数万个乃至数十万个核心的公共云上成功地运行,这方面有许多知名的例子。Descartes Labs 运行众多应用,涉及药物发现、材料科学、粒子物理学以及数 PB 卫星图像的清洁和调校。
这些“大规模并行”应用本身就很惊人,但缺乏“互联”或核心到核心的低延迟网络通信,而支持大型物理模拟(比如地震处理、热力学、宇宙学和天气预报等)需要这种网络通信。这些高度互联的应用之前被认为仅适用于庞大的内部部署系统,比如橡树岭国家实验室的 Summit 超级计算机或中国的神威·太湖之光,后者用于借助一种名为“N体模拟”的技术来模拟宇宙的诞生。
2019 年考验公共云的极限
正如 Descartes Labs 团队最近在 2019 年 4 月的复活节周末展示的那样,这两条超级计算路径可能会再次开始趋于融合。使用 AWS 上公开可用的竞价资源,在运行标准的 HPC 测试:一种名为 Linpack Benchmark 的巨大矩阵反转时,达到了 1.926 petaflops 的性能。
Descartes Labs 工程团队当时的目标是使用 Linpack Benchmark 看看云的扩展性有多好。既然它能够在 TOP500 榜单上排名第 136 位,那么它应该能够为 Descartes Labs 运行全球规模的客户模型,包括为嘉吉(Cargill)和 DARPA 开发的模拟。
Descartes Labs 跻身 TOP500 榜单的超级计算机的重要细节。请注意 AWS 上的虚拟化处理器以及 Rmax Linpack 和 Rpeak 基准测试速度。
这个故事一个更值得关注的方面是,Descartes Labs 没有要求亚马逊给他们的工程师任何特殊的规格、折扣或定制规划或设置。
Descartes Labs 想看看其是否可以自行打造超级计算机,如果成功完成,这也将证明 AWS 的自助服务模式。
Descartes Labs 的团队只是遵循标准步骤来请求“放置组”(placement group),即高网络吞吐量实例块,这有点像在 AWS 基础设施中预留小型橡树岭国家实验室。
Descartes Labs 被授权访问 AWS US-East 1 区域中的一组节点,公司信用卡被扣除约 5000 美元的费用。HPC 大众化的潜力显而易见,因为以这种速度运行定制硬件的成本可能更接近 2000 万美元到 3000 万美元,更不用说一年半载的等待时间了。
Mike 认为这是“虚拟化”处理器第一次用在 TOP500 榜单上的超级计算机,不过 AWS 之前以性能只有四分之一的 0.484 petaflop 系统上榜,该系统被广泛认为在裸机硬件上运行。
Descartes Labs 的系统使用独特的技术,比如 Descartes Labs 代码与虚拟化的 AWS 英特尔 Skylake 处理器之间经过微调的虚拟机管理程序,以及 MPI 消息传递的高级使用和 Packer 工具,后者用于创建同样的机器映像,机器映像管理每个节点上的软件配置。所有这些组合起来,可能意味着 Descartes Labs 系统在 TOP500 榜单上因独特的软件类别占有一席之地。
Mike Warren 今天的愿景是让早期的 Linux 继续发扬广大。他清楚这句老话“人人知道云对紧密耦合的 HPC 来说无用。”但他认为事实根本并非如此。云绝对大有用途。它不是什么魔法,而是结合了经验、技能和创新理念。出于某种原因,其他人还没有真正尝试过云。这有点像没人知道你可以使用邮购的 PC 来组装自己的超级计算机,或者没人知道你可以使用 Linux,而不是处理 IBM 或 Cray 上交付的最新版本的 UNIX。
在 Descartes Labs 位于圣菲的总部,其团队不断调整为全球规模的地球科学项目提供服务所需的理想架构。这些项目包括大规模天气模拟、地震建模中的巨型 3D 傅里叶变换以及大气中的温室气体混合动力学。
Descartes Labs 认为,真正的 HPC 应用软件最终会大批迁移到云端。与传统超级计算机相比具有的优势很难被忽视。HPC 专业人员可能以高价购买自己的系统,或者在高度专门化的集群上租赁时段,这个集群可能使用两年前的旧版 Linux,需要更新。而在云端,它完全归你控制。可以有七个不同版本运行针对特定应用调整的不同 Linux 内核,而且管理起来很轻松。
总之,超级计算机历来被用于非常特定的用途,但云可以适用于诸多用途。HPC 的大众化正在将价位降低到公司企业可以接受的水平。