1
0
mirror of https://github.com/TREX-CoE/qmckl.git synced 2024-12-22 20:36:01 +01:00
Commit Graph

489 Commits

Author SHA1 Message Date
Aurélien Delval
0ce0a93522 Fix preprocessor else and remove old cuBLAS interface 2022-04-05 14:37:57 +02:00
Aurélien Delval
eb71a752f5 Fixed naive GPU kernels and ignored variable issue 2022-04-05 14:28:35 +02:00
Aurélien Delval
bc43113b6f
Merge branch 'gpu' into master 2022-04-05 11:46:12 +02:00
94035929e4 Fixed cppcheck 2022-04-05 11:45:02 +02:00
Aurélien Delval
0e43d33a1d
Merge branch 'gpu' into master 2022-04-05 11:39:16 +02:00
6fb261d635 warnings 2022-04-05 11:15:42 +02:00
731fded4a8 warnings 2022-04-05 11:03:30 +02:00
Aurélien Delval
98097e8fa7 Convert GPU implementations to C
TODO : Fix naive implementation which seems to be incorrect (probably an
issue with indexing)
2022-04-05 11:02:08 +02:00
511eba5843 Fixed dgemm bug 2022-04-05 09:56:13 +02:00
bcdbc49d5f Cleaning 2022-04-04 23:53:58 +02:00
dd045452f6 Fixed documentation 2022-04-04 17:30:38 +02:00
1f9ea610d4 Moved C version of Jastrow into HPC 2022-04-04 16:56:33 +02:00
Aurélien Delval
84013a5f76 Cleanup before merging into QMCkl's GPU branch 2022-04-04 12:12:11 +02:00
7e56b3e2ed Merge branch 'master' into gpu 2022-04-04 12:11:57 +02:00
bac1eb33f0 Fixed configure for Nvidian compilers 2022-04-04 12:11:26 +02:00
Gianfranco Abrusci
35e15205df Merge branch 'master' into jastrow_c 2022-04-04 11:22:17 +02:00
Aurélien Delval
26bbd6f341 Start work on cuBLAS implementation
TODO Replace CPU BLAS calls by cuBLAS calls (will probably require to write a Fortran to the functions we're interested in, at least DGEMMs)
2022-04-01 09:19:56 +02:00
Aurélien Delval
9428eaa19e Implement computation of tmp_c and dtmp_c in OpenACC
These 2 kernels seem to give good speedup compared to the CPU BLAS
versions. However, the current GPU implementation of factor_een_deriv seems to
be slightly slower (on the tested machine).

TODO:
- Try to improve factor_een_deriv GPU implem
- Try out a cuBLAS implementation of tmp_c and dtmp_c
2022-03-30 16:16:06 +02:00
Aurelien Delval
99306473a4 Start OpenACC implementation in Jastro, including compute_dtmp_c 2022-03-30 09:01:32 +02:00
91811079d3 Fixed bugs. Travis OK. 2022-03-28 18:29:29 +02:00
b9cd2ed1ab Fix type error 2022-03-28 18:26:20 +02:00
bab87884cd Accelerated HPC AO->MO transformation 2022-03-28 17:58:03 +02:00
1b0bfd40be HPC version of AO->MO transformation 2022-03-28 17:37:50 +02:00
9b1f648437 Accelerated AO->MO transformation 2022-03-28 16:53:36 +02:00
Aurelien Delval
383c6ac78a Add OFFLOAD_FLAGS, OFFLOAD_CFLAGS and OFFLOAD_FCFLAGS vars to configure 2022-03-28 07:58:01 +02:00
Aurelien Delval
bcc49ca312 Minor fixes to previous commit
TODO Start modifying dedicated function to implement offloading

Also, as of now, Fortran preprocessor flags should be passed manually,
we need to manage this in the configure.ac in the future. For now, when
using gfortran, you should pass FCFLAGS="-cpp -DWITH_OPENMP_OFFLOAD" to
enable offloading.
2022-03-25 13:03:35 +01:00
Aurelien Delval
5e3231e7e3 Add selection mechanism for offload mode in Jastrow
This system adds an additional field to the QMCkl context to store the
offload mode currently in use for each kernel (in this commit, this has
been implemented for Jastrow as an example). This will be useful to test
different offloading versions that can be easily toggled on/off at
compilation and at runtime.
2022-03-24 16:35:29 +01:00
5ecb1d6326 Faster AOs 2022-03-21 18:32:39 +01:00
Gianfranco Abrusci
3ce162a384 dtmp_c done 2022-03-17 22:27:10 +01:00
Gianfranco Abrusci
6b45157212 tmp_c done 2022-03-17 17:46:21 +01:00
Gianfranco Abrusci
b222ee3156 lkpm works 2022-03-14 11:21:31 +01:00
9124c9209a Merge branch 'master' of github.com:TREX-CoE/qmckl 2022-03-11 13:16:48 +01:00
Gianfranco Abrusci
712f595ed6 Merge branch 'jastrow_c' into qmckl_compute_dim_cord_vect_f 2022-03-09 11:23:43 +01:00
Gianfranco Abrusci
88e3fc1100 Merge branch 'master' into jastrow_c 2022-03-09 11:18:45 +01:00
Gianfranco Abrusci
a4ba5deac4 compute_dim_cord_vect done 2022-03-09 11:15:15 +01:00
Gianfranco Abrusci
d13693a822 to be cleaned from print 2022-03-02 10:18:45 +01:00
5b6f530255 Fix debug build
Added missing preprocessor wrapper
2022-03-01 14:17:38 +01:00
8b7b56b57b Fix broken build
Recent HPC-related additions break the current build (make) process. This is because the HPC-related functions are not wrapped in the preprocessor ifdef statement.
2022-02-28 22:28:11 +01:00
Gianfranco Abrusci
4fac9f06c9 to be checked 2022-02-28 17:47:24 +01:00
22cd823edf Working on generalized contractions 2022-02-27 23:31:52 +01:00
26fe759209 Added examples.org 2022-02-27 12:35:58 +01:00
5e35df226a Fortran interface 2022-02-27 11:18:26 +01:00
ad86cb7d67 Working on HPC version of AOs 2022-02-25 20:39:20 +01:00
b6a31b8c58 Optimize AOs 2022-02-25 16:30:16 +01:00
ff526a18cb Fix Clang build 2022-02-25 13:57:13 +01:00
1a5b76157b Updated documentation 2022-02-24 19:06:19 +01:00
Gianfranco Abrusci
3bd249176f Merge branch 'jastrow_c' into qmckl_compute_een_rescaled_n 2022-02-22 14:55:55 +01:00
Gianfranco Abrusci
5151f1bd36 Merge branch 'master' into jastrow_c 2022-02-22 14:53:00 +01:00
Gianfranco Abrusci
2427d1b56e working qmckl_compute_een_rescaled_n 2022-02-22 14:52:21 +01:00
d919c53c42 Fix bug in HPC AOs 2022-02-19 19:24:18 +01:00