Per-instance type shifting for effective data-centric software prefetching in .NET.
Published: 2005
Language: eng
Number of pages: 91
Description: Object oriented languages such as C++, Java, and C# support good software engineering practice and provide rich sets of standard collection classes. Using standard collection classes, however, has a performance cost, due to error checking and encapsulation code.We implement a data-centric hardware-feedback-directed run-time approach to software prefetching collection-based applications in the Mono open source implementation of the .NET framework. We augment collection class instances to maintain a history of their access behaviour, which they then use to prefetch future accesses. We manage run-time profiling overheads and monitor performance on a per-instance basis using our novel per-instance type shifting technique. We are unaware of any other technique that performs per-instance modification of methods in object oriented languages.We evaluate our data-centric approach on applications using ArrayList, LinkedList, and BinaryTree collection classes and show performance improvements over hardware prefetching alone of up to 18.9%, 4.2%, and 5.3%, respectively.
Notes: Source: Masters Abstracts International, Volume: 44-01, page: 0415.

Thesis (M.A.Sc.)--University of Toronto, 2005.

Electronic version licensed for access by U. of T. users.

ROBARTS MICROTEXT copy on microfiche.