See BUILD.md.
Using DLAF in a CMake project is extremely easy!
In the following, the variable DLAF_INSTALL_PREFIX
is set to where DLAF is installed. In case you used spack for installing DLAF, you can easily set it with:
export DLAF_INSTALL_PREFIX=`spack location -i dla-future`
Then, you can configure your project with one of the following:
# By appending the value to the CMAKE_INSTALL_PREFIX
cmake -DCMAKE_INSTALL_PREFIX=${DLAF_INSTALL_PREFIX} ..
# ... or by setting DLAF_DIR
cmake -DDLAF_DIR="$DLAF_INSTALL_PREFIX/lib/cmake" ..
Then, it is just as simple as adding these directives in your CMakeLists.txt
:
find_package(DLAF)
# ... and then for your executable/library target
target_link_libraries(<your_target> PRIVATE DLAF::DLAF)
See DOCUMENTATION.md for the documentation of older versions, or for the instructions to build it.
If you are using DLA-Future, please cite the following paper in addition to this repository:
@InProceedings{10.1007/978-3-031-61763-8_13,
author="Solc{\`a}, Raffaele
and Simberg, Mikael
and Meli, Rocco
and Invernizzi, Alberto
and Reverdell, Auriane
and Biddiscombe, John",
editor="Diehl, Patrick
and Schuchart, Joseph
and Valero-Lara, Pedro
and Bosilca, George",
title="DLA-Future: A Task-Based Linear Algebra Library Which Provides a GPU-Enabled Distributed Eigensolver",
booktitle="Asynchronous Many-Task Systems and Applications",
year="2024",
publisher="Springer Nature Switzerland",
address="Cham",
pages="135--141",
isbn="978-3-031-61763-8"
}
The development of DLAF library would not be possible without support of the following organizations (in alphabetic order):
![]() |
CINECA: Cineca Consorzio Interuniversitario |
![]() |
CSCS: Swiss National Supercomputing Centre |
ETH Zurich: Swiss Federal Institute of Technology Zurich | |
![]() |
PASC: Platform for Advanced Scientific Computing |
![]() |
PRACE: Partnership for Advanced Computing in Europe As part of IP6 WP8 |