1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-07-18 08:53:47 +02:00
qmckl/org
Aurélien Delval d0eb207404
Integration of Verificarlo CI tests (#1)
* comment

* Update distance test code

The distance test has been updated to the latest version, with a first attempt at using vfc_probes inside it

* Functional implementation of vfc_probes in the distance tests

This commit has the first functional vfc_ci tests. Verificarlo tests
should be written over the existing tests, and they can be enabled with
the following configure command:

QMCKL_DEVEL=1 ./configure --prefix=$PWD/_install --enable-maintainer-mode --enable-vfc_ci CC="verificarlo-f -Mpreprocess -D VFC_CI" FC="verificarlo-f -Mpreprocess -D VFC_CI" --host=x86_64

The --enable-vfc_ci flag will trigger the linking of the vfc_ci
library. Moreover, as of now, the "-Mpreprocess" and "-D VFC_CI" flags
have to be specified directly here. There is probably an appropriate
macro to place those flags into but I couldn't find it yet, and could
only manage to build the tests this way.

When the VFC_CI preprocessor is defined, somme additional code to
register and export the test probes can be executed (see
qmckl_distance.org).

As of now, the tests are built as normal, even though they are expected
to fail :

make all
make check

From there, the test_qmckl_distance (and potentially the others)
executable can be called at will. This will typically be done
automatically by vfc_ci, but one could manually execute the executable
by defining the following env variables :

VFC_PROBES_OUTPUT="test.csv" VFC_BACKENDS="libinterflop_ieee.so"

depending on the export file and the Verificarlo backend to be used.

The next steps will be to define more tests such as this one, and to
integrate them into a Verificarlo CI workflow (by writing a
vfc_tests_config.json file and using the automatic CI setup
command).

* Error in FOrtran interface fixed

* Added missing Fortran interfaces

* Modify distance test and install process integration

All probes are now ignored using only the preprocessor (instead
of checking for a facultative argument) in the distance test.
Moreover,preprocessing can now be enabled correctly using FCFLAGS
(the issue seemed to come from the order of the arguments passed
to gfortran/verificarlo-f with the preprocessor arg having to come
first).

* Add vfc_probes to AO tests

vfc_probes have been added to qmckl_ao.org in the same way as
qmckl_distance.org, which means that it can be enabled or disabled at
compile time using the --enable-vfc_ci option.

qmckl_distance.org has been slightly modified with a better indentation,
and configure.ac now adds the "-D VFC_CI" flag to CFLAGS when vfc_ci is
enabled.

Co-authored-by: Anthony Scemama <scemama@irsamc.ups-tlse.fr>
2021-07-07 13:42:42 +02:00
..
hpc Working on automake 2021-05-11 11:45:49 +02:00
.gitignore Clean configure 2021-06-03 01:32:50 +02:00
chbrclf.png Added 'N' and 'T' in coord 2021-05-19 00:28:56 +02:00
Makefile Added eN distances 2021-05-18 12:32:28 +02:00
qmckl_ao.org Integration of Verificarlo CI tests (#1) 2021-07-07 13:42:42 +02:00
qmckl_context.org Implemented AO primitives 2021-06-10 23:54:39 +02:00
qmckl_distance.org Integration of Verificarlo CI tests (#1) 2021-07-07 13:42:42 +02:00
qmckl_electron.org Integration of Verificarlo CI tests (#1) 2021-07-07 13:42:42 +02:00
qmckl_error.org Working on AOs 2021-06-10 00:10:19 +02:00
qmckl_memory.org removed malloc.h 2021-05-12 23:57:40 +02:00
qmckl_nucleus.org Added Fortran interfaces 2021-06-23 23:58:28 +02:00
qmckl_numprec.org Removed need for munit 2021-05-11 16:47:22 +02:00
qmckl_tests.org Working on AOs 2021-06-10 00:10:19 +02:00
qmckl_utils.org Added 'N' and 'T' in coord 2021-05-19 00:28:56 +02:00
qmckl.org Extended error arg list to 20 and restored nuclear charge test. #15 2021-05-26 14:21:11 +05:30
README.org Fixed module depend 2021-05-12 01:51:26 +02:00
table_of_contents Added 'N' and 'T' in coord 2021-05-19 00:28:56 +02:00

QMCkl source code documentation


The .org files is included here in the order specified in the table_of_contents file.


The ultimate goal of the QMCkl library is to provide a high-performance implementation of the main kernels of QMC. In this particular implementation of the library, we focus on the definition of the API and the tests, and on a pedagogical presentation of the algorithms. We expect the HPC experts to use this repository as a reference for re-writing optimized libraries.

The source code of the library is available at https://github.com/trex-coe/qmckl and bug reports should be submitted at https://github.com/trex-coe/qmckl/issues.


https://trex-coe.eu/sites/default/files/inline-images/euflag.jpg TREX: Targeting Real Chemical Accuracy at the Exascale project has received funding from the European Unions Horizon 2020 - Research and Innovation program - under grant agreement no. 952165. The content of this document does not represent the opinion of the European Union, and the European Union is not responsible for any use that might be made of such content.