Reading reports: A "Reading report" is two short paragraphs (think half page). The first paragraph
should synthesize a summary of the readings. By "synthesis" I mean it shouldn't just repeat the abstract
of each reading, but rather articulate what all of the readings (if there is more than one) are trying
to say. Looking for commonality and difference across primary source material is a key skill of
graduate school. The second paragraph should tell me what you think. Do you think the ideas in
the papers are good or bad? Why do you think one way or another? Don't go crazy with effort on these
things, but it would be not be unreasonable to spend 20 minutes bashing out a few words.
Project: Work individually to answer some interesting architectural question. If you can tie this
into your own research or a personal interest, that is strongly encouraged. Some suggested projects
are below to give you a sense of scope. Project grade will consist of 4 components:
Proposal presentation (10%)
Effort (20%)
Outcome (20%)
Final presentation (10%)
Developing your own project idea is encouraged, but here are a few suggestions:
Given an application propose and evaulate an accerelator for it. It would help if you chose an application you care about.
Note that "application" here may not just be software. Perhaps it is some concrete "thing" that requires a custom
architeture to meet the application requirements.
Demonstrate side channel information flow on a commercial cloud infrastructure
Port something complicated (and that hasn't been ported before) to a GPU or multicore
Redesign the architecture of NVRAM/SSD's for efficient byte level access
Figure out something interesting to do with die-stacked DRAM
Write a tool to automatically analayze architecture research papers in order to estimate when sub-fields
should die, and when a new sub-field has emerged.
Design a 100 transister cpu
Design a solution for virtual memory for exa-scale memory systems
Build a tool that provides a quantum leap (100-1000X) improvement in capability to some field of computer science
(or any field really)