苹果 Apple MacBook M4 效率对比

配置

硬件名称/系统名称 内存 CPU 型号 CPU 频率 Socket Core(s) Thread(s) CPU(s) 硬盘
MacBook Pro 16 M4 Max(2024年)笔记本 64G Apple M4 Max 4.51GHz 1 16 1 16 固态
Intel i7-7700H(2017年)笔记本 Linux AnolisOS 8.8 24G Intel i7-7700H 2.8GHz 1 4 2 8 固态
Intel i5-4210M(2014年)笔记本 Linux Ubuntu 22.04 16G Intel i5-4210M 2.6GHz 1 2 2 4 固态
Intel i5-10400(2020年)台式机 Windows 10 22H2 24G Intel i5-10400 2.9GHz 1 6 2 12 固态
Intel Xeon E5-2666 v3(2014年)台式机(双路)Linux Debian 12 188G Intel Xeon E5-2666 v3 2.9GHz 2 10 2 40 机械
Intel Xeon E5-2666 v3(2014年)台式机(双路)Windows 10 22H2 128G Intel Xeon E5-2666 v3 2.9GHz 2 10 2 40 固态
Intel Xeon E5-2666 v3(2014年)台式机(双路)Windows 10 22H2 系统内的 WSL Ubuntu 22.04 128G Intel Xeon E5-2666 v3 2.9GHz 2 10 2 40 固态
龙芯 3B6000(2026年)Anolis OS 23.4 台式机 32G Loongson-3B6000 2.2GHz 2 6 2 24 固态
龙芯 3A5000(2021年)Anolis OS 23.4 QEMU 虚拟机 16G Loongson-3A5000 QEMU 2.0GHz 1 8 1 8 机械
树莓派 Raspberry Pi 5(2023年)Linux Debian 12 16G Cortex-A76 2.4GHz 1 4 1 4 固态
  1. 双路:代表有两颗 CPU,这里的配置是两颗 Intel Xeon E5-2666 v3,每颗 10 核。
  2. LANG=C lscpu | grep 'Model':CPU 型号(x86 上对应 “Model name” 行)
  3. LANG=C lscpu | grep 'CPU':CPU 频率信息(MHz、max MHz、min MHz 等)
  4. LANG=C lscpu | grep 'Socket':座,代表几路
  5. LANG=C lscpu | grep 'Core(s)':每个座(路)的核数
  6. LANG=C lscpu | grep 'Thread(s)':每个核的线程数
  7. LANG=C lscpu | grep 'CPU(s)':总线程数,计算公式:Socket(s) × Core(s) per socket × Thread(s) per core = CPU(s)
  8. dmidecode -t memory:内存硬件信息(大小、类型、速率、厂商)
  9. cat /sys/block/sda/queue/rotational:0=固态硬盘,1=机械硬盘

编译 maven 项目

Nacos

  1. JDK 8:Azul Zulu 8.84.0.15
  2. maven 3.9.9
  3. maven-mvnd 1.0.2(使用的也是 maven 3.9.9)
  4. Nacos 2.5.0 标签
  5. 已排除 依赖下载 的影响
  6. 已排除 首次运行 的影响,均为多次运行后的平均值(去掉最大值最小值
  7. 执行命令
    1. mvn -V clean package -Dmaven.test.skip=true
    2. mvnd -V clean package -Dmaven.test.skip=true
  8. 龙芯 3A5000/3B6000:
    1. Loongson-3A5000,运行在 QEMU 虚拟机中(BIOS Model name: virt CPU @ 2.0GHzManufacturer: QEMU
    2. Loongson-3B6000,物理双路(Socket(s): 2,每路 6 核共 12 核,CPU(s): 24 含超线程),内存 DDR4 3200 MT/s(Hynix),
      需要降频到 2900 MT/s 才能使用
    3. 龙芯 CPU 同样使用 maven 3.9.9
    4. 龙芯 CPU 无法运行 mvnd,所以未测试
    5. 龙芯 CPU 不支持 Azul Zulu 8.84.0.15,使用的 JDK 是
      loongson8.1.27-fx-jdk8u492b09-linux-loongarch64-glibc2.34.tar.gz
    6. 龙芯 CPU 中,部分jar包无法运行,需要使用 龙芯官方 Maven 仓库,部分依赖版本还存在没有适配的情况,需要降低依赖版本:
      在 龙芯中 构建 Maven 依赖问题处理
  9. Raspberry Pi 5:
    1. 属于 arm64,虽然从 maven-mvnd 1.0.5 开始支持 arm64,但是无法在 Raspberry Pi 5 上运行
硬件名称/系统名称 maven maven-mvnd
MacBook Pro 16 M4 Max(2024年)笔记本 15秒 7秒
Intel i7-7700H(2017年)笔记本 Linux AnolisOS 8.8 30秒 11秒
Intel i5-4210M(2014年)笔记本 Linux Ubuntu 22.04 48秒 15秒
Intel i5-10400(2020年)台式机 Windows 10 22H2 38秒 18秒
Intel Xeon E5-2666 v3(2014年)台式机(双路)Linux Debian 12 29秒 11秒
Intel Xeon E5-2666 v3(2014年)台式机(双路)Windows 10 22H2 96秒 53秒
Intel Xeon E5-2666 v3(2014年)台式机(双路)Windows 10 22H2 系统内的 WSL Ubuntu 22.04 32秒 12秒
龙芯 3B6000(2026年)Anolis OS 23.4 台式机 42秒 -
龙芯 3A5000(2021年)Anolis OS 23.4 QEMU 虚拟机 45秒 -
树莓派 Raspberry Pi 5(2023年)Linux Debian 12 60秒 -