Skip to navigation
Skip to content
Computer Languages & Systems Software
CLaSS Group Research
-
The Pagoda Project
The Pagoda Project researches and develops cutting-edge software for implementing high-performance applications and software infrastructure under the Partitioned Global Address Space (PGAS) model. The project is primarily funded by the Exascale Computing Project, and interacts with partner projects in industry, government and academia.
The Pagoda software stack consists of a communication portability layer, GASNet, and productivity layers: UPC++ and Berkeley UPC.
-
GASNet
GASNet is a language-independent, networking middleware layer that provides network-independent, high-performance communication primitives including Remote Memory Access (RMA) and Active Messages (AM). It has been used to implement parallel programming models and libraries such as UPC, UPC++, Co-Array Fortran, Legion, Chapel, and many others. The interface is primarily intended as a compilation target and for use by runtime library writers (as opposed to end users), and the primary goals are high performance, interface portability, and expressiveness.
-
UPC++
UPC++ is a C++ library that supports Partitioned Global Address Space (PGAS) programming, and is designed to interoperate smoothly and efficiently with MPI, OpenMP, CUDA and AMTs. It leverages GASNet-EX to deliver low-overhead, fine-grained communication, including Remote Memory Access (RMA) and Remote Procedure Call (RPC).
-
Berkeley UPC
Unified Parallel C (UPC) is a PGAS extension of the C programming language designed for high performance computing on large-scale parallel machines. The language provides a uniform programming model for both shared and distributed memory hardware. Berkeley UPC is a portable, high-performance implementation of the UPC language using GASNet for communication.
-
ExaBiome
The ExaBiome project is developing HipMer, the first high-quality end-to-end de novo genome assembler designed for extreme scale analysis. HipMer is a PGAS application, and the main software dependencies are the UPC language and UPC++ library, both of which use GASNet-EX for communication. HipMer’s high performance is based on several novel algorithmic advancements attained by leveraging the efficiency and programmability of the one-sided communication capabilities of the Unified Parallel C (UPC), and RPC calls from the UPC++ Library, including optimized high-frequency k-mer analysis, communication avoiding de Bruijn graph traversal, advanced I/O optimization, and extensive parallelization across the numerous and complex application phases.
-
SIMCoV
Spatial Immune Model of Coronavirus (SIMCoV) is a scalable computational model written in UPC++ that simulates hundreds of millions of lung cells, including respiratory epithelial cells and T cells. SIMCoV replicates viral growth dynamics observed in patients and shows that spatially dispersed infections lead to increased viral loads. The model shows how the timing and strength of the T cell response can affect viral persistence, oscillations, and control. By incorporating spatial interactions, SIMCoV provides a parsimonious explanation for the dramatically different viral load trajectories among patients by varying only the number of initial sites of infection, and the magnitude and timing of the T cell immune response.
-
symPACK
symPACK is a sparse symmetric matrix direct linear solver, written using UPC++
-
TOP500 Supercomputing Sites
The TOP500 project was started in 1993 to provide a reliable basis for tracking and detecting trends in high-performance computing. Twice a year, a list of the sites operating the 500 most powerful computer systems is assembled and released. The best performance on the Linpack benchmark is used as performance measure for ranking the computer systems. The list contains a variety of information including the system specifications and its major application areas.DevelopersHans…
-
Fortran at LBNL
The LBNL CLaSS group, led by Dr. Damian Rouson, is pursuing several related efforts with a goal of accelerating adoption of parallel Fortran features in the HPC community. Projects include active participation in the Fortran language standard committees, the development of a portable parallel runtime for Fortran, contributions to the LLVM flang compiler, and several HPC-relevant packages written in modern Fortran.
-
Caffeine: CoArray Fortran Framework of Efficient Interfaces to Network Environments
Caffeine is a parallel runtime library that aims to support Fortran compilers with a programming-model-agnostic application binary interface (ABI) to various communication libraries. Current work is on supporting the ABI with the GASNet-EX or with POSIX processes. Future plans include support for an alternative MPI back end.
-
Inference Engine
Inference-Engine supports research in concurrent, large-batch inference and training of deep, feed-forward neural networks. Inference-Engine targets high-performance computing (HPC) applications with performance-critical inference and training needs.
-
nexport
nexport is a lightweight Python package which empowers deep learning developers in exporting the trainable parameters of deep neural networks to human-readable and transferable file types
-
Past CLaSS Group Projects
Projects from current and former CLaSS members that have been replaced by follow-on work or are no longer actively being…