Why not start splitting the main code in differents threads, AI, Physics Calculation, Representation, Dynamic loading, net coding, plane' system, traditionally games developers didn't use multi-thread because of A: It was more complicated, B: the performance improvement obtained wasn't enough to justify A and C: only a limited number of user could afford to have the required machine but today the average new machine comes with 6 cores. I am very doubling that Vulkan is going to be the silver bullet many guys think.