Section: Software and Platforms
Other software
For the materials physics applications, a lot of development will be done in the context of ANR projects (NOSSI and OPTIDIS , see Section 4.1 ) in collaboration with LaBRI, CPMOH, IPREM, EPFL and with CEA Saclay and BruyèreleChâtel.

Participant : Olivier Coulaud [corresponding member] .
FAST is a linear response time dependent density functional program for computing the electronic absorption spectrum of molecular systems. It uses an O(N3) linear response method based on finite numerical atomic orbitals and deflation of linear dependence in atomic orbital product space. This version is designed to work with data produced by the SIESTA DFT code. The code produces as principal output a numerical absorption spectrum (complex part of the polarisability, loosely called the polarisability below) and a list of transition energies and oscillator strengths deduced from fitting Lorentzians to the numerical spectrum. Considering the absence of hybrid functionals in SIESTA and that concerning calculation of spectra, generalized gradient Hamiltonians are not usually considered to be notably better than the local density approximation, the present release of FAST works only with LDA, which despite its limitations, has provided useful results on the systems to which the present authors have applied it. The FAST library is available at http://people.bordeaux.inria.fr/coulaud/Softwares/FAST/index.html .

Participant : Olivier Coulaud [corresponding member] .
OptiDis is a new code for large scale dislocation dynamics simulations. its aim is to simulate real life dislocation densities (up until $5.{10}^{22}$ dislocations/${m}^{2}$) in order to understand plastic deformation and study strain hardening. The main application is to observe and understand plastic deformation on irradiated zirconium. Zirconium alloys is the first containment barrier against the dissemination of radioactive elements. More precisely, with neutron irradiated zirconium alloys we are talking of channeling mechanism, which mean to stick with the reality,more than tens of thousands of induced loops so ${10}^{8}$ degrees of freedom in the simulation.
The code is based on Numodis code developed at CEA Saclay and the ScalFMM library developed in our Inria project. The code is written in C++ language and using the last features of C++11. One of the main aspects is the hybrid parallelism MPI/OpenMP that gives the software the ability to scale on large cluster while the computation load rise. In order to achieve that, we use different level of parallelism. First of all, the simulation box is spread over MPI process, we then use a thinner level for threads, dividing the domain using an Octree representation. All theses parts are driven by the ScalFMM library. On the last level our data are stored in an adaptive structure absorbing dynamic of this kind of simulation and handling well task parallelism.
The two following packages are mainly designed and developed in the context of a US initiative led by ICL and to which we closely collaborate through the associate team MORSE .

Participant : Mathieu Faverge [corresponding member] .
The PLASMA (Parallel Linear Algebra for Scalable Multicore Architectures) project aims to address the critical and highly disruptive situation that is facing the Linear Algebra and High Performance Computing community due to the introduction of multicore architectures.
The PLASMA ultimate goal is to create software frameworks that enable programmers to simplify the process of developing applications that can achieve both high performance and portability across a range of new architectures.
The development of programming models that enforce asynchronous, out of order scheduling of operations is the concept used as the basis for the definition of a scalable yet highly efficient software framework for Computational Linear Algebra applications.
The PLASMA library is available at http://icl.cs.utk.edu/plasma .

Participant : Mathieu Faverge [corresponding member] .
PaRSEC Parallel Runtime Scheduling and Execution Controller, is a generic framework for architecture aware scheduling and management of microtasks on distributed manycore heterogeneous architectures. Applications we consider can be expressed as a Direct Acyclic Graph of tasks with labeled edges designating data dependencies. DAGs are represented in a compact problemsize independent format that can be queried ondemand to discover data dependencies in a totally distributed fashion. PaRSEC assigns computation threads to the cores, overlaps communications and computations and uses a dynamic, fullydistributed scheduler based on architectural features such as NUMA nodes and algorithmic features such as data reuse.
The framework includes libraries, a runtime system, and development tools to help application developers tackle the difficult task of porting their applications to highly heterogeneous and diverse environment.
DPLASMA (Distributed Parallel Linear Algebra Software for Multicore Architectures) is the leading implementation of a dense linear algebra package for distributed heterogeneous systems. It is designed to deliver sustained performance for distributed systems where each node featuring multiple sockets of multicore processors, and if available, accelerators like GPUs or Intel Xeon Phi. DPLASMA achieves this objective through the state of the art PaRSEC runtime, porting the PLASMA algorithms to the distributed memory realm.
The PaRSEC runtime and the DPLASMA library are available at http://icl.cs.utk.edu/parsec .