3 ms·
you can't have more parallelism by simply increasing #threads. Parallelism is bound by CPU cores. Threads need to scale with CPU cores, however simply increasi
by tcfhgj 5y ago
you can't have more parallelism by simply increasing #threads. Parallelism is bound by CPU cores.
Threads need to scale with CPU cores, however simply increasing #threads doesn't help. You need to split tasks of your program such that more tasks can be executed in parallel while not adding more overhead than you gain by parallelism.
Then you can distribute those tasks on as many threads as possible (while still being bound by #cores).
- astrange 5y ago> you can't have more parallelism by simply increasing #threads. Parallelism is bound by CPU cores. It's bound by the slowest shared resource in the system (Amdahl's law). That could be disk I/O, memory bandwidth, or power budget.
- Icathian 5y agoThat isn't what Amdahl's law says. Amdahl's law is an equation describing the theoretical paralellizability of a given task. It doesn't have anything to do with systems bottlenecking on one resource vs another.