John Stuart Harper

Learn More
This paper describes a methodology that provides detailed predictive performance information throughout the software design and implementation cycles. It is struc-tured around a hierarchy of performance models that describe the computing system in terms of its software, parallelization, and hardware components. The methodology is illustrated with an initial(More)
Cache behavior is complex and inherently unstable, yet is a critical factor aaecting program performance. A method of evaluating cache performance is required, both to give quantitative predictions of miss-ratio, and information to guide optimization of cache use. Traditional cache simulation gives accurate predictions of miss-ratio, but little to direct(More)
This paper describes a toolset, PACE, that provides detailed predictive performance information throughout the implementation and execution stages of an application. It is structured around a hierarchy of performance models that describes distributed computing systems in terms of its software, parallelisation and hardware components, providing performance(More)
The development of efficient software for high performance systems requires a number of decisions to be made by software developer. These may include selecting a parallelisation strategy, data mapping, system configuration, and other critical parameters. This selection is typically a complex procedure and takes place based on the intuition of the(More)
There is a wide range of performance models being developed for the analysis of present and future generation systems. A major concern in using these models however, is the provision of realistic application workload information. There is a need for a common interface that couples generic workload information to the underlying hardware characteristics. In(More)