Memory-Driven Computing heralds a fundamental shift in how we think about computing in a world with abundant non-volatile memory. Get in on the ground floor and be part of the open source community learning first hand how to work with these new programming models and tools.
We invite developers to start thinking about what it means to program for the Memory-Driven Computing architecture of The Machine-- massive pools of non-volatile memory, fast memory fabric and task-specific processing.
To simplify the developer experience, we are exposing familiar programming environments like Linux and Portable Operating System Interface APIs with programming languages like C/C++ and Java, making the performance advantages of massive memory on fabrics available to you in a way that lets you be productive quickly.
Here are the latest code contributions to The Machine developer toolkit that are available:
Linux for The Machine
Hewlett Packard Labs is adapting the Linux Operating System to support Memory-Driven Computing architectures as exemplified by The Machine project. Modifications to Linux include support for fabric – attached persistent memory, block device abstractions that reach persistent memory and more. Also included is an emulator that can be used by developers to explore the new APIs on industry standard machines.
Performance emulation for non-volatile memory latency and bandwidth
A DRAM-based performance emulation platform that leverages features available in commodity hardware to emulate different latency and bandwidth characteristics of future byte-addressable NVM technologies.
Fabric Attached Memory Emulation
An environment designed to allow users to explore the new architectural paradigm of The Machine, called Memory-Driven Computing. The emulation employs virtual machines performing the role of “nodes” in The Machine. Explore shared, global memory space and expect it to behave like Memory-Driven Computing on The Machine. Linux for Fabric-Attached Memory Emulation is also available to provide software for The Machine APIs and allow you to explore Memory-Driven Computing using current hardware.
During the design phase of the prototype, simulations had predicted that the speed of this architecture would improve current computing by multiple orders of magnitude. Novel programming tools developed to harness massive, shared memory have shown execution speeds improved by up to 100-8,000 times on a range of emerging workloads in areas such as image search, graph inference and financial modelling. These results were achieved using simulations of The Machine running on existing high-performance HPE systems such as HPE Integrity Superdome X and HPE ProLiant servers.
In the coming months, we intend to enhance this code as well as release additional contributions of code. Explore the Developer Experience for The Machine demo to see how The Machine’s operating system, programming models and tools work together to significantly improve application scale and performance.
Read the blog posts and some of the press coverage associated with the announcement of The Machine.