What is HPC?

The High-Performance Computing (HPC) Laboratory is a part of the Department of Computer and Information Science at the University of Oregon. The High Performance Computing Laboratory directed by Prof. Boyana Norris conducts research in several areas of high-performance computing (HPC), including static analysis of software for building performance models and detecting security vulnerabilities, source-to-source approaches for semantics-preserving (e.g., performance optimization) and semantics-modifying (e.g., security vulnerability fixes, automatic differentiation) transformations. The HPC Lab also performs research in modeling runtime characteristics of software, and developing and employing numerical optimization techniques for maximizing multiple runtime objectives (performance, energy efficiency, resilience, etc.).

Short-term research projects are available for advanced undergrads or MS students.


Feb 21, 2018

Samuel Pollard passed his area exam and advanced to candidacy.

Feb 11, 2018

The work-in-progress paper "A Performance and Recommendation System for Parallel Graph Processing Implementations" by Samuel Pollard, Sudharshan Srinivasan, and Boyana Norris was accepted for publication at ICPE 2019.

Aug 14, 2018

The paper "Evaluation of an Interference-free Node Allocation Policy on Fat-tree Clusters" by Samuel Pollard, N. Jain, S. Herbein, and A. Bhatele was accepted for publication in the 2018 International Conference for High Performance Computing, Networking, Storage, and Analysis (SC '18).

Jul 31, 2018

The paper "A Shared-Memory Algorithm for Updating Tree-Based Properties of Large Dynamic Networks" by Sriram Srinivasan, Samuel Pollard, Boyana Norris, Sajal K. Das, and Sanjukta Bhowmick was accepted to the journal IEEE Transactions on Big Data.

More news can be found at our news archive.

Open projects

Undergraduate / short-term graduate: these are term-long projects achiavable with up to 10-15 hours per week effort. Experience or background that may be helpful is listed in square brackets. Interested students should contact Prof. Norris.

  • - Software development practices analysis through revision control data mining and natural language processing
  • - Performance analysis and optimization of scientific codes (usually these are parallel applications using MPI, OpenMP, or TBB). We typically have a number of scientific applications that we analyze and optimize. Some experience with performance analysis is helpful, but not required.
  • - Extract the class relationships (inheritence and containment) from C++ software [330, using/writing parsers]
  • - Using binary analysis to identify computational patterns and anti-patterns (for performance or power efficiency) [314, 429]
  • - Text analysis of selected portions of the scientific literature to discover and categorize use cases for scientific software [data mining]

The HPC Lab is generously supported by donations and grants from the Department of Energy (DOE), National Science Foundation (NSF), and RNET Technologies, Inc (Dayton, OH).

Relevant conferences and workshops.