Monday, September 12, 2011

Amdahl's Law in the Multicore Era

Amdahl's law has to be slightly modified to be able to describe multicore CPUs in today's world.  The classic speedup formula was modified for different chip configurations such as symmetric chips, asymmetric chips, and dynamic chips.  By plotting the graphs, it was shown that asymmetric chips could provide better speedups than symmetric multicore chips, and dynamic chips could provide the best speedups.  However, asymmetric and dynamic chips requires dealing with complicated scheduling and other overheads.

Something this paper did not address was the costs for the different types of CPUs.  That will be an important factor in how the future turns out.  Right now, most clusters are built using symmetric multicore chips, because they are the less expensive and easier to use than the specialized chips.  This may lead to wasted resources and non-optimal speedups, but the cost effectiveness and ease of deployment makes it worthwhile.  Since most chip manufacturers build symmetric chips for most consumers, the costs for them will stay pretty low, which will make it attractive when designing a datacenter or cluster.

Another factor which will be important is the software or firmware required in order to take advantage of the asymmetric and dynamic chips.  I do not know what software decisions are involved for using asymmetric or dynamic multicore chips, but I imagine that software changes are required and they are not trivial.  There will probably have to be new and better compilers to be able to exploit the better speedups offered by the specialized chips.  New programming languages or constructs may need to be developed.  All of this either does not exist or is in its infancy, so there is a lot of work to be done to be able achieve the theoretical speedups of newer hardware.  These challenges and their solutions may not make it worthwhile to use the specialized CPUs and force large warehouse scale clusters to continue using the simple symmetric chips.

No comments:

Post a Comment