In practice, usually only a part of a code can be efficiently parallelized.
Amdahl's law imposes a theoretical limit on a parallel code speedup:
For example, if only 50% of a code can be parallelized, its
theoretical speedup can't exceed the factor of two, according to the Amdahl's law.
As you can see on the graph above, it doesn't make much sense utilizing more
than 12 CPU cores for running the code since
we may be able to reach about 90% of the maximum theoretical speedup on just 12 cores.