Software Delivery Repository

Software Delivery Repository   |   Getting Started   |   FAQ  |  Repositories

Linux for Fabric Attached Memory Emulation


The Machine from Hewlett Packard Enterprise is a research prototype of our architecture for the future of computing. The core of this architecture is Fabric-Attached Memory or FAM. But how was software for it developed before the hardware existed?

Fabric Attached Memory Emulation (FAME) provides a script and support files to create a set of virtual machines (VMs). These QEMU images represent a cluster of nodes connected through an emulated memory fabric via the IVSHMEM facility of QEMU. This multi-node setup allows the user to explore software development ideas for this model of computing which we call MDC: Memory-Driven Computing.

This Software Delivery Repository provides pre-built versions of the additional pieces necessary to construct a Fabric Attached Memory Emulation using an existing Linux Debian "stretch" or Ubuntu 16 (or later) distribution. The emulation configuration script mentioned above relies on this repo. This repo also provides packages for two more use cases:

ARM64 binaries for The Machine prototype
The nodes of actual instances of The Machine are based on ARM processors. This repo provides ARM versions of the amd64 Debian packages (used by FAME) for use on The Machine.
FAM on SuperDome Flex
HPE SuperDome Flex supercomputers have the ability to connect independent partitions via a global address space. This feature can be used as a surrogate "fabric" highly similar to that found in The Machine. amd64 packages in this repo are also used in this FAM (as well as FAME).

In addtion, a SLES RPM repo can be found here.

All of the sources for this software are maintained in the GitHub Fabric Attached Memory project, please refer to that for documentation and other details.

The packages in the repo were built under the control of one Docker container, l4fame-build-container. The repo was constructed and harvested from another container, l4fame-repo-container.

Emulation Fabric Attached Memory Emulation configuration utility
l4fame-managerMeta-package describing the components to be installed on the Fabric Attached Memory manager machine.
l4fame-nodeMeta-package describing the components to be installed on each simulated Fabric Attached Memory node.
libfam-atomicApplication library providing low-level atomic memory operations on Fabric Attached Memory.
nvmlModified version of the NVML library exposing interfaces for managing persistent memory.
linux-l4fameLinux kernel with additions to connect a node to Fabric Attached Memory
tm-libfuseHelper library used on each l4fame node in the implementation of the Librarian File System.
tm-librarianGlobal file system used to manage Fabric Attached Memory.

Subscribe to the Debian "testing" l4fame repository

Cut-n-paste the following lines into a new file /etc/apt/sources.list.d/hpefame.list on your system:

Debian logo # Details at
deb [trusted=yes] testing main
deb-src [trusted=yes] testing main

Then run
$ sudo apt-get update

List the packages in the repository

$ aptitude search "?origin(l4fame)"

Update the local apt indexes

$ sudo apt update

Search for a specific package

Browse the debs or, from your installed system, $ apt search <packagename>

Install a specific package

$ sudo apt install <packagename>

Subscribe SLES12 or later to the l4fame repository

Add this repo for Zypper or YaST2:

No signing.