Show simple item record

dc.contributor.authorAlomairy, Rabab
dc.contributor.authorLtaief, Hatem
dc.contributor.authorAbduljabbar, Mustafa
dc.contributor.authorKeyes, David
dc.description.abstractWe introduce AL4SAN, a lightweight library for abstracting the APIs of task-based runtime engines. AL4SAN unifies the expression of tasks and their data dependencies. It supports various dynamic runtime systems relying on compiler technology and user-defined APIs. It enables an application to employ different runtimes and their respective scheduling components, while providing user obliviousness to the underlying hardware configurations. AL4SAN exposes common front-end APIs and connects to different back end runtimes. Experiments on performance and overhead assessments are reported on various shared- and distributed-memory possibly hardware accelerator-equipped systems. A range of workloads, from compute-bound to memory-bound regimes, are employed as proxies for current scientific applications. The low overhead (less than 10%) achieved using a variety of workloads enables AL4SAN to be deployed for fast development of task-based numerical algorithms. More interestingly, AL4SAN enables runtime interoperability by switching runtimes at runtime. Blending runtime systems permits to achieve a twofold speedup on a task-based generalized symmetric eigenvalue solver, relative to state-of-the-art implementations. The ultimate goal of AL4SAN is not to create a new runtime, but to strengthen co-design of existing runtimes/applications, while facilitating user productivity and code portability. The code of AL4SAN is freely available at, with extensions in progress.
dc.rightsCC0 1.0 Universal
dc.subjectTask-Based Programming Model, Dynamic Runtime Systems, Abstraction Layer, API Standardization, User Productivity, LLVM Compiler Infrastructure, Runtime Interoperability.
dc.titleAbstraction Layer For Standardizing APIs of Task-Based Engines
dc.typeTechnical Report
dc.contributor.departmentComputer, Electrical and Mathematical Science and Engineering Division (CEMSE)
dc.contributor.institutionExtreme Computing Research Center (ECRC)

Files in this item

Main article

This item appears in the following Collection(s)

Show simple item record

CC0 1.0 Universal
Except where otherwise noted, this item's license is described as CC0 1.0 Universal