S912 limited to 1200 MHz with multithreaded loads

Another very simple test: openssl speed -elapsed -evp aes-128-cbc

These are the results of other Cortex-A53 with ARMv8 Crypto Extensions. Single threaded operation:

type              16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
H6 / 1.8 GHz     226657.97k   606014.83k  1013054.98k  1259576.66k  1355773.27k
S5P6818/1.6 GHz  200591.68k   538595.61k   900359.25k  1115728.97k  1204936.70k
RK3328/1.3 GHz   163161.40k   436259.80k   729289.90k   906723.33k   975929.34k
A64 / 1152 MHz   144995.37k   387488.51k   648090.20k   805775.36k   867464.53k

Given S912 is clocking on the little cores with 1.0 GHz and on the big ones with 1.5 GHz the two following lines should show results below A64 (little) and between S5P6818 and H6 (big):

taskset -c 3 openssl speed -elapsed -evp aes-128-cbc
taskset -c 7 openssl speed -elapsed -evp aes-128-cbc

And to see what happens when all 4 big cores are in use it’s just this as script:

#!/bin/bash
while true; do
	for i in 0 1 2 3 ; do 
		taskset -c $i openssl speed -elapsed -evp aes-128-cbc 2>/dev/null &
	done
	wait
done

And for all 8 cores it’s simply replacing the for line with for i in 0 1 2 3 4 5 6 7 ; do

So it’s pretty straightforward to check for these issues but of course one needs the board (I’m not owning a Vim2 so can’t test myself)