June 27, 2018

Nitrogen8M – Android Benchmark

Since the Nitrogen8M leverages the new NXP i.MX8MQ processor we thought providing a benchmark would be useful for those unfamiliar with the new CPU features. For this  exercise we settled on AnTuTu Benchmark on Android. 

Benchmark 

When it comes to benchmarking, many options are available from using a custom-made app for a specific purpose to a well-known standard application.

Since we want those figures to easily be understood and reproducible, we chose to run the infamous AnTuTu Benchmark on Android.

AnTuTu

Software Setup

  • AnTuTu v6.2.7
  • Android 7.1.1 for Nitrogen6_MAX platforms
  • Android 8.1.0 for Nitrogen8M

Hardware Setup

  1. Nitrogen6_MAX i.MX6 Quad (4GB of RAM)
  2. Nitrogen6_MAX i.MX6 QuadPlus (4GB of RAM)
  3. Nitrogen8M i.MX8 MQuad (2GB of RAM)

The benchmark was run on each platform on two different displays setup to see if there was a difference in the results:

Benchmark Results

For those who haven’t run AnTuTu on a platform, here is what the final output looks like:

antutu_8m_1280x800_gles31

It contains 4 different categories:

  • 3D: GPU stress testing
  • UX: User experience performances
  • CPU: Computation stress testing
  • RAM: Access speeds, random reads etc…

Disclaimer: each run of the benchmark gives slightly different results so don’t be surprised if you run it on your side and have another figure. However, the overall delta in performance between each platform stays the same.

Overall Results

Without further ado, here are the overall results of the tests:

Overall Results

First observation is that Nitrogen8M clearly outperforms our previous Nitrogen6_MAX platforms.

But some background on the above graph must be provided. Indeed, you can see two different sets of results for each display setup:

  • 1 default = stock Android image without any modification
  • 1 ES 2.0 = where the OpenGL ES version was fixed to 2.0 (ro.opengles.version)

The reason behind that distinction is that you can see that by default the i.MX6QuadPlus version has the same score as the i.MX6Quad.

Indeed the i.MX6QuadPlus GPU (GC3000) supports OpenGL ES 3.0 whereas i.MX6Quad GPU (GC2000) is limited to OpenGL ES 2.0.

Since AnTuTu adapts its GPU tests to the supported OpenGL ES version, comparing ES 3.0 results to ES 2.0 one wasn’t exactly fair. Once we limit all the GPU to ES 2.0, we can see the i.MX6Quad Plus bump in performance.

3D GPU Results

As explained in the previous sections, GPU results will be separated for OpenGL ES 2.0 and 3.x (FYI, i.MX8M support ES 3.1).

bench_3d_1920x1080

bench_3d_1280x800

The above results gives us the following information:

  • When using OpenGL ES 2.0:
    • GC7000L (i.MX8MQ) is twice as good as GC2000 (i.MX6Q)
    • GC7000L is about 25% better than GC3000 (i.MX6QP)
  • When using Open GL ES 3.0:
    • GC7000L is still about 25% better than GC3000

UX / CPU / RAM Results

Since the scale of results seemed close for all those results, they were brought on the same chart:

bench_ux_cpu_ram

As a quick analysis, the CPU improvement can easily be explained since the i.MX8MQ is a 64-bit 4*Cortex-A53 cores running @1.5GHz, it only makes sense that it is much better than the previous 32-bit 4*Cortex-A9 @1GHz.

Same goes for the RAM, the Nitrogen8M uses LPDDR4 at higher frequency than the i.MX6 platforms using DDR3.

All those improvements logically improve the UX total score.

 

As usual, feel free to comment in the section below!