
TL;DR
This paper introduces a novel 'garden' approach for developing custom HPC software that isolates dependencies, ensures reproducible builds, supports multiple versions, and enables deterministic rollbacks, improving stability and flexibility.
Contribution
It presents the first system to expose all past software versions and support deterministic single-package rollback without impacting other software.
Findings
Enables isolated, reproducible software builds on Linux.
Supports multiple concurrent software versions.
Facilitates reliable upgrade and rollback processes.
Abstract
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsScientific Computing and Data Management · Distributed and Parallel Computing Systems · Advanced Data Storage Technologies
