0
$\begingroup$

I was reading about Amdahl's law and it state that value of Amdahl's law always lies between 0 and 1. My question is, is it still true in today's case/scenario? When we have system like core i7?

$\endgroup$
1
  • $\begingroup$ Amdahl's law is a horribly way to think about parallelism, but other than that ... sure. $\endgroup$
    – Raphael
    Aug 2, 2017 at 16:04

2 Answers 2

4
$\begingroup$

Yes, it's still true. The speedup can't be less than zero (if parallelizing your code makes it slower, just run the serial version) or more than 100% (because saving more than 100% of the runtime would make the runtime negative).

Multicore processors are essentially just a matter of terminology changing over time. If you think you have one processor with four cores, Amdahl thinks you have four processors.

$\endgroup$
1
  • $\begingroup$ Speedup cannot be less than zero because running times are positive. Or are you thinking of processes that "undo" the work ? And speedups below $1$ are indeed useless. $\endgroup$
    – user16034
    Nov 29, 2022 at 13:13
0
$\begingroup$

There are many different aspects to this.

It is quite common that you can perform an algorithm on one processor doing an amount x of work, and you can distribute it to several processors but do more work. Which is fine if your machine is otherwise idle. Unless it is a mobile device where a single core at lowest possible speed is fast enough and using multiple cores at top speed doing more work eats substantially more of your battery. Or if you have n cores and n or more independent tasks, then doing each task with the minimal amount of work is better.

Then you have effects where using multiple cores means communication between them takes longer. Then you have effects when your cores are not all the same. Or virtual cores where you can either use one core at 100% speed or two cores at 60% speed each. Your cores may have one route to memory only, so eight cores can do 8 times more computations but cannot read/write 8 times more data. Then you can have the effect that multiple cores fully used produce more heat, making the processor to hot and force it to slow down.

It's difficult and complicated.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.