Computer Science ETDs

Publication Date

Spring 5-16-2020

Abstract

A scientific conclusion requires falsifiable evidence. Results from distributed systems research are often difficult to reproduce because these systems consist of multiple nodes, each running independent system software and communicating across inter-node devices. This work motivates, describes, and demonstrates a reproducible application platform for distributed computing systems based on a layered, container-based software stack. This system effectively moves all application software dependencies from the host to a portable container. Each layer represents a particular functionality of the software stack. The layers are modular and extensible so that results are not only repeatable, but they can also be built on to produce new results. This platform was developed to validate the scaling behavior of an application performance model. It was first run on one HPC system (CARC-Wheeler). It was modified slightly and then run on a second HPC system (TACC-Stampede2). The reproducible application platform gives researchers more flexibility to use and conveniently share custom software stacks, reduces the burden on system administrators to maintain libraries required for individual research efforts, and eliminates the effort required to re-use previous work in related experiments.

Language

English

Keywords

distributed systems, cloud, HPC, container, virtualization, workflows

Document Type

Thesis

Degree Name

Computer Science

Level of Degree

Masters

Department Name

Department of Computer Science

First Committee Member (Chair)

Patrick Bridges

Second Committee Member

G. Matthew Fricke

Third Committee Member

Patrick Widener

Fourth Committee Member

John Patchett

Share

COinS