CSE 420/598 Class News and Announcements:


11/25/07: Grades on Homework 5 out of 40 are: 20 22 26 27 27 31 32 34 36 37 38 38 38 39 40 40 40 40 40 40 40 40 40. Average 35.

11/14/07: Solutions for 420 homework 4 are posted.

11/13/07: 420 homework 4 grades out of 50 are 30 33 39 39 39 40 41 41 42 42 42 42 42 43 43 43 44 44 44 44 45 45 45 46 46 50. Average 42.

11/02/07: I have reviewed all 9 presentation outlines that were submitted. I have chosen four, listed below, and would like to ask these teams to present their report to the class on 8 November. I want to emphasize that the reports were chosen partly based on quality of the report, partly on quality of the presentation, but mostly to try to reflect a good cross-section of the reports submitted in order to avoid duplication. Let me also reiterate the no one will be penalized in any way by not being on this list; a modest bonus is available to teams who agree to present.
Please confirm with me as soon as possible that your team will (or will not) be able to present. Any subset of the team can make the presentation (sorry, I mean any nonempty subset.)
9:20 Team 3 - Aarey, Holehonnur, Balasubramanian, Gupta
9:35 Team 7 - Dill, Setlur, French, Maurya
9:50 Team 8 - Pabalkhar, Iyer
10:05 Team 9 - Patil, Gundecha, Murthy, Pratik
10:20: Wrap-up Discussion

Plan on 10-12 minute presentation, hitting the interesting points. Allow 3-5 minutes for questions.

10/29/07: For 420 Homework 3, the grades out of 50 are: 35 35 38 44 44 45 46 46 47 47 48 50 50 50 50 50 50 50 50 50 50 50 50 50
Average 46.7.

10/27/07: Regarding project presentations for phase one: I do not think we will have time for all nine teams to present in class. So after turning in your project phase 1 write-up on 30 October, please prepare a brief outline by 1 November in class of your potential presentation. It should consist of four transparencies:

  1. What machines did you use? What do they correspond to on SPEC?
  2. What programs did you select (brief descriptions)?
  3. How do your comparisons (using your programs on your machines) compare to what you predicted using the SPEC data?
  4. What is the most interesting difference you found? What is a plausible explanation for the difference? Do you have any evidence that that explanation is a good one?
After getting these, I will pick a small number for presentation in class on the 8th. There will be a small bonus (5 points) for teams who present. I will contact teams on Friday 2 November to ask certain teams (I do not know how many) to present.
So please think out what you would say in a 15-20 minute presentation using only a small number of transparencies, and send me that by Thursday the 1st.

10/22/07: Midterm grades for 598, out of 50, are 23 28 28 32 33 34 34 35 36 36 36 38 39 39 39 39 39 39 40 40 41 41 41 41 42 42 43 43 43 45 45 49 49 The arithmetic mean is 38.55.

10/22/07: Midterm grades for 420, out of 50, are 19 20 24 24 26 28 29 30 30 31 31 32 32 33 33 34 34 35 38 41 41 42 42 44 46 47 The arithmetic mean is 33.31.

10/22/07: Homework Four, Assignment Three, is posted.

10/14/07: I decided not to give the spare questions that I didn't use because they were too hard and too long, and would be misleading in terms of what to expect. But here are three sample questions:

  1. Register-register architectures employ more instructions than do register-memory architectures in order to accomplish the same tasks. Yet register-register architectures are in much more common use than register-memory ones. Explain this, making particular reference to (a) the structure of the pipeline for execution, (b) the relative cost of memory versus register access, and (c) the number of registers available. This is a good question, but is too open-ended, and I am concerned that people would write too much and not state the main points.
  2. .Loop unrolling is one means to improve performance. Using an example that you make up, show how loop unrolling can (a) reduce the number of instructions to execute, (b) eliminate control hazards, and (c) eliminate data hazards. By giving specific examples, show how reordering the code and renaming registers can be used in conjunction with loop unrolling. This question is easy if you come up with an example quickly, but it's hard if you struggle to find a good example. Also it is pretty much a quote from the book.
  3. (A) Briefly explain the difference between a dependence and a hazard. (B) We know that reordering code can sometimes be used to eliminate a data hazard. Can it ever be used to eliminate a data dependence? Answer yes or no, and explain your answer. (C) We know that register renaming can sometimes be used to eliminate a data hazard. Can it ever be used to eliminate a data dependence? Answer yes or no, and explain your answer.

