发布于: Oct 30, 2022
共享存储服务器具有无限拓展的计算和存储能力,能够完成大量的计算任务,提高系统的负载能力。EDA(Electronics Design Automation)电子设计自动化,在 EDA 的前端后端流程中,无论是前端的设计、验证、仿真、综合,或者后端的布局、布线、静态时序仿真等等,不同的任务阶段都会有大量的 Library 文件和项目数据需要共享访问;另外,无论是在数据中心还是在公有云上来运行 EDA 任务,都会是大规模的并发的 EDA 工作负载在同时运行,因此这些并发运行的任务同样需要共享访问大量的数据,例如 library、tool、userspace、tmp 目录,home 目录。
随着电子系统和集成电路变得越来越复杂,体积越来越小,对设计、测试、验证和构建这些系统的计算存储能力和基础设施的要求也显著提高,对于大规模运行的 EDA 工作负载,存储会随着大量 Job 的提交很快成为瓶颈。为了支持较高的 EDA 吞吐量(后端)与IOPS(前端) ,通常要一次性投入巨资购买传统的 SAN/NAS 存储。即使这样在某些 Job 集中提交的阶段,存储的性能依旧会成为 EDA 的瓶颈,导致作业运行时间增加并相应地抬高 EDA 许可成本。另外EDA 数据的计划内或意外增加,以及快速增长的集群访问数据的需求,都意味着存储最终会耗尽可用空间,或在网路或存储层遭遇带宽 /IO 限制。因此大规模 EDA 负载并发运行的场景下,存储的瓶颈也是上云的一个越来越强烈的驱动力。可以充分利用云计算的无限扩展的计算和存储能力,可以在无限的计算节点上并发运行大量的 EDA 任务。
由于不同的 EDA 场景会有不一样的 IO 需求,区别于通过一台专用存储来支撑各种场景,EDA 应用程序可以充分利用 Amazon Web Services 云提供的广泛存储选项,缩短大型批处理工作负载的运行时间。在 Amazon Web Services 上,有多种存储服务可以应用到 EDA 的共享存储需求,比如:共享文件存储服务EFS,托管的分布式文件服务 Lustre,块存储 EC2+EBS。
Amazon EFS 文件系统旨在实现高可用性和持久性,并且可以在大规模部署时提供高吞吐量,适用 于 IOPS 不敏感的工作负载。例如 home 目录,存放用户的脚本文件或者配置文件。
那么对于像 library/project 目录,会有大量的并发任务同时访问目录,因此在同一个命名空间内既需要满足高 IOPS 的需求,同时也需要能够满足高带宽的吞吐。那有什么方案既能在同一个命名空间下支持大容量的存储又能提供非常好的 IOPS 与吞吐?
Amazon FSx for Lustre 提供了一种经过优化的高性能文件系统,可以在短短几分钟内启动和运行这样一个文件系统,让用户可以轻松地使用高性能文件系统处理 EDA 任务,从性能上、运维上、管理上都比较好的选择,但是因为是托管的 Lustre,需要在计算节点安装 Lustre 的 client driver,官方目前只支持较高版本的 Linux 系统,大量的 EDA 用户因为 EDA 工具的原因,OS 还是停留在较低的版本,例如 Centos6.7/6.9,所以如果客户不能升级客户端操作系统版本的话,就不一定能使用 Amazon FSx for Lustre 作为 EDA 场景下的存储方案。
并行文件系统是一个选择,例如 Lustre、BeeGFS、GPFS,但是运维并行文件系统通常需要具备专业知识和投入管理资本,特别是大规模的并行文件系统,需要配置服务器并优化复杂的性能参数,在运维、调优方面带来了一定的压力。
ZFS 是一个开源的文件系统,提供存储池、读写缓存、快照、Raid-Z 等特性。通过结合 Amazon Web Services 云的 I3/I3en 系列实例类型中所提供的最高达 60T 本地实例存储、以及 25Gbps、甚至 100Gbps 的带宽,可以最大程度的发挥 ZFS 文件系统的读写缓存、存储池等特性。在实践当中,可以为 EDA 任务的 Library/Project 数据的高性能和高吞吐的需求,搭建一个可扩展的、安全的、低成本、高性能的共享文件系统。
相关文章