Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support for arrays of tensors (aka nested tensors, or tensors-of-tensors) #223

Merged
merged 293 commits into from
Dec 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
293 commits
Select commit Hold shift + click to select a range
bac0481
addition and subtraction are looking good
ryanmrichard May 13, 2020
c97240c
tried Ed's suggestion
ryanmrichard May 14, 2020
21975f6
works with BTAS tensors
ryanmrichard May 14, 2020
a874135
random guess at fixing travis
ryanmrichard May 14, 2020
668879e
Merge branch 'master' of https://github.com/ValeevGroup/tiledarray in…
ryanmrichard May 15, 2020
bc6b4e7
Merge branch 'tot_expr' into tot_add
ryanmrichard May 15, 2020
0714218
works with BTAS
ryanmrichard May 15, 2020
43b9d01
Merge branch 'master' into tot_explore
evaleev May 16, 2020
ea85681
works with BTAS
ryanmrichard May 18, 2020
0db475f
skip copy ctor test
ryanmrichard May 18, 2020
1aca212
scaling works
ryanmrichard May 18, 2020
49b6bed
hadamard works
ryanmrichard May 19, 2020
dc47420
try sticking another random fence in
ryanmrichard May 19, 2020
7489b4b
permute now knows about inner/outer indices
ryanmrichard May 22, 2020
6b1c8d7
Merge branch 'tot_expr' into tot_add
ryanmrichard May 22, 2020
a48549d
backup
ryanmrichard May 22, 2020
a33993e
better application of permutation
ryanmrichard May 22, 2020
affc827
Merge branch 'tot_expr' into tot_add
ryanmrichard May 22, 2020
587d974
permutations look like they work in binary operations now
ryanmrichard May 27, 2020
923b07f
Merge branch 'master' into tot_explore
evaleev May 28, 2020
5ca3597
Revert "try sticking another random fence in"
evaleev May 29, 2020
aeb7ad7
Revert "skip copy ctor test"
evaleev May 29, 2020
6b914a8
resolved conflicts between DistArray::pimpl() method in master and to…
evaleev May 29, 2020
972e255
one contraction kernel is done...
ryanmrichard Jun 7, 2020
e604aa3
four kernels down, tile loop to go
ryanmrichard Jun 10, 2020
0a42057
einsum looks like it works
ryanmrichard Jun 12, 2020
8022161
adds notebooks and missing test files
ryanmrichard Jun 12, 2020
8b94797
moves vector print to TA namespace and makes dummy_annotation work wi…
ryanmrichard Jun 24, 2020
d40a910
changes suggested by Jonathan
ryanmrichard Jun 26, 2020
633c010
updated
ryanmrichard Jul 14, 2020
e41c09a
Merge branch 'master' into tot_explore
ryanmrichard Jul 14, 2020
8d6e764
Merge branch 'tot_explore' into tot_expr
ryanmrichard Jul 14, 2020
d6e1370
Merge branch 'tot_expr' into tot_add
ryanmrichard Jul 14, 2020
d0cd345
updated
ryanmrichard Jul 17, 2020
2df1453
Merge remote-tracking branch 'david/scalapack_cleanup' into developer
ryanmrichard Jul 17, 2020
3c7ac90
Merge remote-tracking branch 'ryan/tot_add' into developer
ryanmrichard Jul 17, 2020
ce60b4a
Merge branch 'master' into developer
ryanmrichard Aug 7, 2020
85c4fe3
at least it compiles
ryanmrichard Aug 10, 2020
08b11da
at least it compiles
ryanmrichard Aug 14, 2020
7e078db
serial unit tests pass again
ryanmrichard Aug 15, 2020
a6e4b1c
Merge branch 'master' into developer
ryanmrichard Aug 15, 2020
8c6a415
Merge branch 'developer' into new_tot
ryanmrichard Aug 15, 2020
9455249
merges master
ryanmrichard Aug 16, 2020
1748f78
hushed apple clang warnings
evaleev Aug 17, 2020
96c034f
fixups for apple clang
evaleev Aug 17, 2020
31dc810
more hushed warnings
evaleev Aug 17, 2020
53b28de
some TiledRange/TiledRange1 made explicit to avoid universal-init snafus
evaleev Aug 17, 2020
b67d68d
fixup for clang
evaleev Aug 17, 2020
099fbf1
use tmp instead of constexpr to switch among kernels
ryanmrichard Aug 17, 2020
d19b16c
#include missing header for macos
evaleev Aug 17, 2020
4117ecb
hushed gcc's signed vs unsigned compare warnings
evaleev Aug 17, 2020
4ab12b2
fix clang errors
ryanmrichard Aug 17, 2020
478c5bf
fix clang errors
ryanmrichard Aug 17, 2020
e43ea42
bumped MADNESS tag to fix dangling lifetime issue with temp Future::g…
evaleev Aug 18, 2020
7b290e9
added missing "if not local, continue" in a ToT set test
evaleev Aug 18, 2020
36e4bb8
bumped MADNESS tag to ensure correct casting of Future<T> to T
evaleev Aug 18, 2020
df81fa7
fixed ToT test2 / is_zero
evaleev Aug 18, 2020
16e6535
typo
evaleev Aug 18, 2020
ae89eba
fixed ToT serialization tests
evaleev Aug 18, 2020
f95a350
[travis] let builds run for almost 50 mins before exiting for cache
evaleev Aug 18, 2020
f6d4bbf
Merge branch 'new_tot' into find_local
evaleev Aug 19, 2020
c732a8e
fix warning
ryanmrichard Aug 19, 2020
e0d0690
fix warning
ryanmrichard Aug 19, 2020
b7f01ef
DistArray::find_local returns ref to the future in its storage
evaleev Aug 19, 2020
58d63ea
Merge branch 'new_tot' into find_local
evaleev Aug 19, 2020
29fd956
fix warnings
ryanmrichard Aug 19, 2020
1549309
fix more warnings (lower log printing level)
ryanmrichard Aug 20, 2020
9f0cecd
fixed Tile::block(lobound, upbound) constraints
evaleev Aug 21, 2020
fce5963
added Tile::size_type
evaleev Aug 21, 2020
21c4261
Merge branch 'master' into tot_devel
evaleev Aug 21, 2020
983e70a
- tensor/trace.h -> tile_interface/trace.h
evaleev Aug 22, 2020
07789e4
amended 983e70a5cb89e0aeff0107290e5661d1deddb48e
evaleev Aug 22, 2020
3a1a1b6
generalized the tensor <-> btas::Tensor subblcok conversions
evaleev Aug 22, 2020
2a22b90
fixup
evaleev Aug 22, 2020
3a4b3e5
generate missing cub fn instantiations for CUDA 11 also
evaleev Aug 23, 2020
813e074
Merge pull request #4 from ValeevGroup/tot_devel
evaleev Aug 26, 2020
1a467c0
annotations can include primes also
evaleev Aug 28, 2020
d280c05
typos
evaleev Aug 28, 2020
3b6de53
pass CMAKE_AR to cutt, umpire, and madness' cmake
evaleev Aug 28, 2020
c58da71
Merge pull request #5 from ValeevGroup/tot_devel
evaleev Aug 28, 2020
fac6489
amend eigen3 MD5
evaleev Aug 28, 2020
ebee5a1
bump BTAS + update btas range traits for TA::Range
evaleev Sep 6, 2020
113ac9f
Permutation classes use container::svector + clarified 1-line form to…
evaleev Sep 7, 2020
4f39993
fixup
evaleev Sep 7, 2020
165d6ac
btas::permute uses "from" convention for permutation
evaleev Sep 7, 2020
b4f2283
FindEigen3.cmake defined version in EIGEN3_VERSION *and* in Eigen3_VE…
evaleev Sep 11, 2020
1667246
dox++
evaleev Sep 11, 2020
17f4b58
switched eigen download link to gitlab
evaleev Sep 11, 2020
2a685a4
set Eigen3_VERSION to TiledArray_Eigen's VERSION property, to be read…
evaleev Sep 11, 2020
de2acfc
set Eigen3_VERSION to TiledArray_Eigen_VERSION variable (can't use pr…
evaleev Sep 11, 2020
4336765
Merge remote-tracking branch 'origin/tot_devel' into tot_devel
evaleev Sep 11, 2020
ae2da7e
Merge pull request #6 from ValeevGroup/tot_devel
evaleev Sep 13, 2020
77653c4
bump MADNESS tag to bring in https://github.com/m-a-d-n-e-s-s/madness…
evaleev Sep 18, 2020
95afc9e
typo
evaleev Sep 21, 2020
05b2807
bump MADNESS tag to support from-source build of PaRSEC
evaleev Sep 21, 2020
354c9ac
hushed more "unused" warnings
evaleev Sep 21, 2020
361ad63
if MADNESS built PaRSEC from source need to regimport PaRSEC
evaleev Sep 21, 2020
edb08f1
bump MADNESS tag to use MPI exported targets
evaleev Sep 21, 2020
17914ab
[cmake] report the location of BTAS' config file, if found
evaleev Sep 22, 2020
564e5e6
bump MADNESS tag to reload parsec in madness-config, if needed
evaleev Sep 22, 2020
281456c
dox fixup
evaleev Sep 27, 2020
39a4b5e
docs fixup v2 + expression dox intergrated into main dox
evaleev Sep 28, 2020
2640443
duplicate in TILEDARRAY_HEADER_FILES
evaleev Sep 28, 2020
8334d2c
typo
evaleev Oct 2, 2020
b69a19e
fixed continuation's argument types in BinaryWrapper::operator()(left…
evaleev Oct 6, 2020
4a05bbf
added default ctor to function_ref and cast to bool to test for null …
evaleev Oct 6, 2020
36f6456
added missing perfect forward in invoke
evaleev Oct 6, 2020
63c5709
few tweaks for future-wrapped async casts
evaleev Oct 7, 2020
f73d7e4
fixed function_ref's assignment oper
evaleev Oct 7, 2020
3390c5f
bump MAD tag to bring in https://github.com/m-a-d-n-e-s-s/madness/pul…
evaleev Oct 7, 2020
08cab7e
DistArray::is_initialized is same as DistArray::operator bool
evaleev Oct 12, 2020
480ad57
comment fixup
evaleev Oct 12, 2020
6027262
ovrload of scale() for tiles makes sure that the tile type != DistArray
evaleev Oct 15, 2020
a05cc5e
moved scalapack solvers to algebra, added generic solver interface (S…
evaleev Oct 16, 2020
1494977
amended a05cc5ed302d306bd447a5d7c85aa40b277739f4
evaleev Oct 16, 2020
aab124f
added stub lapack cholesky API
evaleev Oct 16, 2020
068a75d
fixed typo in aab124ff60aac44bf54c4d0ba68114f2454d2e6e
evaleev Oct 16, 2020
b3ea08c
fixed scalapack include path
evaleev Oct 16, 2020
3453f76
hushed warning about copies in range-based for
evaleev Oct 16, 2020
a36249d
dox fixup
evaleev Oct 16, 2020
c719859
default scalapack block size can be controlled at runtime
evaleev Oct 16, 2020
c2c7a86
replaced generic solver interface for cholesky from namespace import …
evaleev Oct 16, 2020
bda146a
fixup
evaleev Oct 16, 2020
7a5c9f0
cast TransposeFlag to scalapackpp's variant
evaleev Oct 16, 2020
e4a0b65
reverted rename of scalapack.cpp to all.cpp in a05cc5ed302d306bd447a5…
evaleev Oct 17, 2020
4754712
fixup
evaleev Oct 17, 2020
9a07b4d
more fixes for apple clang (12) warnings
evaleev Oct 18, 2020
b93b3f6
fixed evp example (includes and use TA::scalapack::heig, not TA::heig)
evaleev Oct 18, 2020
3e800a4
TA::lapack::cholesky* work, tested only as part of scalapack suite
evaleev Oct 19, 2020
1e31689
nrank>1 fixes for lapack::cholesky*
evaleev Oct 19, 2020
00ca849
eigen_to_array assumes that the user knows what she's doing + accepts…
evaleev Oct 19, 2020
d15946e
TA did not know how to serialize Eigen matrices ... really?!
evaleev Oct 19, 2020
03f686c
amended eigen unit tests for 00ca849e19307517b896d55e083e76d140ce21e4
evaleev Oct 20, 2020
6223ab9
typo
evaleev Oct 20, 2020
5297c18
added TA::lapack::heig + reorganized TA::lapack::cholesky
evaleev Oct 20, 2020
13da0a5
TA::eigen_map generalized to accept target matrix layout (default is …
evaleev Oct 20, 2020
16499ce
Introduced OrdinalType
evaleev Oct 20, 2020
114cf48
TA::lapack::cholesky also works for TA::Tensor and ony other contiguo…
evaleev Oct 20, 2020
833a2da
amended 16499ce8197bfe49d2586fd90fc8886c94b52901
evaleev Oct 20, 2020
b8b459a
dox++
evaleev Oct 20, 2020
f6c419c
hushed warning about copies in range-based for
evaleev Oct 16, 2020
88167a3
more fixes for apple clang (12) warnings
evaleev Oct 18, 2020
7f2498e
introduced BipartitePermutation used by VariableList and DistEval
evaleev Oct 20, 2020
8049236
added bipartite permutation tests to tensor_of_tensor_suite ... more …
evaleev Oct 21, 2020
31287b7
propagated BipartitePermutation throughout the stack (except CUDA-spe…
evaleev Oct 22, 2020
ccfd369
bump BTAS tag to help usability of btas::Tensor<T, TA::Range>
evaleev Oct 22, 2020
065d48e
dox fixup
evaleev Oct 22, 2020
59786fa
tensor_of_tensor and tot_array_fixture use btas::Tensor<T, Range>
evaleev Oct 22, 2020
5701266
added (in)equality comparison for Tile
evaleev Oct 22, 2020
759f60e
tot tests now compile with btas tensor of btas tensor ... had to get …
evaleev Oct 22, 2020
7d0b825
signed/unsigned warning fix
evaleev Oct 22, 2020
97678ad
bTensor<bTensor> is not tested anywhere (even in tensor_of_tensor_sui…
evaleev Oct 22, 2020
9e7cd6f
fixup
evaleev Oct 22, 2020
950efb3
dox++
evaleev Oct 22, 2020
d832fd7
generalize ToT tensor_op to accept tensor-wise and element-wise ... t…
evaleev Oct 22, 2020
93bc9ca
fixed is_{std,boost}_gettable
evaleev Oct 22, 2020
6232667
dox++
evaleev Oct 23, 2020
6c28d2a
outer(Permutation) returns by value to avoid dangling when given temp…
evaleev Oct 23, 2020
b084889
more unused warning fixes
evaleev Oct 23, 2020
743cb72
more unit tests for d832fd73eddb67683d5a9122a36389ba11843a43
evaleev Oct 23, 2020
0e7380c
Permutation::bool is explicit
evaleev Oct 23, 2020
e5e8221
BipartitePermutation::{first,second} are re-entrant
evaleev Oct 23, 2020
f621dca
amended e5e8221a5c5f318762dc33d3621fecf72896178f
evaleev Oct 23, 2020
3663a6b
tensor-wise op ToT unit test extended
evaleev Oct 23, 2020
0ba59a4
[travis] use -Og to speed up debug builds
evaleev Oct 25, 2020
35cecd6
disable many unit tests if running in distributed since they don't us…
evaleev Oct 25, 2020
26fe799
[travis] bump to focal to try getting fresher boost
evaleev Oct 26, 2020
32c4374
require boost v 1.68 or later in which Boost.Test preconditions work …
evaleev Oct 26, 2020
576a043
[travis] build boost manually
evaleev Oct 26, 2020
1b78625
format
evaleev Oct 26, 2020
ab956eb
[travis] add -L/usr/lib/x86_64-linux-gnu to blacs_LIBRARIES in travis…
evaleev Oct 26, 2020
1e1b4ac
[travis] add -L/usr/lib/x86_64-linux-gnu to blacs_LIBRARIES in travis…
evaleev Oct 26, 2020
975d48f
Merge remote-tracking branch 'origin/tot_devel' into tot_devel
evaleev Oct 26, 2020
b6935e8
[travis] add -lm to blacs_LIBRARIES in travis.cmake
evaleev Oct 26, 2020
36e8de8
[travis] bumped doxygen to 1.8.20 and switched to SF download
evaleev Oct 26, 2020
0d7ace1
moar traits
evaleev Oct 27, 2020
5aa1bed
- VariableList -> BipartiteVariableList
evaleev Oct 27, 2020
4175471
- *VariableList -> *IndexList
evaleev Oct 28, 2020
acf9416
added missing index_list.cpp to 4175471614136513774c25b92eeb52055cc84c15
evaleev Oct 28, 2020
3ad9eff
cleanup
evaleev Oct 29, 2020
ef86fd5
clarified the logic to be used by MultEngine to distinguish the tenso…
evaleev Oct 29, 2020
49fe50e
Merge branch 'tot_devel' into generic-algebra
evaleev Oct 29, 2020
87b91d9
Expr::vars_ -> Expr::annotation_ (to prepare for possible generalizat…
evaleev Oct 29, 2020
c263776
ExprEngine::vars_ -> ExprEngine::indices_
evaleev Oct 29, 2020
39b5910
cleanup
evaleev Oct 30, 2020
14a9b0b
dox++
evaleev Oct 30, 2020
5ef32eb
first steps to separate treatment of outer/inner tensor products in *…
evaleev Oct 30, 2020
95fe03a
factored out ContEngine::init_indices into compute_index_list_contrac…
evaleev Oct 30, 2020
a62eca3
factored out ContEngine::init_indices into compute_index_list_contrac…
evaleev Oct 30, 2020
af83b5f
ContEngine::init_indices supports hadamard product and contractions o…
evaleev Oct 31, 2020
22e2486
- ContEngine::perm_indices is ToT-aware (can't make tile ops yet though)
evaleev Nov 2, 2020
1e974c7
dox++
evaleev Nov 2, 2020
cc889e2
BinaryEngine::{init,perm}_indices is ToT-aware, i.e. inner and outer …
evaleev Nov 2, 2020
a407714
cleanup
evaleev Nov 2, 2020
6e596eb
BipartitePermutation constructible from 2 Permutations
evaleev Nov 3, 2020
88d35ab
BinaryEngine::init_struct is ToT-capable
evaleev Nov 3, 2020
fb6ac41
EigenSparseTile::data -> matrix to avoid confusion re: data storage
evaleev Nov 3, 2020
3afb117
cleanup
evaleev Nov 3, 2020
3b09f84
added {binary,unary}{,_inplace} to the nonintrusive tile interface
evaleev Nov 7, 2020
9e8a848
cleanup
evaleev Nov 7, 2020
4aca516
Tot expression work: {outer=hadamard;inner=contraction} implemented
evaleev Nov 8, 2020
7f9e620
Tensor converting ctor disabled if conversion already possible
evaleev Nov 9, 2020
526d44d
Fixed sparse tile code used for testing
evaleev Nov 9, 2020
e1f16a1
ContEngine::perm_indices is noop if parent said so
evaleev Nov 9, 2020
5d6f35d
ToT hadamard+contraction tested for failure only
evaleev Nov 9, 2020
6ad7b7d
BinaryEngine::perm_indices is noop if parent said so
evaleev Nov 9, 2020
aea7eab
{Binary,Cont}Engine try to avoid needless (recursive) index re-initia…
evaleev Nov 9, 2020
6d02867
refactor; ready to contract ToTs over both outer and inner indices, e…
evaleev Nov 11, 2020
44caae6
sizeof(Args...) is not implicitly convertible to bool in constexpr co…
evaleev Nov 11, 2020
a2774b2
inplace Tensor.gemm can be applied to null (uninitialized) Tensor
evaleev Nov 12, 2020
f7660b7
extended ContractReduce to accept element multiply op (but does not p…
evaleev Nov 12, 2020
f968a65
Tensor::gemm only makes sense semantically for plain tensors, removed…
evaleev Nov 12, 2020
429434d
added basic Tensor::gemm unit test
evaleev Nov 15, 2020
803e310
added gemm customization point that accepts custom element-wise multi…
evaleev Nov 15, 2020
6838fde
extended TA::Tensor::gemm unit tests
evaleev Nov 15, 2020
a772bf7
implemented ToT contractions over inner and outer indices (not yet te…
evaleev Nov 15, 2020
8e1ba33
added test for ToT contraction(outer)/hadamard(inner)
evaleev Nov 15, 2020
cf895a4
fixup ContractReduceBase for the complex case
evaleev Nov 16, 2020
6ebdd21
amended cf895a4960f10c9ef10ad74ca9fbbf833195dbdf
evaleev Nov 16, 2020
b51c400
fixed contract(outer)/hadamard(inner): the inner op impl is affected …
evaleev Nov 16, 2020
f3430b5
copied einsum unit tests into tot_expressions, with einsum calls repl…
evaleev Nov 16, 2020
2c8af07
Merge branch 'master' into tot_devel
evaleev Nov 16, 2020
9a1e84f
Refactor lapack bindings
asadchev Nov 16, 2020
40ddb05
fixes for differences in F77 BLAS/LAPACK API in MADNESS and rest of w…
evaleev Nov 17, 2020
25cecc5
resolves issue #225
evaleev Nov 18, 2020
5817eca
minor cleanup of ValArray
evaleev Nov 18, 2020
a45be85
remove temporary files after running unit tests
evaleev Nov 18, 2020
3d8bde6
fixes for differences in F77 BLAS/LAPACK API in MADNESS and rest of w…
evaleev Nov 17, 2020
76c0d05
LAPACK algebra backend
asadchev Nov 17, 2020
acefee4
Rename chol.h to cholesky.h
asadchev Nov 20, 2020
abe7576
Refactor linalg unit tests
asadchev Nov 19, 2020
cfa3a93
Set BLA_STATIC=OFF by default
asadchev Nov 20, 2020
217be9a
fixup
asadchev Nov 20, 2020
8355dc5
fixed cholesky_linv unit test
evaleev Nov 20, 2020
be66c44
Merge branch 'andrey/generic-algebra' into generic-algebra
evaleev Nov 20, 2020
f39eaa3
Update contraction_helpers.h
ryanmrichard Nov 20, 2020
b2f3ab2
Merge pull request #222 from ValeevGroup/generic-algebra
asadchev Nov 20, 2020
f1c85df
Merge branch 'tot_devel' of github.com:ValeevGroup/tiledarray into to…
evaleev Nov 23, 2020
e35783f
lifted TA_LAPACK_ macros to be usable outside of TA
evaleev Nov 23, 2020
04ccca0
cleanup
evaleev Nov 23, 2020
2faa476
dtrtri declared by madness does not pass sizeof(char) for some reason…
evaleev Nov 23, 2020
6101a34
bump MAD tag to avoid issues with lapacke.h including <complex> in ex…
evaleev Nov 23, 2020
d44ca84
Revert "bump MAD tag to avoid issues with lapacke.h including <comple…
evaleev Nov 23, 2020
4d665e8
bump MAD tag to include PR https://github.com/m-a-d-n-e-s-s/madness/p…
evaleev Nov 24, 2020
5c2753f
partially revert 9a1e84fde51e5383e739d3b0fc54d1bff4f7ac89
evaleev Nov 24, 2020
3225ff0
dox fixup
evaleev Dec 1, 2020
fbe2a8e
Tensor::shift{,_to} can accept initializer_list, like the rest of the…
evaleev Dec 1, 2020
97ad3f5
BTAS repo moved from BTAS/BTAS to ValeevGroup/BTAS
evaleev Dec 9, 2020
7c8f40a
cleanup in INSTALL.md
evaleev Dec 10, 2020
180627a
Merge branch 'master' into tot_devel
asadchev Dec 13, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ before_install:
# use timeout to stop long-running (i.e. cache-rebuilding) jobs right before they get killed by Travis-CI
# in case of timeout report success to Travis to force cache upload
script:
- travis_wait 50 timeout 2200 ${TRAVIS_BUILD_DIR}/bin/build-$TRAVIS_OS_NAME.sh; RESULT=$?; if [ $RESULT -eq 0 ] || [ $RESULT -eq 124 ]; then true; else false; fi;
- travis_wait 50 timeout 2850 ${TRAVIS_BUILD_DIR}/bin/build-$TRAVIS_OS_NAME.sh; RESULT=$?; if [ $RESULT -eq 0 ] || [ $RESULT -eq 124 ]; then true; else false; fi;
after_failure:
- cat ${BUILD_PREFIX}/TA/external/madness-build/CMakeFiles/CMakeError.log
- cat ${BUILD_PREFIX}/TA/external/madness-build/CMakeFiles/CMakeOutput.log
Expand Down
15 changes: 7 additions & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ endif(TILEDARRAY_PRERELEASE_ID)

# Set install paths ============================================================

set(TILEDARRAY_INSTALL_BINDIR "bin"
set(TILEDARRAY_INSTALL_BINDIR "bin"
CACHE PATH "TiledArray binary install directory")
set(TILEDARRAY_INSTALL_INCLUDEDIR "include"
set(TILEDARRAY_INSTALL_INCLUDEDIR "include"
CACHE PATH "TiledArray INCLUDE install directory")
set(TILEDARRAY_INSTALL_LIBDIR "lib"
CACHE PATH "TiledArray LIB install directory")
Expand Down Expand Up @@ -162,16 +162,15 @@ else ()
endif()
redefaultable_option(CMAKE_POSITION_INDEPENDENT_CODE "Default value for POSITION_INDEPENDENT_CODE of targets" ${default_CMAKE_POSITION_INDEPENDENT_CODE})

set(BLA_STATIC FALSE CACHE BOOL "Whether to use static linkage for BLAS, LAPACK, and related libraries")
if(BUILD_SHARED_LIBS)
set(BLA_STATIC FALSE CACHE BOOL "Whether to use static linkage for BLAS, LAPACK, and related libraries")
set(CMAKE_MACOSX_RPATH TRUE)
else()
set(BLA_STATIC TRUE CACHE BOOL "Whether to use static linkage for BLAS, LAPACK, and related libraries")
set(CMAKE_MACOSX_RPATH FALSE)
endif()

# miscellaneous cmake platform-neutral and platform-specific configuration =============================
set(CMAKE_FIND_NO_INSTALL_PREFIX TRUE) # do not search in CMAKE_INSTALL_PREFIX
set(CMAKE_FIND_NO_INSTALL_PREFIX TRUE) # do not search in CMAKE_INSTALL_PREFIX
set(CMAKE_SKIP_RPATH FALSE)
set(CMAKE_SKIP_BUILD_RPATH FALSE)
set(CMAKE_SKIP_INSTALL_RPATH FALSE)
Expand Down Expand Up @@ -394,19 +393,19 @@ export(EXPORT tiledarray
configure_package_config_file(cmake/tiledarray-config.cmake.in
"${PROJECT_BINARY_DIR}/tiledarray-config.cmake"
INSTALL_DESTINATION "${TILEDARRAY_INSTALL_CMAKEDIR}"
PATH_VARS CMAKE_INSTALL_PREFIX TILEDARRAY_INSTALL_BINDIR
PATH_VARS CMAKE_INSTALL_PREFIX TILEDARRAY_INSTALL_BINDIR
TILEDARRAY_INSTALL_INCLUDEDIR TILEDARRAY_INSTALL_LIBDIR
TILEDARRAY_INSTALL_DOCDIR TILEDARRAY_INSTALL_CMAKEDIR)

# Install config, version, and target files
install(EXPORT tiledarray
FILE "tiledarray-targets.cmake"
DESTINATION "${TILEDARRAY_INSTALL_CMAKEDIR}"
DESTINATION "${TILEDARRAY_INSTALL_CMAKEDIR}"
COMPONENT tiledarray)
install(FILES
"${PROJECT_BINARY_DIR}/tiledarray-config.cmake"
"${PROJECT_BINARY_DIR}/tiledarray-config-version.cmake"
DESTINATION "${TILEDARRAY_INSTALL_CMAKEDIR}"
DESTINATION "${TILEDARRAY_INSTALL_CMAKEDIR}"
COMPONENT tiledarray)


Expand Down
17 changes: 7 additions & 10 deletions INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Synopsis

```
```.cpp
$ git clone https://github.com/ValeevGroup/TiledArray.git tiledarray
$ cd tiledarray
$ cmake -B build \
Expand Down Expand Up @@ -30,11 +30,11 @@ $ cmake --build build --target install
- Boost.Container: header-only
- Boost.Test: header-only or (optionally) as a compiled library, *only used for unit testing*
- Boost.Range: header-only, *only used for unit testing*
- [BTAS](http://github.com/BTAS/BTAS), tag 3e286d05ee3a19ac320c12c380d947c3e31d77ff (will be downloaded automatically, if missing)
- [BTAS](http://github.com/ValeevGroup/BTAS), tag 8418021a283000ada8edd4994bd81f35652d4b49 (will be downloaded automatically, if missing)
- BLAS library
- [MADNESS](https://github.com/m-a-d-n-e-s-s/madness), tag eee5fd9f940ef422ee4ee5abf852c910bc826fd4 .
- [MADNESS](https://github.com/m-a-d-n-e-s-s/madness), tag 925552feaf326cca8e83de7bd042074ad3cfd3f1 .
Only the MADworld runtime and BLAS/LAPACK C API component of MADNESS is used by TiledArray.
If usable MADNESS installation is now found, TiledArray will download and compile
If usable MADNESS installation is not found, TiledArray will download and compile
MADNESS. *This is the recommended way to compile MADNESS for all users*.
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);
it also also contains detailed
Expand Down Expand Up @@ -110,7 +110,7 @@ we specify CMake variables "manually" (on the command line).
* Basic configuration. This will search for dependencies on your system. If the
required dependencies are not found on your system, they will be downloaded
and installed during the build process (this includes Eigen, Boost,
and MADNESS, but not MPI or TBB). The CMAKE_PREFIX_PATH cache variables
and MADNESS, but not MPI or TBB). The `CMAKE_PREFIX_PATH` cache variables
is a semicolon separated list of search paths.

```
Expand Down Expand Up @@ -177,10 +177,6 @@ Additional CMake variables are given below.

Most of these are best specified in a _toolchain file_. TiledArray is recommended to use the toolchains distributed via [the Valeev Group CMake kit](https://github.com/ValeevGroup/kit-cmake/tree/master/toolchains). TiledArray by default downloads (via [the FetchContent CMake module](https://cmake.org/cmake/help/latest/module/FetchContent.html)) the VG CMake toolkit which makes the toolchains available without having to download the toolchain files manually. E.g., to use toolchain `x` from the VG CMake kit repository provide `-DCMAKE_TOOLCHAIN_FILE=cmake/vg/toolchains/x.cmake` to CMake when configuring TiledArray.

-D CMAKE_BUILD_TYPE=(Release|Debug|RelWithDebInfo)
-D BUILD_SHARED_LIBS=(TRUE|FALSE)
-D CMAKE_CXX_STANDARD=(17|20)
-D TA_ERROR=(none|throw|assert)
It is typically not necessary to specify optimization or debug flags as the
default values provided by CMake are usually correct.

Expand Down Expand Up @@ -300,7 +296,7 @@ variable:

If Eigen is not found at the configure time, it will be downloaded from the Bitbucket repository.

## Pythom
## Python

To build Python bindings use the following variable:

Expand Down Expand Up @@ -366,6 +362,7 @@ support may be added.
## Expert configure options:

* `TA_EXPERT` -- Set to `ON` to disable automatic installation of prerequisites. Useful for experts, hence the name. [Default=OFF].
* `TA_ERROR` -- Set to `none` to disable `TA_ASSERT` assertions, `throw` to cause `TA_ASSERT` assertions to throw, `abort` to cause `TA_ASSERT` assertions to abort, or `assert` to cause `TA_ASSERT` assertions to use C++ assert.
* `TA_TRACE_TASKS` -- Set to `ON` to enable tracing of MADNESS tasks using custom task tracer. Note that standard profilers/tracers are generally useless (except in the trivial cases) with MADWorld-based programs since the submission context of tasks is not captured by standard tracing tools; this makes it impossible in a nontrivial program to attribute tasks to source code. WARNING: task tracing his will greatly increase the memory requirements. [Default=OFF].
* `TA_ENABLE_RANGEV3` -- Set to `ON` to find or fetch the Range-V3 library and enable additional tests of TA components with constructs anticipated to be supported in the future. [Default=OFF].
* `TA_SIGNED_1INDEX_TYPE` -- Set to `OFF` to use unsigned 1-index coordinate type (default for TiledArray 1.0.0-alpha.2 and older). The default is `ON`, which enables the use of negative indices in coordinates.
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,25 +20,25 @@ The following example expressions are written in C++ with TiledArray. TiledArray

* Matrix-matrix multiplication

```
```.cpp
C("m,n") = 2.0 * A("m,k") * B("k,n");
```

* Matrix-vector multiplication

```
```.cpp
C("n") = A("k") * B("k,n");
```

* A more complex tensor expression

```
```.cpp
E("m,n") = 2.0 * A("m,k") * B("k,n") + C("k,n") * D("k,m");
```

The following application is a minimal example of a distributed-memory matrix multiplcation.

```
```.cpp
#include <tiledarray.h>

int main(int argc, char** argv) {
Expand Down
2 changes: 1 addition & 1 deletion bin/admin/dependency-versions-update-hook.py
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ def replace_dep_id(topsrc, file_ext, dep_name, old_id, new_id, search_prefix = '
any_files_changed |= replace_dep_id(topsrc, 'md', 'MADNESS', madness_old_tag, madness_new_tag, 'm-a-d-n-e-s-s/madness), tag ', ' ')

# BTAS tag in INSTALL.md
any_files_changed |= replace_dep_id(topsrc, 'md', 'BTAS', btas_old_tag, btas_new_tag, 'BTAS/BTAS), tag ', '')
any_files_changed |= replace_dep_id(topsrc, 'md', 'BTAS', btas_old_tag, btas_new_tag, 'ValeevGroup/BTAS), tag ', '')

# cuTT tag in INSTALL.md
any_files_changed |= replace_dep_id(topsrc, 'md', 'cuTT', cutt_old_tag, cutt_new_tag, '', '')
Expand Down
Loading