Consider a multicore processor with four heterogeneous cores labeled as A, B, C, and D. Assume cores A and D have the same speed. Core B runs twice faster as core A. Core C runs three times faster than core A. Assume that all four cores start the execution of the following application at the same time and no cache misses are encountered in all core operations. Suppose an application needs to compute the square of each element of an array of 256 elements. Assume 1 unit time for cores A or D to compute the square of an element. Thus, core B takes 1/2-unit time and core C takes 1/3-unit time to compute the square of an element. a) Compute the total execution time (in time units) for using the 4-core processor to compute the squares of 256 elements in parallel. The four cores have different speeds. Some faster cores finish the job and may become idle, while others are still busy computing until all squares are computed. b) Calculate the processor utilization rate, which is the amount of the total time the cores are busy (not idle) divided by the total execution time in using all cores in the processor to execute the above application.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter10: Classes And Data Abstraction
Section: Chapter Questions
Problem 23PE
icon
Related questions
Topic Video
Question
100%

Consider a multicore processor with four heterogeneous cores labeled as A, B, C, and D. Assume cores A and D have the same speed. Core B runs twice faster as core A. Core C runs three times faster than core A. Assume that all four cores start the execution of the following application at the same time and no cache misses are encountered in all core operations. Suppose an application needs to compute the square of each element of an array of 256 elements. Assume 1 unit time for cores A or D to compute the square of an element. Thus, core B takes 1/2-unit time and core C takes 1/3-unit time to compute the square of an element.

a) Compute the total execution time (in time units) for using the 4-core processor to compute the squares of 256 elements in parallel. The four cores have different speeds. Some faster cores finish the job and may become idle, while others are still busy computing until all squares are computed.

b) Calculate the processor utilization rate, which is the amount of the total time the cores are busy (not idle) divided by the total execution time in using all cores in the processor to execute the above application.

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Instruction Format
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage