Apparently Java 8 added support for running code on the GPU, it might be limited to code involving primitives and primitive arrays though. In either case the algorithms will need only a few minor tweaks to run this way, unfortunately code readability will suffer a lot.