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。
我们使用此堆栈和推荐的映像之一在OCI上创建了BM.A1.160计算机的实例池。
图1:计算节点选项
图2:映像和附加文件系统
图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实例进行了比较。
图4:SPECFEM3D OCI与AWS
在16–384核的范围内,与AWS相比,平均性能提高约14%。
此外,OCI的BM.Standard.A1.160每种SPECFEM3D作业比AWS(俄亥俄州的m6g.16xlarge按需定价)便宜,64–384个核的平均价格约为31%。因此,您不仅获得了更好的性能,而且降低了成本。
图5:SPECFEM3D OCI与AWS价格
图6:OCI与AWS在性能与成本方面的对比
虚拟机价格比较
Oracle Cloud还为Ampere的Arm处理器提供虚拟机(VM)。
弹性的Shape上也提供弹性的内存。允许的内存量取决于所选OCPU的数量。记忆与OCPUs的比率取决于Shape。这些资源按每秒的粒度计费,最小计费时间为一分钟。通过选择与工作负载相匹配的Shape来优化成本。
例如,您可以通过选择较低的核内存比来配置VM以最大化计算处理能力。随着工作负载的变化修改OCPU和内存,可以通过放大来提高性能,也可以通过缩小来降低成本。
为了进行以下比较的计算,我们根据下表考虑了内存。
我们可以通过减少应用程序所需的内存来进一步优化成本。
图7:SPECFEM3D OCI裸金属与虚拟机价格
结论
与AWS相比,BM.Standard.A1.160的性能提高了约14%,这意味着地震建模应用程序的平均成本节约了31%。这种性能提升无疑会让您切换到BM.Standard.A1.160,从而获得当今云计算中可用的最佳性价比。要了解更多关于如何开始的信息,请查看今天如何开始您的免费30天试用。https://www.oracle.com/cloud/free/