A custom test framework for automatically compiling and benchmarking programs on different hardware and architectures