SEMay 1, 2013

The Software Garden

arXiv:1305.0152v11 citations
Originality Synthesis-oriented
AI Analysis

This addresses instability and versioning issues in HPC software development, though it appears incremental as a practical method building on existing isolation concepts.

The paper tackles the problem of developing custom HPC software with dependencies on unstable OS libraries by introducing a 'garden' method that isolates packages for deterministic builds and supports multiple versions. It demonstrates this with a C++ high-performance trading system application.

This paper describes a practical method of developing custom HPC software products using a store of libraries and tools independent from the OS called a "garden". All dependencies from the product to libraries of the underlying OS distribution are carefully severed, isolating the package from instability due to system upgrades and ensuring repeatable deterministic builds on different flavors of Linux. The method also guarantees multiple versions of a software product may exist together and function correctly, greatly facilitating upgrade and rollback. The method is the first known system to expose all past software versions to the designer, and support deterministic single-package rollback without affecting other installed software. An application of this method for building a high performance trading system in C++ is presented.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes