Go to file
2022-12-06 14:17:53 +01:00
.github/workflows Test on all pushes 2022-10-08 16:05:40 +02:00
bench Fix test_main name in automake 2022-10-08 15:59:48 +02:00
docs Add Documentation to the autotools pipeline 2022-03-14 15:33:10 +01:00
etc Add atrip-def m4 macro 2022-10-08 16:03:08 +02:00
include Add the slicing into the GPU 2022-12-05 21:16:30 +01:00
misc Fix naive-tuples experimentation bench 2022-10-18 16:23:43 +02:00
src Clean up DatabaseCommunicator 2022-10-08 16:04:37 +02:00
test Autotools changes 2022-07-05 12:45:26 +02:00
tools Add Building information and building for sources on GPU 2022-12-06 13:26:44 +01:00
.dir-locals.el Add the slicing into the GPU 2022-12-05 21:16:30 +01:00
.gitignore Add bench utils 2022-10-03 17:11:33 +02:00
atrip.mk Update Makefile infrastructure for ctf working build and non-build jobs 2022-03-14 13:41:32 +01:00
atrip.org Add __device__ to some functions 2022-07-26 15:12:09 +02:00
bootstrap.sh Make bootstrap work from anywhere in the project 2022-09-12 18:35:30 +02:00
config.el Add more implementation files to config 2022-07-05 12:40:25 +02:00
configure.ac Improve the documentation in the readme for benches building 2022-12-06 14:17:53 +01:00
cuda.nix Update autoconf tests 2022-07-27 18:05:20 +02:00
LICENSE Add license headers 2022-03-04 16:14:50 +01:00
LICENSE-HEADER Add license headers 2022-03-04 16:14:50 +01:00
Makefile.am Add checkpoint readers and writers and tests 2022-04-26 18:42:29 +02:00
README.org Improve the documentation in the readme for benches building 2022-12-06 14:17:53 +01:00
shell.nix Add tuples distribution bench 2022-10-03 17:13:21 +02:00
Sources.mk Now compiling 2022-03-11 14:27:52 +01:00

ATRIP: An MPI-asynchronous implementation of CCSD(T)

About this document

You can find this project written as a literate program

or if you prefer reading the source code with Doxygen there is also a built of doxygen available:

How to cite

If you need to cite this algorithm before the proper paper is released please contact me.

In the mean time the code has been used in this publication and can therefore been cited.

Building

Atrip uses autotools to build the system. Autotools works by first creating a configure script from a configure.ac file.

Atrip should be built out of source, this means that you have to create a build directory other that the root directory, for instance in the build/tutorial directory

mkdir -p build/tutorial/
cd build/tutorial

First you have to build the configure script by doing

../../bootstrap.sh

And then you can see the configure options

../../configure --help

Benches

The script tools/configure-benches.sh can be used to create a couple of configurations for benches:

default
This configuration uses a CPU code with dgemm and without computing slices.
only-dgemm
This only runs the computation part that involves dgemms.
slices-on-gpu-only-dgemm
This configuration tests that slices reside completely on the gpu and it should use a CUDA aware MPI implementation. It also only uses the routines that involve dgemm.

In order to generate the benches just create a suitable directory for it

mkdir -p build/benches
cd buid/benches
../../tools/configure-benches.sh CXX=g++ ...

and you will get a Makefile together with several project folders. You can either configure all projects with make all or then go in each folder.

Notice that you can give a path for ctf for all of them by doing

../../tools/configure-benches.sh --with-ctf=/absolute/path/to/ctf