Consider a program that can be run in parallel and is moved from a single core to a quad core. Will the speed up be 4-fold?
Say you do not see the expected speedup in the program. What can be the possible reasons? Cache is one reason if each core does not have a separate cache then we have a problem. What could be the other issues?