Well improving the performance of my algo has been a success. My benchmark used to run in 16.7 minutes, and now it runs in 1.75 minutes. This is single threaded for both so havent even touched multithreading improvements which should be doable as well.
@mur2501 yes