Software Technology

Programming Models and Runtimes

Legion: Enhancing and Hardening the Legion Programming System

Principal Investigator: Pat McCormick, Los Alamos National Laboratory

Legion is a programming and runtime system that automates many aspects of achieving high performance, providing performance optimization and performance portability. Many applications will face significant challenges in realizing sustained performance on exascale systems. Increasing hardware specialization, power and cost constraints will result in exascale systems with order billion way concurrency, a growing gap between memory and network latency and floating point performance, heterogeneity in both processing and memory capabilities and more dynamic performance characteristics due to power capping and highly tapered network topologies. Achieving sustained exaflop performance will require significant advances in latency hiding, minimizing data movement, and the ability to extract additional levels of parallelism from applications. An additional challenge is that these applications will need to achieve this level of performance on two or more radically different system architectures, as typified by the future CORAL and APEX systems.