UNIX network programming
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing
PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing
SCIRun: a scientific programming environment for computational steering
Supercomputing '95 Proceedings of the 1995 ACM/IEEE conference on Supercomputing
Time, clocks, and the ordering of events in a distributed system
Communications of the ACM
The Autopilot performance-directed adaptive control system
Future Generation Computer Systems - I. High Performance Numerical Methods and Applications. II. Performance Data Mining: Automated Diagnosis, Adaption, and Optimization
Falcon: on-line monitoring and steering of large-scale parallel programs
FRONTIERS '95 Proceedings of the Fifth Symposium on the Frontiers of Massively Parallel Computation (Frontiers'95)
Scheduling From the Perspective of the Application
HPDC '96 Proceedings of the 5th IEEE International Symposium on High Performance Distributed Computing
Using Information from Prior Runs to Improve Automated Tuning Systems
Proceedings of the 2004 ACM/IEEE conference on Supercomputing
An API for Runtime Code Patching
International Journal of High Performance Computing Applications
Rule-based automatic software performance diagnosis and improvement
WOSP '08 Proceedings of the 7th international workshop on Software and performance
Reducing search space of auto-tuners using parallel patterns
IWMSE '09 Proceedings of the 2009 ICSE Workshop on Multicore Software Engineering
Computer Languages, Systems and Structures
Rule-based automatic software performance diagnosis and improvement
Performance Evaluation
A language-based tuning mechanism for task and pipeline parallelism
Euro-Par'10 Proceedings of the 16th international Euro-Par conference on Parallel processing: Part II
MATE: toward scalable automated and dynamic performance tuning environment
PARA'10 Proceedings of the 10th international conference on Applied Parallel and Scientific Computing - Volume 2
Rule-based automatic software performance diagnosis and improvement
Performance Evaluation
Hi-index | 0.00 |
The main goal of parallel/distributed applications is to solve a considered problem as fast as possible using the minimum amount of system resources. In this context, the application performance becomes a crucial issue and developers of parallel/distributed applications must optimize them to provide high performance computation. Typically, to improve performance, developers analyze the application behavior, search for bottlenecks, determine their causes and change the source code. In this paper, we present the dynamic, automatic tuning approach. This approach aims at automating these tasks and minimizing user intervention. An application is monitored, its performance bottlenecks are detected and it is modified automatically during the execution, without recompiling or re-running it. The modifications introduced adapt the application behavior to the changing conditions. This paper describes design and implementation of the MATE environment (Monitoring, Analysis and Tuning Environment), which we have developed as a step towards dynamically tuning parallel/distributed applications.