Previous | Next --- Slide 11 of 48
Back to Lecture Thumbnails
mnshaw

As the number of processors you have increase, more and more of your program should be parallelizable or you aren't really reaping the benefits much.

username

Most modern computers have just four processors, so according to this graph there isn't too great a difference between having more sequential code if there aren't that many processors in use.

kayvonf

@username. Most modern computers have just four processors?

o_o

I think this just shows that as you reach a larger and larger amount of processors, due to the portion of code that is sequential, the amount of speedup that can occur starts plateauing.

metainf

@kayvonf. I think he means most commercial computers have just 4 processors. For example, the Intel i7 Series has 2-4 processors. However, when it comes to things like servers, they can have more processors. For example the Intel Xeon Series has 4-24 processors/cores.

planteurJMTLG

@username The Amdahl's law should also apply to GPUs, which have way more than 4 cores. One of the cheapest GPU I have found on Amazon ($28.99) has 16 CUDA cores, and the NVIDIA TITAN X has 3584 CUDA cores.

ShadoWalkeR

@planteurJMTLG, yes Amdahl's law does apply to GPUs. But mostly GPUs are used in a kind of operations which are highly parallel. So the fraction S is usually very very small. That's what makes it feasible to parallelize over 1000s of cores.

fxffx

From this diagram, we can see that in order to better utilize more processors, the sequential part of the program should be as small as possible.