CPSC 330 - Spring 2008 Homework 1 Due Wednesday, January 30 [revised due date] Each student must turn in a separate set of homework solutions, but you may work together in study groups with other students from the class. Include their names in parentheses under your name on the solution set you submit. Purposes: (1) selected historical questions; (2) work with units and prefixes; (3) work with the execution time equation and CPI. Note: For main memory size, interpret K, M, and G as powers of two. Otherwise, interpret K, M, and G as powers of ten. 1. Briefly state Moore's Law. (Cite your source.) 2. Identify a computer designed since 1950 that is considered non-von-Neumann and briefly explain why. (Cite your source.) 3. Identify (approximately) the processor and the year for the first: (a) 8-bit microprocessor (b) 16-bit microprocessor (c) 32-bit microprocessor (d) 64-bit microprocessor (Cite your sources. Note: not all "firsts" will be from Intel!) Example: For a processor with 100 MHz clock frequency (a.k.a. clock rate), what is the clock cycle time? CCT = 1 / clock rate = 1 / ( 100 * 10^6 cycles per sec ) = 10 / 10^9 secs per cycle = 10 nsec 4. Clock cycle time (or clock period) is the reciprocal of clock frequency. Fill in the following table. clock clock year processor frequency cycle time 1949 EDSAC 500 KHz ________ 1978 Intel 8086 ________ 200 nsec 1993 Intel Pentium 66 MHz ________ 1998 PPC 750 ________ 3 nsec 2000 AMD Athlon 1 GHz 1 nsec 2004 Intel Pentium 4 3.6 GHz ________ Example: Consider making a complete backup of a full 40 GB hard drive using a 250 MB zip drive. How many 250 MB zip disks will be needed? Use powers of ten for capacities other than main memory. # of zip disks = 40 GB / 250 MB = 4*10^10 / 2.5*10^8 = 160 5. A keychain storage device (jump drive) writes at 0.85 MB/sec. How long will it take to transfer a 4.25 MB file to the device? 6. Consider a weather prediction model with the following dimensions 120 x 120 2-dimensional grid points, 45 vertical layers a) If each grid point in each layer requires 1,000 instructions to perform the necessary calculations for one time step, how many total instructions are required for the model to run for 100 time steps? b) If a computer can process 2 billion instructions per second (2000 MIPS), how long will the model take to run those 100 time steps? c) If the model resolution is increased to 320 x 320 2-dimensional grid points and 60 vertical layers, how long will the model take to run 100 time steps? Example: Find the execution time for a program that executes 30 million instructions on a processor with an avg. CPI of 2.0 and a clock cycle time of 33.3 nsec. exec. time = IC * CPI * CCT = 30M insts. * 2 cycles/inst * 33.3 nsec/cycle = 1.998 seconds = 2 seconds (rounded) 7. What is the execution time for a program that executes 2 billion instructions on a processor with an avg. CPI of 2.0 and a clock rate of 2.0 GHz? Example: For the following instruction set workload and cycle values, find the average CPI. type | freq cycles -------+-------------- alu | 0.5 2 branch | 0.2 6 ld/st | 0.3 6 avg. CPI = (0.5 * 2) + (0.2 * 6) + (0.3 * 6) = 4.0 8. Consider the following instruction set workload and cycle values. type | freq cycles -------+-------------- alu | 0.5 1 branch | 0.2 2 ld/st | 0.3 5 What is the average CPI? 9. A current 2.0 GHz computer design has the following workload and CPI characteristics: type | freq cycles -----+-------------- A | 0.4 2 B | 0.25 3 C | 0.25 3 D | 0.1 5 A set of proposed improvements would result in a 3.0 GHz computer with improved CPI values: type | freq cycles -----+-------------- A | 0.4 2 B | 0.25 2 C | 0.25 3 D | 0.1 4 What is the overall speedup of the proposed improvements?