QMCPACK
sycl_determinant_helper.hpp
Go to the documentation of this file.
1 //////////////////////////////////////////////////////////////////////////////////////
2 // This file is distributed under the University of Illinois/NCSA Open Source License.
3 // See LICENSE file in top directory for details.
4 //
5 // Copyright (c) 2022 QMCPACK developers.
6 //
7 // File developed by: Jeongnim Kim, jeongnim.kim@intel.com, Intel Corp.
8 // Ye Luo, yeluo@anl.gov, Argonne National Laboratory
9 //
10 // File created by: Jeongnim Kim, jeongnim.kim@intel.com, Intel Corp.
11 //////////////////////////////////////////////////////////////////////////////////////
12 
13 
14 #ifndef QMCPLUSPLUS_SYCL_DETERMINANT_HELPER_H
15 #define QMCPLUSPLUS_SYCL_DETERMINANT_HELPER_H
16 
17 #include <complex>
18 #include <vector>
19 #include <sycl/sycl.hpp>
20 
21 namespace qmcplusplus
22 {
23 template<typename T>
24 sycl::event applyW_stageV_sycl(sycl::queue& aq,
25  const int* delay_list_gpu,
26  const int delay_count,
27  T* temp_gpu,
28  const int numorbs,
29  const int ndelay,
30  T* V_gpu,
31  const T* Ainv,
32  const std::vector<sycl::event>& dependencies = {});
33 
34 template<typename T, typename TMAT, typename INDEX>
35 std::complex<T> computeLogDet_sycl(sycl::queue& aq,
36  int n,
37  int lda,
38  const TMAT* a,
39  const INDEX* pivot,
40  const std::vector<sycl::event>& dependencies = {});
41 
42 } // namespace qmcplusplus
43 #endif
helper functions for EinsplineSetBuilder
Definition: Configuration.h:43
std::complex< T > computeLogDet_sycl(sycl::queue &aq, int n, int lda, const TMAT *restrict a, const INDEX *restrict pivot, const std::vector< sycl::event > &dependencies)
sycl::event applyW_stageV_sycl(sycl::queue &aq, const int *restrict delay_list_gpu, const int delay_count, T *restrict temp_gpu, const int numorbs, const int ndelay, T *restrict V_gpu, const T *restrict Ainv, const std::vector< sycl::event > &dependencies)