Nanos++ is a parallel runtime library aimed at fast prototyping developed by the Programming Models group at the Barcelona Supercomputing Center. Nanos++ is mainly used together with the Mercurium compiler to implement the OmpSs programming model (an extension to the OpenMP programming model based only in tasks). Both tools also implement OpenMP 3.1 features and include some additional extensions (some of them also introduced in following OpenMP releases). The runtime provides several services to support task parallelism using a synchronization mechanism based on data-dependencies. Data parallelism is also supported by means of services mapped on top of its task support. Task are implemented as user-level threads when possible (currently x86, x86-64, ia64, arm, aarch64, ppc32 and ppc64 are supported). It also provides support for maintaining coherence across different address spaces (such as with GPUs or cluster nodes) by means of a directory/cache mechanism. The main purpose of Nanos++ RTL is to be used in research of parallel programming environments. Our aim has been to enable easy development of different parts of the runtime so researchers have a platform that allows them to try different mechanisms. As such it is designed to be extensible by means of plugins. The scheduling policy, the throttling policy, the dependence approach, the barrier implementations, slicers and worksharing mechanisms, the instrumentation layer and the architectural dependant level are examples of plugins that developers may easily implement using Nanos++. This extensibility does not come for free. The runtime overheads are slightly increased, but there should be low enough for results to be meaningful except for cases of extreme-fine grain applications. lssndrbarbieri@gmail.com Alessandro Barbieri https://github.com/bsc-pm/nanox/issues bsc-pm/nanox Enables Allocator module Enables ayudame support from sys-cluster/temanejo build with sys-cluster/dlb library support build with sys-cluster/extrae support Enable sys-cluster/gasnet support Enable sys-apps/hwloc support Enables dev-libs/memkind support Enables Memtracker module Enable generation of debug version Enable generation of instrumentation version Enable generation of instrumentation-debug version Enable generation of performance version Enables openCL support enable dev-libs/papi support Enables task-level resiliency Enables task callback feature enable dev-db/sqlite support Enable user level threads