|
From: Bill R. Jr. <bru...@te...> - 2003-10-30 22:53:52
|
Hi,
I am trying to optimize cache usage in several large applications
(that I didn't write), and I'd like to measure the "cache temperature"
of various fields in the principal data structures so that I can
1. Group together fields that are "hot".
2. Perhaps move the bulk of "cold" data into separately allocated
structures.
3. Compact some fields into Fortran-style arrays and use indexing.
I am curious as to whether there is any work-in-progress on a skin that
might aid this type of analysis, or whether anyone has any particular
design advice. Both valgrind and oprofile are good at identifying
particular bits of code that cause cache misses (from which one can
identify which field is being accessed, etc.), but the analysis becomes
more difficult when cache misses are spread more uniformly throughout
the code.
Thanks,
Bill Rugolsky
|