Multicore programming covers techniques for making programs run in parallel, by exploiting hardware with multiple processing cores.