You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
target_link_libraries(your_executable_or_library_target PUBLIC tiledarray)
15
31
```
16
32
17
33
## Introduction
@@ -40,22 +56,21 @@ Both methods are supported. However, for most users we _strongly_ recommend to b
40
56
- Boost.Test: header-only or (optionally) as a compiled library, *only used for unit testing*
41
57
- Boost.Range: header-only, *only used for unit testing*
42
58
-[Range-V3](https://github.com/ericniebler/range-v3.git) -- a Ranges library that served as the basis for Ranges component of C++20 and later.
43
-
-[BTAS](http://github.com/ValeevGroup/BTAS), tag 62d57d9b1e0c733b4b547bc9cfdd07047159dbca . If usable BTAS installation is not found, TiledArray will download and compile
59
+
-[BTAS](http://github.com/ValeevGroup/BTAS) -- a generic dense local tensor framework. If usable BTAS installation is not found, TiledArray will download and compile
44
60
BTAS from source. *This is the recommended way to compile BTAS for all users*.
45
-
-[MADNESS](https://github.com/m-a-d-n-e-s-s/madness), tag 8abd78b8a304a88b951449d8cb127f5a91f27721 .
46
-
Only the MADworld runtime and BLAS/LAPACK C API component of MADNESS is used by TiledArray.
61
+
-[MADNESS](https://github.com/m-a-d-n-e-s-s/madness) -- a multiresolution numerical calculus framework,
62
+
TiledArray only uses its distributed task-based programming model ("MADworld")
47
63
If usable MADNESS installation is not found, TiledArray will download and compile
48
64
MADNESS from source. *This is the recommended way to compile MADNESS for all users*.
49
-
A detailed list of MADNESS prerequisites can be found at [MADNESS' INSTALL file](https://github.com/m-a-d-n-e-s-s/madness/blob/master/INSTALL_CMake);
50
-
it also also contains detailed
51
-
MADNESS compilation instructions.
65
+
A detailed list of MADNESS dependencies can be found at [MADNESS' INSTALL file](https://github.com/m-a-d-n-e-s-s/madness/blob/master/INSTALL_CMake);
66
+
it also also contains detailed MADNESS compilation instructions.
67
+
-[Umpire C++ allocator](github.com/ValeevGroup/umpire-cxx-allocator) -- a C++ allocator for [LLNL/Umpire](https://github.com/LLNL/Umpire), a portable memory manager. *It is recommended to let TiledArray build the Umpire C++ allocator and Umpire itself from source.*
52
68
53
69
Compiling MADNESS requires the following prerequisites:
54
70
- An implementation of Message Passing Interface version 2 or 3, with support
55
71
for `MPI_THREAD_MULTIPLE`.
56
-
- (optional)
57
-
Intel Thread Building Blocks (TBB), available in a [commercial](software.intel.com/tbb) or
58
-
an [open-source](https://www.threadingbuildingblocks.org/) form
72
+
- (recommended)
73
+
[PaRSEC](https://github.com/ICLDisco/parsec) -- a distributed programming model used for local task scheduling in MADNESS.
59
74
60
75
Compiling BTAS requires the following prerequisites:
61
76
-[blaspp](https://bitbucket.org/icl/blaspp.git) -- C++ API for BLAS
@@ -68,10 +83,9 @@ Optional prerequisites:
68
83
-[CUDA compiler and runtime](https://developer.nvidia.com/cuda-zone) -- for execution on NVIDIA's CUDA-enabled accelerators. CUDA 12 or later is required.
69
84
-[HIP/ROCm compiler and runtime](https://developer.nvidia.com/cuda-zone) -- for execution on AMD's ROCm-enabled accelerators. Note that TiledArray does not use ROCm directly but its C++ Heterogeneous-Compute Interface for Portability, `HIP`; although HIP can also be used to program CUDA-enabled devices, in TiledArray it is used only to program ROCm devices, hence ROCm and HIP will be used interchangeably.
70
85
-[LibreTT](github.com/victor-anisimov/LibreTT) -- free tensor transpose library for CUDA, ROCm, and SYCL platforms that is based on the [original cuTT library](github.com/ap-hynninen/cutt) extended to provide thread-safety improvements (via github.com/ValeevGroup/cutt) and extended to non-CUDA platforms by [@victor-anisimov](github.com/victor-anisimov) (tag 6eed30d4dd2a5aa58840fe895dcffd80be7fbece).
71
-
-[Umpire](github.com/LLNL/Umpire) -- portable memory manager for heterogeneous platforms (tag 8c85866107f78a58403e20a2ae8e1f24c9852287).
72
86
-[Doxygen](http://www.doxygen.nl/) -- for building documentation (version 1.8.12 or later).
73
87
-[ScaLAPACK](http://www.netlib.org/scalapack/) -- a distributed-memory linear algebra package. If detected, the following C++ components will also be sought and downloaded, if missing:
74
-
-[scalapackpp](https://github.com/wavefunction91/scalapackpp.git) -- a modern C++ wrapper for ScaLAPACK (tag 6397f52cf11c0dfd82a79698ee198a2fce515d81); pulls and builds the following additional prerequisite
88
+
-[scalapackpp](https://github.com/wavefunction91/scalapackpp.git) -- a modern C++ wrapper for ScaLAPACK; pulls and builds the following additional prerequisite
75
89
-[blacspp](https://github.com/wavefunction91/blacspp.git) -- a modern C++ wrapper for BLACS
76
90
- Python3 interpreter -- to test (optionally-built) Python bindings
77
91
-[TTG](https://github.com/TESSEorg/ttg.git) -- C++ implementation of the Template Task Graph programming model for fine-grained flow-graph composition of distributed memory programs (tag 3fe4a06dbf4b05091269488aab38223da1f8cb8e).
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -99,7 +99,7 @@ $ cmake --build build
99
99
$ cmake --build build --target install
100
100
```
101
101
Here `<toolchain-file-for-your-platform>` is the appropriate toolchain file from [the Valeev Group CMake kit](https://github.com/ValeevGroup/kit-cmake/tree/master/toolchains); an alternative is
102
-
to provide your own toolchain file. On some standard platforms (e.g. MacOS) the toolchain file can be skipped.
102
+
to provide your own toolchain file. On most standard platforms (e.g. Ubuntu, MacOS) the toolchain file can be skipped.
103
103
104
104
The detailed instructions can be found in [INSTALL.md](https://github.com/ValeevGroup/tiledarray/blob/master/INSTALL.md).
0 commit comments