Hierarchically Tiled Array as a High-Level Abstraction for Codelets

The move from terascale to exascale systems is challenging in terms of energy and power consumption, resilience, storage, concurrency, and parallelism. These challenges require new fine-grain execution models to support the concurrent execution of millions or even billions of threads on the exascale machines. The most promising approaches are those based on the codelet execution model, which provide a flexible programming interface that allows the expression of all kinds of parallelism with fine-tuning opportunities. We propose using Hierarchically Tiled Array (HTA) as a high-level abstraction for codelets to improve the programmability and readability of programs while preserving the good performance and scalability provided by the codelet execution model.