Benchmarker压测Coremark Score

Benchmarker压测Coremark Score

作者:MeshCloud脉时云公有云架构师吴子成

引言

PerfKit Benchmarker 围绕流行的基准测试工具提供包装器和工作负载定义。它在您选择的云提供商上实例化虚拟机,自动安装基准测试,并在无需用户交互的情况下运行工作负载。

整体架构

分别在GCP和AWS创建一台测试机用于执行Benchmarker。

目标

本文旨在对不同机型的机器压测Coremark Score,分别是GCP的n2-standard-16(CPU Ice Lake)、n2-standard-16(CPU Cascade Lake)、c2-standard-16 和 e2-standard-16(broadwell),以及AWS的c5.4xlarge和m5.4xlarge机型。

本次测试统一在法兰克福节点进行。

准备工作

本次测试分别在GCP和AWS的法兰克福节点,准备一台Ubuntu 18.04 LTS的VM实例。

将以下脚本内容写到Benchmarker.sh,并执行source Benchmarker.sh。

#!/usr/bin/env bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin:/snap/bin
export PATH
 
Install_Packages(){
  apt install software-properties-common
  add-apt-repository ppa:deadsnakes/ppa -y
  apt update
  apt install python3.9 -y
  update-alternatives –install /usr/bin/python3 python3 /usr/bin/python3.6 1
  update-alternatives –install /usr/bin/python3 python3 /usr/bin/python3.9 2
  apt install python3-venv -y
  apt install python3.9-venv -y
  apt install python-pip -y
}
 
Install_Benchmarker(){
  python3 -m venv $HOME/my_virtualenv
  source $HOME/my_virtualenv/bin/activate
  cd $HOME
  git clone https://github.com/GoogleCloudPlatform/PerfKitBenchmarker.git
  pip install –upgrade pip
  pip3 install -r $HOME/PerfKitBenchmarker/requirements.txt
  cd PerfKitBenchmarker/
}
 
echo && echo -e ” Script to install benchmarker ” && echo
 
Install_Packages
Install_Benchmarker

实施步骤

1) 在GCP测试机上执行以下命令进行压测

# test N2(icelake)

./pkb.py –cloud=GCP –benchmarks=coremark –coremark_parallelism_method=SOCKET –machine_type=n2-standard-16 –gcp_min_cpu_platform=icelake –os_type=ubuntu1804 –run_stage_iterations=5 –zone=europe-west3-b

# test N2(cascadelake)

./pkb.py –cloud=GCP –benchmarks=coremark –coremark_parallelism_method=SOCKET –machine_type=n2-standard-16 –gcp_min_cpu_platform=cascadelake –os_type=ubuntu1804 –run_stage_iterations=5 –zone=europe-west3-b

# test C2

./pkb.py –cloud=GCP –benchmarks=coremark –coremark_parallelism_method=SOCKET –machine_type=c2-standard-16 –gcp_min_cpu_platform=cascadelake –os_type=ubuntu1804 –run_stage_iterations=5 –zone=europe-west3-b

# test e2

./pkb.py –cloud=GCP –benchmarks=coremark –coremark_parallelism_method=SOCKET –machine_type=e2-standard-16 –gcp_min_cpu_platform=none –os_type=ubuntu1804 –run_stage_iterations=5 –zone=europe-west3-b

2) 在AWS测试机上执行以下命令进行压测

# test c5

./pkb.py –cloud=AWS –benchmarks=coremark –coremark_parallelism_method=SOCKET –machine_type=c5.4xlarge –run_stage_iterations=5 –zone=eu-central-1

# test m5

./pkb.py –cloud=AWS –benchmarks=coremark –coremark_parallelism_method=SOCKET –machine_type=m5.4xlarge –run_stage_iterations=5 –zone=eu-central-1

压测完成后会把日志记录到
/tmp/perfkitbenchmarker/runs/路径下。

验证

统计测试结果如下表:

Cloud ProviderMachine TypeCPU PlatformvCPUsmemoryCoremark Score
GCPn2-standard-16Ice Lake1664270026
GCPn2-standard-16Cascade Lake1664279157
GCPc2-standard-16Cascade Lake1664314178
GCPe2-standard-16broadwell1664221491
AWSc5.4xlarge1632297784
AWSm5.4xlarge1664257404

综合考虑机型的推荐用途,可以得到性能对比结果:

  • 成本优化实例:e2-standard-16得分最低
  • 通用实例:n2-standard-16 > m5.4xlarge
  • 计算优化实例:c2-standard-16 > c5.4xlarge

当然,用Benchmarker压测Coremark Score只是单一基准的性能测试结果,仅作为参考。

补充

Benchmarker还支持哪些基准测试?

常用的还有fio、gpu_pcie_bandwidth、iperf等,更多基准测试可以参考:

https://github.com/GoogleCloudPlatform/PerfKitBenchmarker

发表评论

您的电子邮箱地址不会被公开。