10/13/07: Another note on project phase 1. Apparently there is some concern about how precise the timing measurements have to be. I believe that as long as you run the programs that have execution times in seconds or minutes and not just miliseconds, the precision will not be a big issue. It would be a bigger concern if you try to instrument at a very detailed level, but for the project there is no need to do this. So if you think the timer is quite imprecise, just comment on this in the report and indicate how that might affect your results.

10/10/07: I have all nine progress reports. Thanks! Because I will not be able to get back from my trip for class Thursday, the TA, Arun, will instead be meeting with each team as scheduled. I have sent my comments on the interim reports to Arun so that he can discuss them with you along with his own comments.
Please do not hesitate to email me as questions arise.

10/09/07 (9:40am): I have already received interim progress reports from Teams 1, 3, 4, 5, and 7. Thanks! Other teams, remember to send your interim progress report today.
A reminder: The goal is not to match the SPEC benchmarks, or to reproduce them. The goal is to use SPEC to make predictions for your programs, and if yours are quite different, it is ok if SPEC doesn't make a really good prediction for them.

10/04/07: Info for the midterm. We have covered Chapter 1, Appendix A, and Sections 2.1-2.6. This is the material to be covered for the midterm. There will be emphasis on concepts, not on specific formulas. But a clear understanding of the five-stage integer pipeline at a more detailed level is expected. Specific sections that got less than average coverage in the lectures are 1.7, 1.10, A.6, A.7. Remember that the basic material in Appendix B on instruction set design is assumed from earlier courses, so if this is not "old" material for you, it merits a reading.
Two pieces of advice given in class are worth repeating. Given 15 minutes to do a question, spend some time to understand the question and decide on the most important parts of an answer. Second, do not try to write everything in the book that is relevant; choose the very few things that are the most relevant to the question. I am not looking for an answer that would take you a long time to write down; spend time thinking, then write a concise answer.

10/04/07: The 598 marks on assignment two out of 80 are 41 42 46 50 54 55 56 57 57 58 62 63 63 63 64 64 65 66 67 69 69 72 72 73 73 73 74 76 76 76 78 78 78 78 with an average of 65.8.

10/03/07: A template for an interim report is available here. Please complete it and send it by 9 October in preparation for your meeting on 11 October. The meetings on 11 October are scheduled as follows:
9:00 Team 1 - Thotapalli, Reddy, Rao, Kari
9:10 Team 2 - Jagasia, Komirishetty, Gogineni, Vemuri
9:20 Team 3 - Aarey, Holehonnur, Balasubramanian, Gupta
9:30 Team 4 - Botadra, Sharma, Gupta, Kumari
9:40 Team 5 - Sridharan, Reddy, Hari, Chelappa
9:50 Team 6 - Sarveswaran, Uppili, Krishna, Rangarajan
10:00 Team 7 - Dill, Setlur, French, Maurya
10:10 Team 8 - Pabalkhar, Iyer
10:20 Team 9 - Patil, Gundecha, Murthy, Pratik
Please send corrections in team membership (and spelling) to me if needed!

10/02/07: As announced in class today, here is the upcoming schedule for the next few classes:
On 4 October we will do 2.6 and some of 2.7, time permitting.
On 9 October the TA will come to discuss homework 2 solutions and grading; please have questions for him.
On 11 October 420 students are free; 598 students will come to present a brief overview of their progress on the team project. I will post more information about this soon.
On 16 October we will have the midterm. I will also post more information about this soon.
On 23 October the next 420 homework is due.
On 30 October the 598 Project Phase One is due.

10/02/07: Homework 2 for 420 was handed back today. The marks out of 50 are 13 14 15 16 20 20 22 23 24 24 25 28 30 31 31 34 37 37 38 38 39 48, with an average of 27.6. Although homeworks submitted more than ten minutes after start of class were noted as "submitted late", no penalty was imposed. But PLEASE submit homeworks at the start of class.
Assignment 2 for 598 will be handed back as soon as we can.

09/25/07: Homework 3 for 420 is posted, due 23 October.

09/23/07: When you submit your homework, make sure that your name is on each sheet and make sure you state whether you are in 420 or in 598. Make sure you staple or otherwise securely attach your submission. If the homework is not stapled, and sheets are lost, you will lose the grades for the material on the lost sheets.

