| CompOrg Fall 2005 Homework #5 |
|   Assignment   |   Submission   |   Grading   |   Notes |
| Assignment |
Your job is to use your knowledge of C and IA32 assembly
programming, memory system architecture, the time
and/or gprof commands and your wits, to determine the
size of the cache(s) on monica.cs.rpi.edu (or on any machine you
want).
Correctly stating the size and number of caches is not worth
any points! You must provide justification for your estimates based
soley on measurements you make using time and/or
gprof (on programs you write).
| Submission |
You should submit a brief report (no more than 2 pages) describing how you attempted to determine the size and number of caches on the machine you used (make sure you tell use what machine you use), what measurements you made (list the specific experiments you ran and why you ran them), the results of your experiments presented concisly (a table would be nice) and your interpretation of the results.
You must also submit all code you wrote!
| Grading |
Your grade will be determined based on how appropriate your experiments were to anything that could possibly answer the question posed, not on the specific results you get. As you will see - it's not easy to make these kinds of measurements using just the time command (and gprof).! Consider k-best strategies (although make sure you use this appropriately!).
If your experiments don't provide you with conclusive evidence of any specific cache size - say so! If you can think of better experiments, describe them (perhaps something other than the time command would make this easier?).
| Notes |
IMPORTANT: You are not trying to determine how much main memory is available! Don't attempt to use more memory than the machine actually has, or you will slow the machine to a crawl.!
Don't know how to get started? Check out the description of the "memory mountain" in the text and lecture notes.