simultaneous multithreading disadvantages