09/23/07: I have been getting many questions about how addressing is done. It must be register plus offset, and this must be given in the MEM field. You cannot use RegisterSource1 as part of this address, since it contains the other operand.

09/22/07: There is a typo on the homework (#2). Instead of saying that RegisterSource2 is ignored for a load instruction, it should say RegisterSource1.

09/19/07: Grades for 598 assignment one out of 70 are: High 69, Low 42, Average 60.1. Grades in sorted order are 42 46 48 49 53 55 57 57 59 59 59 59 60 60 60 60 61 61 62 63 63 63 63 64 64 64 66 67 67 67 68 68 69 69

09/19/07: Grades for 420 homework one out of 50 are: High 50, Low 10, Average 38.5. Grades in sorted order are 10 19 20 21 21 27 32 33 35 37 39 39 39 43 45 47 47 47 48 48 48 48 49 49 49 49 50

09/18/07: We have started Chapter 2.

09/15/07: Solutions for homework 1 are posted (see the syllabus page).

09/13/07: We have finished almost all of Appendix A.

09/11/07: Assignment 2 - Homework 2 is posted, due 25 September. Please remember that it is due at the start of class, 9:15 a.m.

09/11/07: We have now covered Appendix A, parts A.1, A.2, A.3, A.4.

09/01/07: On 8/28 and 8/30 we finished Chapter 1. We will start Appendix A on Tuesday.

08/27/07: Homework One / Assignment One is posted. On the syllabus page, click on the "Homework One" or "Assignment One" entry to get it. Read Chapter 1 of CAQA first.

08/24/07: A graduate grading scheme is posted. A very preliminary project description for graduate students is also posted.

08/23/07: Undergraduate students (420) and graduate students (598) WILL BE GRADED SEPARATELY, so as not to disadvantage either group. No grade comparison will be made between graduate and undergraduate students. The grading scheme for 598 should be posted by the end of the day 08/24.

08/23/07: Our strategy to get the class filled worked. All people for whom overrides were signed are now registered. There are no more seats in the class.

08/23/07: Today we covered CAQA 1.1-1.3. Read Chapter 1 to fill in the details.

08/21/07: Good news. The class is moved to COOR 184. So from now on we will meet there and NOT in ED 320.
In addition we have arranged to get a full TA for the class.
We are moving three places from 420 to 598 today. We are going to add 27 more places on Thursday, which will fill every seat in the new room.
So here is how we are going to proceed. If you gave your name at class today, you are among the first 21 people eligible for these spots. If you were among the first 9 to request it afterwards, you are also eligible (these have all been allocated). This will fill all seats.
You will get an email this evening if you are among the people described above.
We will need NEW override forms for every person. The form can be downloaded here. The override request MUST be for 598. No overrides will be approved for graduate student registration in CSE 420.
It must be typed. It must use a 10-digit student number, not the old 9-digit ones. Do NOT complete the section "Student's Written Statement". Sign the form. Turn it in in class on Thursday. You must follow these instructions carefully, and it must be turned in in class time on Thursday.
If you have completed the form as above, and are on the list of students who have received emails, and are either a new student or a continuing student with a GPA of 3.0 or greater, and this will not result in you having more than 12 CSE graduate credits, shortly after the class on Thursday your override request will be approved and recorded in the system. Then you will get an email and you will be able to register.
We will add sufficient spaces to CSE 598 for each override approved. WARNING: We cannot guarantee that the spaces will remain free, as any qualified CSE grad student could register without an override once the spaces are available. So when you get the email approving the override, REGISTER.
If you do not get an email indicating that you should submit a new form, there will be no seat available for you. We are not permitted -- by state law -- to overfill the room, so there is absolutely no way to approve any more requests.

08/19/07: I now have 27 requests for overrides. Although the classroom, ED320, nominally has a capacity of 64, it appears to be not well suited for lectures to a full room. In addition, there is limited TA support for the course. I am working to see if any other room can be found, and if more TA support is possible, so that a decision can be made about the override requests before the start of the semester.

08/07/07: Note to prospective graduate student enrolees. The 598 section is currently full, and I am not signing overrides before the first lecture. I currently have 22 requests for signatures on override forms, and will need to consult the department about how they wish to proceed. Please wait until the first class so that we can determine how many spaces we can make available, and come to the first class.

08/07/07: This will be updated with news about the class as it becomes available.