https://github.com/kervinck/pfkpk
On the RPI it completes generation in 0.05 seconds.
It is agnostic to square indexing, in the sense that it can be adapted to any of the 8 possible board geometries with just a minor local change.
I'm pretty sure the results are fully correct. Test cases are included.
License is BSD-style, free for anyone to use.
On my laptop generation takes 1.5 milliseconds:
Code: Select all
make
cc -std=c99 -pedantic -Wall -O3 -o pfkpk pfkpk.c kpk.c
./pfkpk
kpkGenerate CPU time [seconds]: 0.001581
kpkTable size [bytes]: 32768
kpkSelfCheck: OK
kpkProbe 24/24: OK