CS/ECE 752: Advanced Computer Architecture I

Prof. David Wood

FALL 2001 TERM PROJECT

Proposal due: In-class, Friday, November 2, 2001
Status report due: 4pm, November 21, 2001
Report due: 4 pm, Monday, December 17, 2001
Weight: 30%

The default project is to do some original research in a group of two or three students. For example, you could examine a modest extension to a paper studied in class or simply re-validate the data in some paper by writing your own simulator, or by using one of the several simulators (such as Simplescalar) that are available at UW or elsewhere. Alternatively, you may work in a group of two to write a paper that surveys an area within computer architecture. Projects will include a written report and an oral presentation. Depending upon the size of the course, the oral presentations may be given outside of regular class hours.

The research projects will be graded on i) problem definition and motivation, ii) survey of previous work, iii) experimental technique, iv) presentation of results. The paper should be styled after the conference papers that are included in the class reading list. A paper with results of conference originality and quality would be a nice target to shoot for. However, many of the conference papers represent a significant part of a Ph.D's graduate work, so conference-quality originality and results are not expected.

The survey projects should consist of a paper containing a summary of work in an area, including extensive references, a presentation of opinions of other authors for and against various options (with references), and a conclusion containing your opinion of the strengths and weaknesses of arguments presented above.

Since a survey paper is "safer" than a research project, the survey papers will be expected meet a higher standard of completeness and analysis of the literature. I also strongly encourage students that are considering computer architecture as a possible area of specialization to undertake a research project.

Proposal

The proposal deadline is given above; proposals turned in earlier than the deadline will get feedback sooner. Proposals should be one to two pages long and should include:

Status Report

To help with keeping the projects on schedule, a one to two page status report is due 3 weeks into the project. This report should clearly describe the progress you are making. It will allow feedback and possible "mid-course corrections". The status report will not be graded, but should be viewed as an important part of the project.

Report

Reports should consist of an abstract, body, and optional appendices. The abstract should summarize the contributions of the report in one or two paragraphs. The length of the body should be the equivalent of 15-20 pages at double-spaced 10-point. Additional supporting material can be put in appendices.

Project Talks

An oral presentation of your project is required required. We will schedule these later in the semester. Depending upon the number of students and projects we may schedule these outside of regular class hours. This should be viewed as an opportunity for presenting research results to your "peers" -- an important part of the research process that should be of interest to those pursuing a PhD. It is also an opportunity to draw my attention to the parts of your project that you feel are most interesting. I will also try to identify any weaknesses so that you have a little time to address them before the final version must be turned in.

Possible Research Topics

You are encouraged to come up with your own topic. Ideally, the topic will be related to your current research interests. For example, if you have an interest in compilers, then code scheduling for instruction level parallelism might be a good topic. If you are interested in VLSI design, a project related to pipeline clocking would be good. If you are interested in databases, quantifying the architectural characteristics of database workloads, and comparing them with characteristics of other workloads (e.g., SPEC) might be good. Some simulators (e.g., Simplescalar) and benchmark programs (e.g., SPEC2000) will be available for carrying out simulation studies.

It is possible to do a single multi-disciplinary project to satisfy multiple courses (e.g., CS736). However, this must be coordinated with the other instructor(s) and you will be expected to do two (or more) projects worth of work. Similarly, if you have active research in a related area, it is fine to combine your current (supported) research with your course project. In all such cases, it is imperative that such conflicts be disclosed at the proposal stage so that we can address the scope of research that will be required.

To help you with topics, a list of example projects follows.

Possible Survey Topics

Describe, compare and contrast (generally broader than the above research topics):

Previous Projects

The following is a sampling of projects done in previous offerings of this course. Though titles alone convey little meaningful information, this should give you an idea of what you might want to pursue.