• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

bin/H24-Aug-2018-428299

ci/H24-Aug-2018-174107

cmake/H24-Aug-2018-5,0584,173

config/H24-Aug-2018-2,8602,394

doc/H03-May-2022-11,4319,134

external/H24-Aug-2018-458385

src/H03-May-2022-718,949575,665

.gitignoreH A D24-Aug-2018657 5651

.travis.ymlH A D24-Aug-20182.8 KiB103102

INSTALLH A D24-Aug-20187.6 KiB220136

INSTALL_CMakeH A D24-Aug-20189 KiB191152

LICENSEH A D24-Aug-201814.6 KiB278234

Makefile.amH A D24-Aug-20181.4 KiB6642

README.mdH A D24-Aug-20182.4 KiB2513

README_TESSE.mdH A D24-Aug-20183.5 KiB7852

autogen.shH A D24-Aug-2018156 1410

configure.acH A D24-Aug-201816.7 KiB482416

inputH A D24-Aug-2018213 2319

input_example_lrccsH A D24-Aug-2018296 2621

README.md

1madness
2=======
3
4Multiresolution Adaptive Numerical Environment for Scientific Simulation
5
6# Summary
7
8MADNESS provides a high-level environment for the solution of integral and differential equations in many dimensions using adaptive, fast methods with guaranteed precision based on multi-resolution analysis and novel separated representations. There are three main components to MADNESS. At the lowest level is a new petascale parallel programming environment that increases programmer productivity and code performance/scalability while maintaining backward compatibility with current programming tools such as MPI and Global Arrays. The numerical capabilities built upon the parallel tools provide a high-level environment for composing and solving numerical problems in many (1-6+) dimensions. Finally, built upon the numerical tools are new applications with initial focus upon chemistry, atomic and molecular physics, material science, and nuclear structure.
9
10Please look in the [wiki](https://github.com/m-a-d-n-e-s-s/madness/wiki) for more information and project activity.
11
12Here's a [video](http://www.youtube.com/watch?v=dBwWjmf5Tic) about MADNESS.
13
14# Funding
15The developers gratefully acknowledge the support of the Department of Energy, Office of Science, Office of Basic Energy Sciences and Office of Advanced Scientific Computing Research, under contract DE-AC05-00OR22725 with Oak Ridge National Laboratory.
16
17The developers gratefully acknowledge the support of the National Science Foundation under grant 0509410 to the University of Tennessee in collaboration with The Ohio State University (P. Sadayappan). The MADNESS parallel runtime and parallel tree-algorithms include concepts and software developed under this project.
18
19The developers gratefully acknowledge the support of the National Science Foundation under grant NSF OCI-0904972 to the University of Tennessee. The solid state physics and multiconfiguration SCF capabilities are being developed by this project.
20
21The developers gratefully acknowledge the support of the National Science Foundation under grant NSF CHE-0625598 to the University of Tennessee, in collaboration with UIUC/NCSA. Some of the multi-threading and preliminary GPGPU ports were developed by this project.
22
23The developers gratefully acknowledge the support of the Defense Advanced Research Projects Agency (DARPA) under subcontract from Argonne National Laboratory as part of the High-Productivity Computer Systems (HPCS) language evaluation project.
24
25

README_TESSE.md

1# Compiling TESSE
2
3* **Setup**: Create a directory for the entire project and store its location into an environment variable for convenience. Create an instal directory for all the TESSE-related software. We will configure them accordingly, to minimize the impact on the different standard path. First thing, we will add the binary part of the install directory to our PATH, to get first hand access to the software. In case you compile everything as DSO, you might also need to update the LD_LIBRARY_PATH.
4  ```shell
5  export TESSE_DIR=*my development directory*
6  export PATH=${PATH}:${TESSE_DIR}/install/bin
7  ```
8
9* **Compile PaRSEC**:
10
11  * Obtain the latest version of the PaRSEC source directly from the main bitbucket repo.
12
13    ```shell
14    git clone git@bitbucket.org:icldistcomp/parsec.git
15    ```
16
17  * I suggest to keep the sources clean and use a VPATH compilation, but you are not required to do so. In case you choose to follow my advice:
18
19    ```shell
20    cd parsec
21    mkdir build
22    cd build
23    ```
24
25  * Configuring PaRSEC should go smoothly. In the context of TESSE, it is necessary to produce shared libraries and to force the installation of the PaRSEC development headers. As a hint, if you want a debug build add ```-DCMAKE_BUILD_TYPE=Debug`` before the ```../```.
26
27    ```shell
28    cmake -G 'Unix Makefiles' -DBUILD_SHARED_LIBS=ON —DDAGUE_WITH_DEVEL_HEADERS=ON -DHWLOC_DIR=<hwloc-install-prefix> -DDAGUE_DIST_WITH_MPI=ON -DDAGUE_GPU_WITH_CUDA=OFF -DCMAKE_INSTALL_PREFIX:PATH=${TESSE_DIR}/install -DBUILD_DPLASMA=OFF ../
29    ```
30
31    PaRSEC will complain about missing BLAS libraries, but for the purpose of TESSE we don’t need them. Take a careful look at the output, to make sure the important pieces are indeed correctly found. Look for HWLOC and MPI at a minimum, CUDA if you need GPU support. It is also important to have support for atomic operations (especially 128 bits, such a double CAS to prevent ABA issues).
32
33  * Install PaRSEC and update your environment variables. Add PaRSEC pkgconfig location to the PKG_CONFIG_PATH environment variable so that MADNESS will find it automatically:
34
35    ```shell
36    make install
37    export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${TESSE_DIR}/install/lib/pkgconfig
38    ```
39  * Congratulation! You just got yourself a clean installation of PaRSEC.
40
41
42* **Compile MADNESS**.
43
44  * Clone the TESSE repo, and switch to the correct branch.
45
46    ```shell
47    git clone -b madness_over_parsec git@github.com:TESSEorg/madness.git
48    cd madness
49    ```
50
51  * Configure. There are 2 ways to do that: using autotools or CMake.
52
53    * Using autotools (building in the source):
54
55      ```shell
56      sh ./autogen.sh
57      ./configure --without-tbb  —with-parsec=${TESSE_DIR}
58      ```
59
60      To enable debugging add the following to the configure command: ```--disable-optimization --enable-debugging```. See ```./configure --help``` for additional options.
61
62    * Using CMake (with a separate build directory):
63
64      ```shell
65      mkdir build; cd build
66      cmake -Wno-dev -D ENABLE_TBB=OFF ..
67      ```
68
69      To enable debugging  add the following command-line option to ```cmake```: ```-DCMAKE_BUILD_TYPE=Debug```. It is recommended to collect all CMake variable definitions in a toolchain file, e.g. see ```madness/cmake/toolchains/generic-mkl-tbb.cmake```. You can specify the toolchain file to use by providing a command-line option to ```cmake``` as ```-DCMAKE_TOOLCHAIN_FILE=<toolchain-file-path>```.
70
71  * Build.
72
73    ```
74    make
75    ```
76 * You are now ready to hack into the TESSE source code!
77
78