Question: - Suppose a program must execute 1012 instructions in order to solve a particular problem. Suppose further that a single processor system can solve
- Suppose a program must execute 1012 instructions in order to solve a particular problem. Suppose further that a single processor system can solve the problem in 106 seconds (about 11.6 days). So, on average, the single processor sys- tem executes 10 or a million instructions per second. Now suppose that the program has been parallelized for execution on a distributed-memory system. Suppose also that if the parallel program uses p processors, each processor will execute 1012/p instructions and each processor must send 10(p-1) mes- sages. Finally, suppose that there is no additional overhead in executing the parallel program. That is, the program will complete after each processor has executed all of its instructions and sent all of its messages, and there won't be any delays due to things such as waiting for messages. a. Suppose it takes 10-9 seconds to send a message. How long will it take the program to run with 1000 processors, if each processor is as fast as the single processor on which the serial program was run? b. Suppose it takes 10-3 seconds to send a message. How long will it take the program to run with 1000 processors?
Step by Step Solution
There are 3 Steps involved in it
To solve this problem we need to determine how long it takes for the program to run using 1000 proce... View full answer
Get step-by-step solutions from verified subject matter experts
