Laboratories - High Performance Computing
Global Computing Laboratory (GCLab)
203 Smith Hall, Professor Michela Taufer.
The Global Computing Laboratory focuses on various aspects of high performance computing (HPC) and its application to the sciences. We are engaged in the design and testing of efficient computational algorithms and adaptive scheduling policies for scientific computing on GPUs, cloud computing, and volunteer computing. Interdisciplinary research with scientists and engineers in fields such as chemistry and chemical engineering, pharmaceutical sciences, seismology, and mathematics is at the core of our activities and philosophy.
Computational Research and Programming Lab
221 Smith Hall, Professor Sunita Chandrasekaran.
The Computational Research and Programming Lab (CRPL) focuses on exploring programming models and its language features to parallelize real-world scientific applications on large scale computing processors consisting of hundreds to thousands of CPUs and accelerators such as GPUs or co-processors such as Xeon Phi or even specialized processors such as DSPs, FPGAs. We explore compiler and runtime techniques to optimize data movement for High Performance Computing (HPC). We also explore deep learning techniques for image classification using power-efficient embedded platforms. Scientific domains that we focus include Molecular Dynamics and Bioinformatics. We also develop validation and verification suites to check for validation and corrections of programming models' implementations in compilers.
119 Elkton Road, Professor David Saunders, Research Associate Professor David Wood.
We design algorithms and high performance implementations for exact linear algebra computation. Exact linear algebra with matrices of integers is harder than the more widely used approximate linear algebra in floating point. Our work contributes to LinBox, a software library for solving exact systems exactly. It is developed by a team of researchers in the US, France, and Canada
208 Smith Hall, Professor John Cavazos.
The Cavazos Laboratory conducts research on the application of machine learning techniques to build intelligent software systems. We work on intelligent and iterative compilation and auto-tuning for computer systems, spanning embedded computers to large-scale supercomputers. We perform research in the construction and tuning of compilers and in using machine-learning algorithms to solve hard systems problems.
Software Analysis and Compilation Laboratory
213 Smith Hall, Professor Lori Pollock.
Our research focuses on program analysis to automate and semi-automate tedious and error-prone tasks typically performed by software engineers, testers, and scientists. Current research projects include applying natural language processing techniques to perform textual analysis of software artifacts and using that information for automatically generating documentation from source code, improving code search and feature location, and improving other software maintenance tools. We are also investigating various aspects of green software engineering to enable software designers to make energy-conscious design decisions. In software testing, we are developing techniques to automatically generate tests for web applications. Other projects focus on optimizing compilers for modern parallel architectures.
Verified Software Laboratory
421 Smith Hall, Professor Stephen Siegel.
The VSL conducts research into one of the most important problems in Software Engineering: how to develop verifiably correct complex software systems. Currently, the VSL is focusing on parallel programs used for scientific computation and is developing tools that can find defects in these programs or establish their correctness. These tools are based on techniques from logic, compiler theory, symbolic computation, and model checking.