某ARM服务器与X86服务器简单性能对比
目录
一. 概述... 2
二. 服务器基本硬件资料:... 2
三. CPU 测试... 3
四. 内存测试... 3
五. 网卡测试... 3
六. 硬盘测试... 4
七. 工具适配测试... 4
八. 磁盘相关的命令测试... 4
- 概述
本轮测试涵盖CPU、内存、磁盘、网卡读写,以及常用磁盘信息获取命令,FIO和iperf工具适配等。
性能测试以x86服务器(x86-A服务器、x86-B服务器)作对比,简单测试某ARM服务器的CPU、内存、网卡和SAS盘读写性能。
因服务器之间配置差异比较大,所得数据不应硬性比较,仅供产品适配作为参考。
测试结果简述如下,详细数据见后附章节。
某ARM CPU运算时间是x86-A服务器的近两倍。
某ARM内存读写速度是x86-A服务器的约二分之一。
某ARM服务器安装Intel万兆网卡之后,带宽最高3.14Gib/Sec。
某ARM服务器插900G SAS盘,读写速度略逊于x86-B服务器。
FIO、iperf工具官网提供适配Ubuntu的安装包,验证安装和执行通过。
某ARM的OS缺失个别常用命令、工具,如sgdisk,vgc-monitor。Storcli没有找到Ubuntu的64位安装包。
- 服务器基本硬件资料:
某ARM服务器
服务器 | 192.168.xxx.xxx |
操作系统 | Kylin 4.0.2, Codename:juniper |
CPU | phytium FT-1500A @1.5GHz,16核,1 颗 逻辑CPU 16颗 |
系统内存 | 当前32 GB, DDR3 ECC 内存,支持扩展到64 GB |
万兆网卡 | Intel Corporation Ethernet 10G 2P X520 Adapter (rev 01) |
待测磁盘 | SAS |
x86-A服务器
服务器 | 192.168.xxx.xxx |
操作系统 | Cent OS |
CPU | Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz, 8核,2颗 逻辑CPU 32颗 |
系统内存 | 132 GB,DDR4 |
x86-B服务器
服务器 | 192.168.xxx.xxx |
操作系统 | Cent OS |
CPU | Intel(R) Xeon(R) Silver 4110 CPU @ 2.10GHz,8核, 2颗 逻辑CPU 32颗 |
系统内存 | 132 GB,DDR4 |
万兆网卡 | Intel(R) 82599 10 Gigabit Dual Port Network Connection (rev 01) |
待测磁盘 | SAS |
- CPU 测试
测试方法:执行命令 time echo "scale=5000; 4*a(1)" | bc -l –q ,查看运算圆周率所需时间。
测试结果:某ARM服务器耗时是x86-A的两倍以上。详细数据如下。
某ARM:
第一次 | 第二次 | 第三次 | 平均 |
real 0m53.462s user 0m53.460s sys 0m0.000s | real 0m54.238s user 0m54.236s sys 0m0.000s | real 0m53.671s user 0m53.668s sys 0m0.000s | real 0m53.79s user 0m53.788s sys 0m0,000s |
x86-A:
第一次 | 第二次 | 第三次 | 平均 |
real 0m25.019s user 0m24.978s sys 0m0.023s | real 0m26.048s user 0m25.741s sys 0m0.280s | real 0m25.134s user 0m25.106s sys 0m0.013s | real 0m25.4s user 0m25.275s sys 0m0.316s |
- 内存测试
测试方法:mount tmpfs之后,读写挂载的目录,得到一个RAM读写近似值。
测试结果:x86-A的读写速度是某ARM服务器的近二倍。详细数据如下。
某ARM | x86-A |
读:1.8 GB/s 写:1.2 GB/s | 读:3.6 GB/s 写:2.0 GB/s |
- 网卡测试
测试方法:为某ARM服务器安装万兆网卡之后,配置IP之后,使用iperf进行测试。
测试结果:x8卡槽插万兆网卡,带宽都达到预期。测速数据如下。
Intel万兆网卡 | Chelsio 万兆网卡 | x86-B服务器与Intel万兆网卡 |
9.43 Gbits/sec | 9.42 Gbits/sec | 9.44 Gbits/sec |
- 硬盘测试
采用dd和hdparm命令测试磁盘的读写速度。总体测试结果显示,某ARM对SAS盘的读写性能略逊于x86-B。
测试方法1:dd读写SAS盘,设置iflag/oflag=direct直接读写磁盘,不经过缓存。
测试结果某ARM的读写速度略逊于x86-B。详细数据如下。
某ARM | x86-B |
读:215MB/s 写:202MB/s | 读:242 MB/s 写:242 MB/s |
测试方法2:dd读写SAS盘,设置conv=fsync,所有操作一次性读写硬盘。
测试结果和数据如下:
某ARM | x86-B |
读:201MB/s 写:175MB/s | 读:237 MB/s 写:202 MB/s |
测试方法3:hdparm测试磁盘读取速度。
Timing cached reads:不存取磁盘直接从Linux缓存读取数据的速度。
Timing buffered disk reads:不使用预先的数据缓冲, 没有任何文件系统开销时磁盘支持的连续数据读取速度。
测试结果和数据如下。
某ARM | x86-B |
Timing cached reads: 2900.59 MB/sec Timing buffered disk reads: 195.80 MB/sec | Timing cached reads: 8440.69 MB/sec Timing buffered disk reads: 233.09 MB/sec |
- 工具适配测试
Fio:支持从官网下载并安装使用。验证了工具安装和随机读的测试命令,验证通过。
Iperf:Iperf官方提供ubuntu arm的deb包,可以直接下载安装。验证了工具安装和网卡性能测试。
- 磁盘相关的命令测试
基本命令。
命令 | 具体参数 | 结果 |
df | df –lh; df –l | Pass |
fdisk | fdisk –l; fdisk /dev/sdb (格式化磁盘) | Pass |
cfdisk | cfdisk –Ps; cfdisk –Ps /dev/sdb (没有实际操作) | Pass |
lsblk |
| Pass |
parted | parted /dev/sdb (磁盘分区) | Pass |
sgdisk | sgdisk /dev/sdb | 没有该命令 |
dd | dd if=/dev/sdb of=/dev/null bs=1M count=10240 iflag=direct; dd if=/dev/zero of=/dev/sdb bs=1M count=10240 oflag=direct | Pass |
部分常用命令。
命令 | 结果 |
lsblk -ln 2>/dev/null | awk '{if($6=="disk") print $1}' | grep -E '[hsv]d[a-z]|vgca[0-9]|nvme[0-9]' | Pass |
grep . /sys/block/sd?/queue/rotational | Pass |
lsblk -o NAME,TYPE,MOUNTPOINT | awk '{ if (NR > 1) { if ($2 == "disk") { disk[$1]=($3 == ""); lastdisk=$1;} else { if ($3 != "") disk[lastdisk]=0; } } } END { for (k in disk) print k,disk[k];}' | grep -E '[hsv]d[a-z]|vgc[a-z][0-9]|nvme[0-9]' | Pass |
smartctl –a (-i, -H)/dev/sdb | RAID,不适配 |
smartctl -a /dev/sdb -d scsi | RAID,不适配 |
hdparm -I -C /dev/sdb | Pass |
vgc-monitor -d /dev/sda | 没有该命令 |
Storcli | 没有Ubuntu 64位安装包 |