Enable MySQL to use more than 1 core (multicore)
MySQL's implementation won't allow you to use more than one core per Server Thread. 

I recommend divide-and-conquer strategy: break up your query in multiple (hopefully smaller, independent) jobs and start again.