Portable, Modular Expression of Locality
Title | Portable, Modular Expression of Locality |
Publication Type | Technical Report |
Year of Publication | 1997 |
Authors | Stoutamire, D. |
Other Numbers | 1118 |
Abstract | It is difficult to achieve high performance while programming in the large. In particular, maintaining locality hinders portability and modularity. Existing methodologies are not sufficient: explicit communication and coding for locality require the programmer to violate encapsulation and compositionality of software modules, while automated compiler analysis remains unreliable. This thesis presents a performance model that makes thread and object locality explicit. Zones form a runtime hierarchy that reflects the intended clustering of threads and objects, which are dynamically mapped onto hardware units such as processor clusters, pages, or cache lines. This conceptual indirection allows programmers to reason in the abstract about locality without committing to the hardware of a specific memory system. Zones complement conventional coding for locality and may be added to existing code to improve performance without affecting correctness. The integration of zones into the Sather language is described, including an implementation of memory management customized to parameters of the memory system. |
URL | http://www.icsi.berkeley.edu/ftp/global/pub/techreports/1997/tr-97-056.pdf |
Bibliographic Notes | ICSI Technical Report TR-97-056 |
Abbreviated Authors | D. Stoutamire |
ICSI Publication Type | Technical Report |