Question: Exercise 7.22 In future systems, we expect to see heterogeneous computing platforms constructed out of heterogeneous CPUs. We have begun to see some appear in
Exercise 7.22 In future systems, we expect to see heterogeneous computing platforms constructed out of heterogeneous CPUs. We have begun to see some appear in the embedded processing market in systems that contain both fl oating-point DSPs and microcontroller CPUs in a multichip module package.
Assume that you have three classes of CPU:
CPU A—A moderate speed multicore CPU (with a fl oating-point unit) that can execute multiple instructions per cycle.
CPU B—A fast single-core integer CPU (i.e., no fl oating-point unit) that can execute a single instruction per cycle.
CPU C—A slow vector CPU (with fl oating-point capability) that can execute multiple copies of the same instruction per cycle.
Assume that our processors run at the following frequencies:
CPU A CPU B CPU C 1.5 GHz 3 GHz 500 MHz CPU A can execute 2 instructions per cycle, CPU B can execute 1 instruction per cycle, and CPU C can execute 8 instructions (though the same instruction) per cycle. Assume all operations can complete execution in a single cycle of latency without any hazards.
All three CPUs have the ability to perform integer arithmetic, though CPU B cannot perform fl oating-point arithmetic directly. CPUs A and B have an instruction set similar to a MIPS processor. CPU C can only perform fl oating-point add and subtract operations, as well as memory loads and stores. Assume all CPUs have access to shared memory and that synchronization has zero cost.
The task at hand is to compare two matrices X and Y that each contain 1024 × 1024 fl oating-point elements. The output should be a count of the number indices where the value in X was larger than the value in Y.
7.22.1 [10] <7.11> Describe how you would partition the problem on the three different CPUs to obtain the best performance.
7.22.2 [10] <7.11> What kind of instruction would you add to the vector CPU C to obtain better performance?
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
