Welcome to the multiprocessor assignment page of 5MD00 -- Advanced Computer Architecture. The purpose of this assignment is to get familiar with multiprocessor architectures and their programming models. The state-of-the-art multicore processors may contain dozens of cores on a single die. The figures below are examples of these processors. The trend of of going multicore posts new challenges to both computer architects and programmers. Putting hundreds of cores on a die is not difficult, but designing memory hierarchy to keep them busy is difficult. On the other hand, programming dozens of cores requires programmers to think 'parallel'. In this assignment, we will try to tackle these challenges, from the view point of both computer architects and programmers. We will use the m5sim from University of Michigan for the assignment, and run this on top of linux (so that's the first thing you have to install; see the instructions). You are asked to first go through the example program (our 'cookbook') and then perform the real assignment. You have to explore the multiprocessor architecture, changing the above mentioned parameters, and produce performance-cost parato curves. Performance is determined by the total program execution time (counted in number of cycles). Cost is determined by the total area (for a certain technology). We will use a simple area model, only counting the total cache size, and the number of cores. So we exclude costs like, tag-size, bus and connect cost, etc. We will provide the necessary numbers needed to calculate the area. For the cores you have 2 options, both based on the DEC Alpha ISA (instruction-set architecture); one processor is a simple in-order processor, the other a more advanced out-of-order engine. Now turn to the install instructions, then run the example, and perform the assignment. You may also check the other links for helpful material. Update:
Contact: Yifan He E-mail: y.he [at] tue.nl Office: PT 9.15 (Monday 9:45 ~ 10:45, Thursday 9:45 ~ 10:45) Zhenyu Ye E-mail: z.ye [at] tue.nl |