Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (11.0%) to scientific vocabulary
Keywords
Repository
DLA-Future
Basic Info
- Host: GitHub
- Owner: eth-cscs
- License: bsd-3-clause
- Language: C++
- Default Branch: master
- Homepage: https://eth-cscs.github.io/DLA-Future/master/
- Size: 17 MB
Statistics
- Stars: 77
- Watchers: 14
- Forks: 15
- Open Issues: 84
- Releases: 15
Topics
Metadata Files
README.md
Distributed Linear Algebra from the Future
DLA-Future is a distributed linear algebra library implemented using C++ std::execution P2300 which provides:
- an asynchronous C++ interface,
- a synchronous C interface,
- a synchronous ScaLAPACK-like C interface (ScaLAPACK drop-in with a subset of ScaLAPACK arguments. E.g. workspace arguments are not present),
- a synchronous ScaLAPACK-like Fortran interface (See DLA-Future-Fortran).
DLA-Future runs on x86 and ARM CPUs as well as NVIDIA and AMD GPUs.
Currently DLA-Future provides the following algorithms which are available in the following interfaces:
| ScaLAPACK Name | Algorithm | C++ API | C API | Scalapack C API |
|----------------|-----------|:-------:|:-----:|:---------------:|
| P[S,D,C,Z]TRMM | Triangular matrix multiplication | ✔️ | ❌ | ❌ |
| P[C,Z]HEMM, P[S,D]SYMM | Hermitian matrix multiplication | ✔️ | ❌ | ❌ |
| P[S,D,C,Z]TRSM | Triangular solver | ✔️ | ❌ | ❌ |
| P[S,D,C,Z]POTRF | Cholesky decomposition | ✔️ | ✔️ | ✔️ |
| P[S,D,C,Z]POTRI | Inverse from Cholesky factor | ✔️ | ✔️ | ✔️ |
| P[S,D,C,Z]TRTRI | Inverse of triangular matrix | ✔️ | ❌ | ❌ |
| P[C,Z]HEEV*, P[S,D]SYEV* | Symmetric / Hermitian eigenvalue solver | ✔️ | ✔️ | ✔️ |
| P[C,Z]HEGV*, P[S,D]SYGV* | Generalized Symmetric / Hermitian eigenvalue solver | ✔️ | ✔️ | ✔️ |
Notes: - The C++ interface provides a non distributed interface as well.
Getting started with DLAF
Build
See BUILD.md.
Link your program/library with DLAF
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:
bash
export DLAF_INSTALL_PREFIX=`spack location -i dla-future`
Then, you can configure your project with one of the following:
```bash
By appending the value to the CMAKEPREFIXPATH
cmake -DCMAKEPREFIXPATH=${DLAFINSTALLPREFIX} ..
... or by setting DLAF_DIR
cmake -DDLAFDIR="$DLAFINSTALL_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
targetlinklibraries(
Documentation
See DOCUMENTATION.md for the documentation of older versions, or for the instructions to build it.
Citing
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"
}
Acknowledgements
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
|||
Owner
- Name: Swiss National Supercomputing Center (CSCS)
- Login: eth-cscs
- Kind: organization
- Location: Lugano, Switzerland
- Website: https://www.cscs.ch/
- Repositories: 105
- Profile: https://github.com/eth-cscs
Citation (CITATION.cff)
cff-version: 1.2.0
title: DLA-Future 0.10.0
repository-code: https://github.com/eth-cscs/DLA-Future
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Raffaele
family-names: Solcà
orcid: 'https://orcid.org/0009-0009-9346-4376'
- given-names: Alberto
family-names: Invernizzi
orcid: 'https://orcid.org/0009-0004-4948-0313'
- given-names: Auriane
family-names: Reverdell
orcid: 'https://orcid.org/0000-0002-5531-0458'
- given-names: John
family-names: Biddiscombe
orcid: 'https://orcid.org/0000-0002-6552-2833'
- given-names: Mikael
family-names: Simberg
orcid: 'https://orcid.org/0000-0002-7238-8935'
- given-names: Rocco
family-names: Meli
orcid: 'https://orcid.org/0000-0002-2845-3410'
- given-names: Guglielmo
family-names: Gagliardi
- given-names: Andreas
family-names: Fink
- given-names: Teodor
family-names: Nikolov
- given-names: Harmen
family-names: Stoppels
- given-names: Lara
family-names: Querciagrossa
- given-names: Alo
family-names: Roosing
- given-names: Alessandro
family-names: Colombo
orcid: 'https://orcid.org/0000-0002-7950-293X'
identifiers:
- type: doi
value: 10.5281/zenodo.10518288
description: The concept DOI of the work.
repository-code: 'https://github.com/eth-cscs/DLA-Future'
abstract: Distributed Linear Algebra from the Future
keywords:
- c++
- eigensolver
- "generalized eigensolver"
- "high performance computing"
- "linear algebra"
- mpi
license: BSD-3-Clause
license-url: https://opensource.org/license/bsd-3-clause
version: 0.10.0
date-released: '2025-05-15'
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 117
- Total pull requests: 340
- Average time to close issues: 7 months
- Average time to close pull requests: 24 days
- Total issue authors: 7
- Total pull request authors: 10
- Average comments per issue: 0.62
- Average comments per pull request: 3.36
- Merged pull requests: 266
- Bot issues: 0
- Bot pull requests: 2
Past Year
- Issues: 17
- Pull requests: 148
- Average time to close issues: 20 days
- Average time to close pull requests: 8 days
- Issue authors: 5
- Pull request authors: 7
- Average comments per issue: 0.82
- Average comments per pull request: 3.33
- Merged pull requests: 109
- Bot issues: 0
- Bot pull requests: 1
Top Authors
Issue Authors
- rasolca (49)
- albestro (40)
- msimberg (24)
- Beliavsky (1)
- Schroedingers0216 (1)
- aurianer (1)
- RMeli (1)
Pull Request Authors
- msimberg (113)
- rasolca (92)
- albestro (77)
- RMeli (35)
- teonnik (7)
- aurianer (4)
- biddisco (4)
- Sely85 (3)
- gulivarese (3)
- dependabot[bot] (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 0
- Total maintainers: 5
spack.io: dla-future
DLA-Future library: Distributed Linear Algebra with Future
- Homepage: https://github.com/eth-cscs/DLA-Future
- License: []
Rankings
Dependencies
- matplotlib *
- numpy *
- pandas *
- parse *
- seaborne *
- actions/checkout v3 composite
- actions/javascript-action v1 composite
- actions/checkout v3 composite
- actions/javascript-action v1 composite
- actions/checkout v3 composite
- actions/checkout v3 composite