Benchmarks analysis

Benchmarks analysis

Following the first benchmarks last week, here is a deeper analysis of performance and power consumption.

The main purpose is not to measure the exact performance of the ARM64 / Snapdragon platform, it is to compare the ARM64 chipset embedded in a phone vs x86 / x86_64b setups in different tests.

Here is the link to the full set of results on: openbenchmarking.org.

 

Test platforms

  • Qualcomm SDM660 : Xiaomi Redmi Note 7 (4GB RAM + 64GB Flash), 8 (4+4) cores up to 2.2 GHz, Debian 10 (buster) for Arm64 running from internal storage (not SD card)
  • Intel i5-4690K (Everyday SW build platform) : 4 cores – 3.5/3.9GHz (No overclocking), 16 GB of DDR3, NVMe PCIe SSD 500GB (Crucial P1), Ubuntu 18.04 LTS, No external GPU for power consumption measurement
  • Intel i7-6700K (Gaming platform) : 4 cores / 8 threads – 4.0/4.2GHz (No overclocking), 16 GB of DDR4, NVMe PCIe SSD 500GB (Crucial P1), Ubuntu 18.04 LTS, No external GPU for power consumption measurement
  • VPS : The Virtual Private Server hosting this website, provided by OVH. Single x86 CPU core with 2GB of RAM. Debian 8. Actual hardware platform is unknown. (No power measurement available)
  • Raspberry PI 4 : 4GB RAM version, with cooling fan running Ubuntu Server 18.04 LTS from SD Card (Sandisk Extreme PRO 64Gb UHS-I SDXC)

Note : NVMe SSDs on PC platforms might increase the performance gap where benches can be influenced by I/O performance. Phone runs on internal storage, and Raspberry Pi uses (fast) SD Card.

The power measurement was performed at the outlet for PC platforms and using a DC power supply for the phone and raspberry Pi (see end of the post)

 

Test results

Link to the full spreadsheet

Note : the PrimeSieve test is by far the most power demanding test on all platforms. Without air cooling on the phone, there is CPU throttling, stabilizing at 8.5Watts after about 5 minutes. The 10.4 Watts is the value with lateral air flow from a fan (not directed to the front of the phone), as it is in the demo rack.

There are two scores per test:

  • Performance score, usually reflecting the time to execute the tests or the number of computations per seconds. Highest platforms will perform the test in a smaller amount of time or execute more computations per second.
  • Energy Score. This score is the amount of energy needed to complete the test or a number of computations. This score will be used to sort efficiency of platforms.

 

Platform Comparison

The first graphs show the performance of platforms:

Values are average of all tests, normalized to 1 for SDM660, the Arm64 SoC of the Xiaomi phone.

We can read this graph as : i7-6700K performs tests 3.68 times faster than the phone.

 

Values are average of all tests, normalized to 1 for SDM660, the Arm64 SoC of the Xiaomi phone.

We can read this graph as : i7-6700K platform needs 5.34 times more energy than the phone to complete the test.

 

Values are average of all tests, normalized to 1 for SDM660, the Arm64 SoC of the Xiaomi phone.

The value presented here is an efficiency indicator : ratio between time of complete the test divided by the needed energy.

We can read this graph as : i7-6700K has 69% of efficiency compared the the phone to perform a test with a given amount of energy.

Idle Power:

  • SDM660 : 1.6 Watts -> 14 kWh per Year
  • i5-4690K : 24.9 Watts -> 218 kWh per year
  • i7-6700K : 33 Watts -> 289 kWh per year
  • RPi4 : 3.48 Watts -> 30.5 kWh per year

 

Analysis

The benchmarks confirm that CPUs in modern mid-range phones can compete with x86 / x86_64 cores for some applications.

For high-end applications when very fast response is needed, high end x86_64 CPUs are more than 5 times quicker, but requiring more energy.

For all the other use cases, phone based server can compete, since they are more efficient to perform the same computing.

About VPS : We can see that a phone-based server can easily compete with VPS for website hosting, in terms of CPU and probably in terms of efficiency, with a ridiculous 1.6 Watts of power in idle mode for the phone. Of course the VPS tested here has only one CPU core and the phone SoC has 8 cores, so it will be interesting to test how many ‘virtual’ environments can be run on a phone and how it can compete with VPS.

About Raspberry Pi 4 : First, we can confirm that RPi4 can compete with low-end server for basic tasks in terms of performance. The problem with this new version of the famous board is it’s power management, as mentionned by everyone using this board. The tests were performed with a cooling fan and heat sinks on chips, but for many tests we experienced CPU throttling. The comparison with the Phone is very interesting : RPi4 is about half the computing power of the Phone, but it’s energy is about twice the phone ! So RPi4 is a decent computing platform, but actually not as efficient as phone SoCs and large x86_64 systems.

In conclusion, we can say that servers based on mid-range phones are really faster than low-end internet servers, and can compete in terms of efficiency with high-end ones when fast performance and response is not needed.

In the next steps of the project, we will build larger systems with phones and test performance for scientific applications, website hosting and other use cases.

 

 

Idle Power

Rust Prime bench running

i5-4690K Power measurement

0 Comments

Leave a reply