The multithreading paradigm has become more popular as efforts to further exploit instruction-level parallelism have stalled since the late 1990s.
Two major techniques for throughput computing are multithreading and multiprocessing.