Commit ed963673 authored by Andreas Marek's avatar Andreas Marek
Browse files

Template for elpa_impl

parent a87aa965
...@@ -85,7 +85,8 @@ EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \ ...@@ -85,7 +85,8 @@ EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \
src/elpa1/elpa_reduce_add_vectors.F90 \ src/elpa1/elpa_reduce_add_vectors.F90 \
src/elpa1/elpa_transpose_vectors.F90 \ src/elpa1/elpa_transpose_vectors.F90 \
src/elpa_api_math_template.F90 \ src/elpa_api_math_template.F90 \
src/elpa_impl_template.F90 \ src/elpa_impl_math_template.F90 \
src/elpa_impl_generalized_transform_template.F90 \
src/elpa1/elpa1_compute_template.F90 \ src/elpa1/elpa1_compute_template.F90 \
src/elpa2/elpa2_compute_real_template.F90 \ src/elpa2/elpa2_compute_real_template.F90 \
src/elpa2/elpa2_compute_complex_template.F90 \ src/elpa2/elpa2_compute_complex_template.F90 \
...@@ -659,7 +660,8 @@ EXTRA_DIST = \ ...@@ -659,7 +660,8 @@ EXTRA_DIST = \
nvcc_wrap \ nvcc_wrap \
src/GPU/cuUtils_template.cu \ src/GPU/cuUtils_template.cu \
src/elpa_api_math_template.F90 \ src/elpa_api_math_template.F90 \
src/elpa_impl_template.F90 \ src/elpa_impl_math_template.F90 \
src/elpa_impl_generalized_transform.F90 \
src/elpa1/elpa1_compute_template.F90 \ src/elpa1/elpa1_compute_template.F90 \
src/elpa1/elpa1_merge_systems_real_template.F90 \ src/elpa1/elpa1_merge_systems_real_template.F90 \
src/elpa1/elpa1_solve_tridi_real_template.F90 \ src/elpa1/elpa1_solve_tridi_real_template.F90 \
......
...@@ -31,7 +31,7 @@ AC_SUBST([ELPA_SO_VERSION], [11:0:0]) ...@@ -31,7 +31,7 @@ AC_SUBST([ELPA_SO_VERSION], [11:0:0])
# API Version # API Version
AC_DEFINE([EARLIEST_API_VERSION], [20170403], [Earliest supported ELPA API version]) AC_DEFINE([EARLIEST_API_VERSION], [20170403], [Earliest supported ELPA API version])
AC_DEFINE([CURRENT_API_VERSION], [20171201], [Current ELPA API version]) AC_DEFINE([CURRENT_API_VERSION], [20180301], [Current ELPA API version])
# Autotune Version # Autotune Version
AC_DEFINE([EARLIEST_AUTOTUNE_VERSION], [20171201], [Earliest ELPA API version, which supports autotuning]) AC_DEFINE([EARLIEST_AUTOTUNE_VERSION], [20171201], [Earliest ELPA API version, which supports autotuning])
......
...@@ -18,6 +18,7 @@ config-f90.h: config.h ...@@ -18,6 +18,7 @@ config-f90.h: config.h
generated_headers += elpa/elpa_generated.h generated_headers += elpa/elpa_generated.h
elpa/elpa_generated.h: $(top_srcdir)/src/elpa_impl.F90 \ elpa/elpa_generated.h: $(top_srcdir)/src/elpa_impl.F90 \
$(top_srcdir)/src/elpa_impl_math_template.F90 \
$(top_srcdir)/src/elpa_api.F90 | elpa $(top_srcdir)/src/elpa_api.F90 | elpa
@rm -f $@ @rm -f $@
$(call extract_interface,!c>) $(call extract_interface,!c>)
......
...@@ -513,14 +513,12 @@ module elpa_api ...@@ -513,14 +513,12 @@ module elpa_api
#undef REALCASE #undef REALCASE
#undef DOUBLE_PRECISION #undef DOUBLE_PRECISION
#ifdef WANT_SINGLE_PRECISION_REAL
#define REALCASE 1 #define REALCASE 1
#define SINGLE_PRECISION 1 #define SINGLE_PRECISION 1
#include "general/precision_macros.h" #include "general/precision_macros.h"
#include "elpa_api_math_template.F90" #include "elpa_api_math_template.F90"
#undef REALCASE #undef REALCASE
#undef SINGLE_PRECISION #undef SINGLE_PRECISION
#endif /* WANT_SINGLE_PRECISION_REAL */
#define COMPLEXCASE 1 #define COMPLEXCASE 1
#define DOUBLE_PRECISION 1 #define DOUBLE_PRECISION 1
...@@ -529,14 +527,12 @@ module elpa_api ...@@ -529,14 +527,12 @@ module elpa_api
#undef DOUBLE_PRECISION #undef DOUBLE_PRECISION
#undef COMPLEXCASE #undef COMPLEXCASE
#ifdef WANT_SINGLE_PRECISION_COMPLEX
#define COMPLEXCASE 1 #define COMPLEXCASE 1
#define SINGLE_PRECISION #define SINGLE_PRECISION
#include "general/precision_macros.h" #include "general/precision_macros.h"
#include "elpa_api_math_template.F90" #include "elpa_api_math_template.F90"
#undef COMPLEXCASE #undef COMPLEXCASE
#undef SINGLE_PRECISION #undef SINGLE_PRECISION
#endif /* WANT_SINGLE_PRECISION_COMPLEX */
! end of math routines ! end of math routines
......
This diff is collapsed.
...@@ -62,6 +62,7 @@ ...@@ -62,6 +62,7 @@
&trmm("L", "U", BLAS_TRANS_OR_CONJ, "N", self%na, self%na, & &trmm("L", "U", BLAS_TRANS_OR_CONJ, "N", self%na, self%na, &
ONE, b, self%na, a, self%na) ONE, b, self%na, a, self%na)
#endif #endif
call self%timer_stop("scalapack multiply inv(U)^T * A") call self%timer_stop("scalapack multiply inv(U)^T * A")
#endif /* DO_USE_ELPA_HERMITIAN_MULTIPLY */ #endif /* DO_USE_ELPA_HERMITIAN_MULTIPLY */
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment