That looks interesting but
>We therefore use highly optimized assembly routines that take the specific properties of a given processor microarchitecture into account.
Is that what is being done for
>POWER9 support is planned
??
I'm running a mersenne-prime calculator which seems to push the CPU pretty hard. At least, it runs down near the "base" frequency of 3.2GHz (I have a 4-core CPU).
>cat mersenne.c
#include <stdio.h>
#include <stdlib.h>
#include <gmp.h>
int main(int argc, char *argv[]) {
char *endptr;
unsigned long int p = strtoul(argv[1],&endptr,10);
mpz_t M, powerof2, one, two;
mpz_init(M); mpz_init(powerof2);
mpz_init_set_str(one,"1",10);
mpz_init_set_str(two,"2",10);
mpz_pow_ui(powerof2,two,p);
mpz_sub(M,powerof2,one);
gmp_printf("%Zd",M);
return 0;
}
Run with:
>cat mersenne16.ksh
num=82589933
thread=0
while (( thread < 16 ))
do
echo $thread
echo time ./mersenne $num > M48.$thread
time ./mersenne $num > M48.$thread &
(( thread += 1 ))
done