Algorithms & Machines - overview
The Algorithms & Machines project (2012–2017) was part of Dome, a joint program between IBM Research – Zurich and Astron, the Netherlands Institute for Radio Astronomy, that also established the Astron & IBM Center for Exascale technology on the Astron campus. In Dome we developed technologies in support for the Square Kilometre Array (SKA), the world's largest radio telecope that is currently being developed. Processing the vast amount of data collected by the SKA will require an exascale computer system.
Exascale system modeling
The mission of Algorithms & Machines was to model an entire exascale system and the software running on it in a way that allows early and fast sizing and design-space exploration.
The following diagram shows the tool flow we developed to achieve this goal.
The IBM Platform-Independent Software Analysis tool extracts software properties such as available parallelism, memory access-patterns and communication behavior. These profiles constitute the software model.
The profiles can only be collected on today's systems which are orders of magnitude smaller than the target size. To predict what they will look like at the exascale an extrapolation tool, IBM Exascale Extrapolator, synthesizes scaling models for each property, including the number of threads.
The hardware model, called IBM ExaBounds, captures the performance constraints and dependencies of a computer system in analytical formulas. Given a hardware configuration and a software model, these formulas can be solved for performance, power and cost metrics.
Taken together, this tool flow enables system designers to trade off performance, power consumption and cost against each other. The result is an estimate of the achievable performance as well as the required power and cost envelope. The latter two are required for infrastructure planning and budgeting.
Given the SKA's magnitude, it's remote location and the large number of funding agencies involved, getting an early handle on the fundamental system aspects is of crucial importance.
- IBM Appresentor – generates the set of software profiles the IBM Exascale Extrapolator requires as input.
- IBM Memory-Scheduler-Agnostic Power Model – an accurate analytical DRAM power model, integrated in IBM ExaBounds.
We have open-sourced the entire tool chain and relased the tools under our GitHub organization.