Programs and software are complex artifacts. Understanding specific aspects of their behavior involves a combination of software engineering tools, programming language analysis and and understanding of the architectural issues underlying the particular problem being addressed.
Current and former students have developed tools for understand program behavior.
- The Mixed Parallel Heterogenous Partitioning (MPHP) project bridges architecture and program analysis to provide a single language method to specifying, scheduling and executing parallel programs on heterogenous architectures.
- Shadow Profiling: A framework for parallel instrumentation tools.
- LoopSampler: Collecting loop-centric profiles to discover parallelization candidates.
- Chainsaw: Using Binary Matching for Relative Instruction Mix
- OptiScope: Performance Accountability for Optimizing Compilers
- Tipp Moseley, Dirk Grunwald, Ramesh V. Peri, “Chainsaw: Using Binary Matching for Relative Instruction Mix” Proceedings of the International Conference on Parallel Architectures and Compilation Techniques (PACT). September, 2009.
- OptiScope: Performance Accountability for Optimizing Compilers Tipp Moseley, Dirk Grunwald, Ramesh V. Peri. Proceedings of the International Symposium on Code Generation and Optimization (CGO). March, 2009. Voted best student presentation by conference attendees.