AArch64 base image test on the Samsung ARTIK 710

Following some advice from our base-images master @nghiant2710, I was trying out the resin/aarch64-debian base image on the Samsung ARTIK 710, as opposed to the armhf version that it is deployed default. AArch64 (that is 64-bit ARM) support seems to be experimental in most distribitions, but it’s worth starting to play around a bit.

FROM resin/aarch64-debian

ENV INITSYSTEM on

RUN apt-get update && \
    apt-get install -yq --no-install-recommends \
      sysbench \
    && apt-get clean && rm -rf /var/lib/apt/lists/*

CMD while : ; do sysbench --test=cpu run --num-threads=1 ; sleep 10 ; done

The resin/artik710-debian or resin/armv7hf-debian images were the ones to test against (they are pretty much the same).

The results are as follows:

ARMv7hf

sysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 10000


Test execution summary:
total time: 175.0940s
total number of events: 10000
total time taken by event execution: 175.0733
per-request statistics:
min: 17.24ms
avg: 17.51ms
max: 57.63ms
approx. 95 percentile: 17.85ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 175.0733/0.00

AArch64

sysbench 0.4.12: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 10000


Test execution summary:
total time: 11.4019s
total number of events: 10000
total time taken by event execution: 11.3870
per-request statistics:
min: 1.06ms
avg: 1.14ms
max: 24.29ms
approx. 95 percentile: 1.16ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 11.3870/0.00

The difference is 175.1s vs 11.4s, which means the AArch64 version is about 15.4x faster than the ARMv7hf version. This would be a good enough reason to start checking out migrating to 64-bit ARM, I guess.

So far only Debian has AArch64 version on resin.io, see the caveats and listings in our docs, hopefully as distros has more experience with the architecture, there will be more choices as well!