Files in this item
|(no description provided)|
|Title:||Performance Evaluation of Multiple Register Set Architectures and Cache Memories|
|Author(s):||Eickemeyer, Richard James|
|Doctoral Committee Chair(s):||Patel, Janak H.|
|Department / Program:||Electrical Engineering|
|Degree Granting Institution:||University of Illinois at Urbana-Champaign|
|Subject(s):||Engineering, Electronics and Electrical
|Abstract:||Multiple register set architectures have been proposed as a method to reduce the large amount of memory traffic associated with high-level language procedure calls. In this thesis, the effect on overall processor memory traffic of multiple register sets is characterized for a set of real programs. To accomplish this, traces of programs' address and register references were collected on a VAX-11/780. These traces were then mapped to the traces that could have come from a hypothetical VAX with multiple register sets. The memory traffic for various numbers of register sets and numbers of registers per set were compared to the memory traffic in the original trace. The results show a 10-20% reduction in memory traffic using the multiple register sets; the results vary among programs. The effect of context switch was also measured and found not to be significant.
A synthetic benchmark program, Dhampstone, was written in the C language with the goal to accurately characterize program behavior with and without multiple register sets. To construct the program, existing program statistics were supplemented with measurements of I/O and C language register declarations. The change in memory traffic with multiple register sets on Dhampstone was compared to the change measured in the real programs; there was good agreement for a variety of numbers of sets and numbers of registers per set.
Multiple register sets were compared to other local memory organizations using a chip area model and a memory access time model. These organizations consisted of a variety of different cache organizations. Combinations of different caches and multiple register sets were also examined. With a small chip area, a top-of-stack cache performed better than multiple register sets. For larger chip areas, an instruction cache, or better yet, an instruction cache plus a small top-of-stack cache, perform well. At the largest cache sizes studied, a full cache is required, so that each memory reference could potentially be in the cache. Adding multiple register sets to a full cache improves performance slightly for larger chip areas.
Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1988.
|Date Available in IDEALS:||2014-12-15|
This item appears in the following Collection(s)
Dissertations and Theses - Electrical and Computer Engineering
Dissertations and Theses in Electrical and Computer Engineering
Graduate Dissertations and Theses at Illinois
Graduate Theses and Dissertations at Illinois