#### Assignment 1

##### Due: 1:25pm, Wed Aug 31st, 2022

Note: Make reasonable assumptions where necessary and clearly state them. Feel free to discuss problems with classmates, but the only written material that you may consult while writing your solutions are the textbook and lecture slides/videos. Solutions should be uploaded as a single pdf file on Canvas. Show your solution steps so you receive partial credit for incorrect answers and we know you have understood the material. Don't just show us the final answer.

Every homework has an automatic penalty-free 1.5 day extension to accommodate any covid/family-related disruptions. In other words, try to finish your homework by Wednesday 1:25pm to keep up with the lecture content, but if necessary, you may take until Thursday 11:59pm.

1. Power and Energy (30 points)

Consider a processor that runs at 2 GHz and 1.1 Volt. When running a given CPU-bound program, the processor consumes 110 W, of which 20 W is leakage. The program takes 50 seconds to execute. The processor is capable of running at different voltages and frequencies. Can you compute the following values: (i) The smallest time it takes to execute the program. (ii) The highest power to execute the program. (iii) The lowest energy to execute the program. Assumptions: The processor is capable of executing safely at voltages between 0.9 V to 1.2 V. Voltage and frequency follow a linear relationship (i.e., if voltage doubles, frequency doubles as well).

2. Power and Energy (30 points)

Consider a processor running at 3 GHz and 1 Volt. It executes a program that finishes in 100 seconds, while consuming 20 W leakage power and 80 W dynamic power. Let's call this the baseline. I'm able to engage DFS to scale down the frequency (and hence power) of the processor. But this usually causes the program to consume more processor energy than the baseline. The only way my processor can consume less energy than the baseline is if the program is highly memory-bound. The program is considered Y% memory-bound if Y% of the execution time in the baseline is spent accessing memory -- note that this portion of the execution time is unaffected by frequency scaling on the processor. Also note that the processor's dynamic power is uniform, i.e., it does not fluctuate up or down depending on whether the program is accessing memory or doing computations. What is the minimum value of Y such that operating at a frequency of 1.5 GHz causes the program to consume less processor energy than the baseline?

3. Sum of Execution Times (20 points)

A 4-program benchmark suite has execution times as listed below for 3 different systems. Assume that System-A is the reference machine. How does the performance of system-C compare against that of system-B? Show this comparison for all three metrics (sum of execution times, sum of weighted execution times, and GM of execution times). Report the comparison in terms of speedup.

Program P Q R S
Exec times on System-A (seconds) 100 120 80 400
Exec times on System-B (seconds) 120 80 100 300
Exec times on System-C (seconds) 90 110 90 500

4. Performance Equation (20 points)

My new laptop has a clock speed that is 10% higher than my old laptop. I run the same five binaries on both machines. Each binary runs for roughly the same number of cycles on each machine. The IPCs of the binaries are listed in the table below. State a single number that is representative of the performance improvement provided by my new laptop.

Program P Q R S T
IPCs on old laptop 0.6 0.8 0.4 1.1 1.4
IPCs on new laptop 0.7 0.6 0.3 1.1 1.5