Next: Revised Schedule
Up: CS 15-740 Computer Architecture
Previous: Meeting Our Milestone
There have been numerous surprises so far in our project. Perhaps the greatest surprise we
have encountered thus far is the discovery of a partially complete MMX enhanced JPEG
library. This saved us from doing much of that work ourselves, and compelled us to broaden
the scope of our project. We also have been somewhat surprised by the limitation of our
tools for performance measurement. Although the Pentium processors have numerous
performance counters, the statistic we most wish examine, the amount of time wasted by the
CPU due to cache misses, is not fully represented by any of them. In order to deal with
this problem we have examined a large number of possible methodologies. We considered
trying to calculate the number based on a method suggested by Anastassia Ailamaki, but
found that this required detailed estimates from Pentium experts that are not available to
us, as well as a difficult computation and approximations that reduce the validity of the
results. We also have looked at several metrics that are provided by VTune in the hopes
that they would yield some good approximation to the statistic we are interested in, we are
still in the process of examining these numbers. Additionally we came up with the idea of
simply changing all the code to point to a single static memory buffer, making the output
senseless, but effectively simulating a perfect cache. This works well for programs where
the control flow is not dependent on the data. Fortunately this is true for a large class
of multimedia applications, especially those that involve decoding. In this way we can run
the program with and without this special memory work-around, and thereby measure the
amount of time that was wasted due to memory accesses. Additionally we have considered
running our experiments on an older Pentium machine with a simpler pipeline which would
allow us to more directly obtain the desired information. This has negative aspects as
well, especially in that it reduces the relevance of our results as it is obsolete
technology, and also, it is difficult to procure such an old machine. Another category of
surprises that have come up is the discovery of new literature. Originally, we thought that
there was not a great deal of literature in this field. However, as we investigated
further, we found several papers that contained overlap with our original project idea.
This caused us to rethink our focus, and although none of these papers has exactly
duplicated the work we are doing, they have caused us to focus our inquiry on very specific
areas that have been neglected in these other works.
Next: Revised Schedule
Up: CS 15-740 Computer Architecture
Previous: Meeting Our Milestone
Jernej Barbic
2001-11-17