麦斯科技 · 2021年11月21日

在Oracle云上使用Arm计算运行地震建模应用程序

https://blogs.oracle.com/cloud-infrastructure/post/running-seismic-modeling-applications-on-arm-on-oracle-cloud

Dhvani Sheth | 2021年11月12日
高级云工程师

我们每天通过手机、物联网传感器和其他设备使用基于Arm的处理器。现在,这项技术已经发展到支持数据中心和云计算。基于Arm的处理器,包括Ampere Altra,可线性扩展,提供可预测的性能,并提供最高的内核密度,所有这些都以较低的价位提供。Arm现在也被用于高性能计算应用,如天气预报、药物发现和网格管理。使用基于Arm的云计算,客户可以以更低的成本运行现有的工作负载,并构建具有优异性能的新应用程序。

在本博客中,我们将展示SPECFEM3D在Oracle云基础设施(OCI)上的性能,并将其与Amazon Web Services(AWS)进行比较。要了解更多关于为什么应该在OCI上使用Arm的信息,请参阅什么是Arm?(https://www.oracle.com/cloud/compute/arm/why-arm-processors/

SPECFEM3D Cartesian 模拟任何类型一致网格中的流体、固体、耦合 (流体 及固体)或地震波传播。它基于谱元法(SEM)模拟地震波在地震后的传播。它也可用于无损检测或海洋声学。

安装程序

OCI提供BM.Standard.A1.160基于AMPER A1 Compute Arm的标准计算机。每个OCPU对应于单个硬件执行线程,使用Ampere Altra Q80-30处理器,最大频率为3.0 GHz。

屏幕截图 2021-11-21 221951.png

我们使用此堆栈和推荐的映像之一在OCI上创建了BM.A1.160计算机的实例池。

屏幕截图 2021-11-21 220238.png

图1:计算节点选项

屏幕截图 2021-11-21 220317.png

图2:映像和附加文件系统

屏幕截图 2021-11-21 220341.png

图3:高级存储选项

有关在Oracle云上开始使用Arm实例的更多详细信息,请参阅文档。https://docs.oracle.com/en-us/iaas/Content/Compute/References/arm.htm"%20\l%20"arm.

在OCI Ampere A1上编译SPECFEM3D

我们使用了Git存储库中最新版本的SPECFEM3D Cartesian(2.0)和OpenMPI 4.1.0,以及Linux 21.0的Arm性能库和gcc编译器版本11.1.0。

# git clone --recursive https://github.com/geodynamics/specfem3d.git
# cd specfem3d
# ./configure --prefix=<directory to="" install="">
# make</directory>

在OCI Ampere A1上运行SPECFEM3D

我们使用的是EXAMPLES/meshfem3D_examples/simple_model/ folder文件夹中提供的标准模型。

对于单节点和多节点运行,我们更改benchmark的大小。修改DATA/Par_file中的NPROC变量,将NSTEP修改为5000,将DT修改为0.02d0。对于每次运行,将指定处理器数量的NPROC值修改为16。

现在更新DATA/meshfem3D_files/Mesh_Par_file,以指定每个方向上的栅格点数量,如下表所示。每个方向上网格点的数量必须可以被cores的数量整除。


# number of elements at the surface along edges of the mesh at the surface
# (must be 8 * multiple of NPROC if mesh is not regular and contains mesh doublings)
# (must be multiple of NPROC if mesh is regular)
NEX_XI = 256
NEX_ETA = 192

# number of MPI processors along xi and eta (can be different)
NPROC_XI = 4
NPROC_ETA = 4

# number of regions
NREGIONS = 4

# define the different regions of the model:
#NEX_XI_BEGIN #NEX_XI_END #NEX_ETA_BEGIN #NEX_ETA_END #NZ_BEGIN #NZ_END #material_id
1 256 1 192 1 4 1

1 256 1 192 5 5 2

1 256 1 192 6 15 3

14 100 7 57 7 10 4

OCI 结果

下图显示了在OCI的BM.Standard.A1.160上运行SPECFEM3D的结果,与AWS博客中的AWS m6g.16xlarge实例进行了比较。

屏幕截图 2021-11-21 221014.png

图4:SPECFEM3D OCI与AWS

在16–384核的范围内,与AWS相比,平均性能提高约14%。

此外,OCI的BM.Standard.A1.160每种SPECFEM3D作业比AWS(俄亥俄州的m6g.16xlarge按需定价)便宜,64–384个核的平均价格约为31%。因此,您不仅获得了更好的性能,而且降低了成本。

屏幕截图 2021-11-21 221033.png

图5:SPECFEM3D OCI与AWS价格

屏幕截图 2021-11-21 221049.png

图6:OCI与AWS在性能与成本方面的对比

虚拟机价格比较

Oracle Cloud还为Ampere的Arm处理器提供虚拟机(VM)。

屏幕截图 2021-11-21 222012.png

弹性的Shape上也提供弹性的内存。允许的内存量取决于所选OCPU的数量。记忆与OCPUs的比率取决于Shape。这些资源按每秒的粒度计费,最小计费时间为一分钟。通过选择与工作负载相匹配的Shape来优化成本。

例如,您可以通过选择较低的核内存比来配置VM以最大化计算处理能力。随着工作负载的变化修改OCPU和内存,可以通过放大来提高性能,也可以通过缩小来降低成本。

为了进行以下比较的计算,我们根据下表考虑了内存。
屏幕截图 2021-11-21 222027.png

我们可以通过减少应用程序所需的内存来进一步优化成本。

屏幕截图 2021-11-21 221112.png

图7:SPECFEM3D OCI裸金属与虚拟机价格

结论

与AWS相比,BM.Standard.A1.160的性能提高了约14%,这意味着地震建模应用程序的平均成本节约了31%。这种性能提升无疑会让您切换到BM.Standard.A1.160,从而获得当今云计算中可用的最佳性价比。要了解更多关于如何开始的信息,请查看今天如何开始您的免费30天试用。https://www.oracle.com/cloud/free/

推荐阅读
关注数
5854
内容数
525
定期发布Arm相关软件信息,微信公众号 ArmSWDevs,欢迎关注~
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息