Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

DDC is a discrete domain computation library.

NotificationsYou must be signed in to change notification settings

CExA-project/ddc

Repository files navigation

OpenSSF ScorecardCodecovLicense: MITNightly early integrationPagesDOI

Seehttps://ddc.mdls.fr/

DDC, is a C++-17 library that aims to offer to the C++/MPI world an equivalent to thexarray.DataArray/dask.Array python environment.Where these two libraries are based onnumpy, DDC relies onKokkos andmdspan to offer CPU/GPU performance-portable multi-dimensional arrays and iterators.

DDC aims to offer abstractions to represent:

  • tagged continuous dimensions,
  • discretizations of these (multiple kinds of meshes, function spaces, Fourier, etc.),
  • domains in these discretized dimensions,
  • associating data to the elements of these discrete domains,
  • efficient distribution and iteration over this data.

All these abstractions are handled at compilation using C++ template meta-programming to ensure zero overhead at execution and enable developers to change their design choices (e.g. from a regular mesh to a non-uniform one) with performance portability.

Find out more...

If you like the project, please leave us a github star.

If you want to know more, join un onSlack

Prerequisites

To use DDC core, one needs the following dependencies:

  • a C++17-compliant compiler
  • CMake 3.25...<4
  • Kokkos 4.4...<6
  • (optional, micro benchmarking) Benchmark 1.8...<2
  • (optional, documentation) Doxygen 1.8.13...<2
  • (optional, unit-testing) GoogleTest 1.14...<2

To use DDC components, one needs the following dependencies:

  • (optional, fft interface) DDC::fft
    • Kokkos-fft 0.3.0...<1
  • (optional, IO interface) DDC::pdi
    • PDI 1.6...<2
  • (optional, spline interpolation) DDC::splines
    • Ginkgo 1.8...<2
    • Kokkos Kernels 4.5.1...<6

Getting the code and basic configuration

Please seethis page for a detailed installation guide.

Contributing

Please seethis page for details on how to contribute.

Known issues

  • Kokkos 4.5.0 embeds a version of mdspan that is not compatible with DDC, seekokkos/mdspan#368. This issue has been fixed in Kokkos 4.5.1.

About

DDC is a discrete domain computation library.

Topics

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors15

Languages


[8]ページ先頭

©2009-2025 Movatter.jp