Search code examples
multithreadingcpu-cores

Determinated threads running with X cores?


If I have 8 asynchronous functions to execute and 4 cores in my CPU, What is better (more speedy and correct)?

  1. Start 4 threads and when finish a thread, start another thread, etc.
  2. Start 8 threads

Language aren't important.


Solution

  • The answer is: It depends.

    It depends on the workload. If threads are I/O bound, you can benefit by starting all 8 threads. If they're highly CPU bound, then it makes less sense.