Commit c9172d13 authored by Andreas Marek's avatar Andreas Marek

Cleanup of real generic kernel

parent 719457df
......@@ -296,12 +296,16 @@
#ifdef WITH_OPENMP
#ifdef USE_ASSUMED_SIZE
call double_hh_trafo_generic_&
call double_hh_trafo_&
&MATH_DATATYPE&
&_generic_&
&PRECISION&
& (a(1,j+off+a_off-1,istripe,my_thread), w, nbw, nl, stripe_width, nbw)
#else
call double_hh_trafo_generic_&
call double_hh_trafo_&
&MATH_DATATYPE&
&_generic_&
&PRECISION&
& (a(1:stripe_width,j+off+a_off-1:j+off+a_off+nbw-1, istripe,my_thread), w(1:nbw,1:6), &
nbw, nl, stripe_width, nbw)
......@@ -310,12 +314,16 @@
#else /* WITH_OPENMP */
#ifdef USE_ASSUMED_SIZE
call double_hh_trafo_generic_&
call double_hh_trafo_&
&MATH_DATATYPE&
&_generic_&
&PRECISION&
& (a(1,j+off+a_off-1,istripe),w, nbw, nl, stripe_width, nbw)
#else
call double_hh_trafo_generic_&
call double_hh_trafo_&
&MATH_DATATYPE&
&_generic_&
&PRECISION&
& (a(1:stripe_width,j+off+a_off-1:j+off+a_off+nbw-1,istripe),w(1:nbw,1:6), nbw, nl, stripe_width, nbw)
#endif
......
......@@ -64,32 +64,29 @@
module real_generic_kernel
private
public double_hh_trafo_generic_double
public double_hh_trafo_real_generic_double
#ifdef WANT_SINGLE_PRECISION_REAL
public double_hh_trafo_generic_single
public double_hh_trafo_real_generic_single
#endif
contains
#endif
#define DOUBLE_PRECISION_REAL 1
#define REAL_DATATYPE rk8
#define COMPLEX_DATATYPE ck8
#define REALCASE 1
#define DOUBLE_PRECISION 1
#include "../precision_macros.h"
#include "elpa2_kernels_real_template.X90"
#undef DOUBLE_PRECISION_REAL
#undef REAL_DATATYPE
#undef COMPLEX_DATATYPE
#undef REALCASE
#undef DOUBLE_PRECISION
#ifdef WANT_SINGLE_PRECISION_REAL
#undef DOUBLE_PRECISION_REAL
#define REAL_DATATYPE rk4
#define COMPLEX_DATATYPE ck4
#define REALCASE 1
#define SINGLE_PRECISION 1
#include "../precision_macros.h"
#include "elpa2_kernels_real_template.X90"
#undef DOUBLE_PRECISION_REAL
#undef REAL_DATATYPE
#undef COMPLEX_DATATYPE
#undef REALCASE
#undef SINGLE_PRECISION
#endif
#ifndef USE_ASSUMED_SIZE
......
......@@ -4,6 +4,7 @@
#undef MATH_DATATYPE
#undef BLAS_TRANS_OR_CONJ
#undef PRECISION
#undef SPECIAL_COMPLEX_DATATYPE
#undef PRECISION_STR
#undef REAL_DATATYPE
......@@ -55,7 +56,7 @@
#define PRECISION_STR 'double'
#define PRECISION_SUFFIX "_double"
#define REAL_DATATYPE rk8
#define SPECIAL_COMPLEX_DATATYPE ck8
#define PRECISION_TRTRI DTRTRI
#define PRECISION_POTRF DPOTRF
......@@ -101,6 +102,7 @@
#define PRECISION_STR 'single'
#define PRECISION_SUFFIX "_single"
#define REAL_DATATYPE rk4
#define SPECIAL_COMPLEX_DATATYPE ck4
#define PRECISION_TRTRI STRTRI
#define PRECISION_POTRF SPOTRF
......
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