Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
elpa
elpa
Commits
065e5150
Commit
065e5150
authored
Apr 25, 2016
by
Andreas Marek
Browse files
Merge branch 'master' into ELPA_GPU
parents
ff3301ab
c0ce2f09
Changes
10
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
065e5150
...
...
@@ -370,3 +370,15 @@ single-precision-mpi-ftimings-redirect-real-avx_block6-jobs:
-
make -j
8
-
export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
-
make check TEST_FLAGS='1500 50 16'
set-kernel-via-environment-variable-job
:
script
:
-
export LANG=C
-
module load impi intel gcc mkl autotools
-
./autogen.sh
-
./configure CFLAGS="-O3 -mavx" CXXFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="-L/afs/@cell/common/soft/intel/ics2015/15.0/mkl/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -Wl,-rpath,$MKL_HOME/lib/intel64" SCALAPACK_FCFLAGS="-L/afs/@cell/common/soft/intel/ics2015/15.0/mkl/lib/intel64 -lmkl_scalapack_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -I$MKLROOT/include/intel64/lp64" --enable-openmp
-
make -j
8
-
export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
-
export REAL_ELPA_KERNEL=REAL_ELPA_KERNEL_GENERIC
-
export COMPLEX_ELPA_KERNEL=COMPLEX_ELPA_KERNEL_GENERIC
-
make check TEST_FLAGS='1500 50 16'
Makefile.am
View file @
065e5150
This diff is collapsed.
Click to expand it.
configure.ac
View file @
065e5150
...
...
@@ -881,9 +881,9 @@ if test x"${install_real_bgq}" = x"yes" ; then
fi
if test x"${use_specific_complex_kernel}" = x"no" ; then
AC_DEFINE([WITH_NO_SPECIFIC_COMPLEX_KERNEL],[1],[do not use only one specific complex kernel (set at compile time)])
AC_DEFINE([WITH_NO_SPECIFIC_COMPLEX_KERNEL],[1],[do not use only one specific complex kernel (set at compile time)])
else
AC_DEFINE([WITH_ONE_SPECIFIC_COMPLEX_KERNEL],[1],[use only one specific complex kernel (set at compile time)])
AC_DEFINE([WITH_ONE_SPECIFIC_COMPLEX_KERNEL],[1],[use only one specific complex kernel (set at compile time)])
fi
if test x"${use_specific_real_kernel}" = x"no" ; then
...
...
m4/ax_elpa_specific_kernels.m4
View file @
065e5150
...
...
@@ -86,6 +86,30 @@ AC_DEFUN([DEFINE_OPTION_SPECIFIC_REAL_KERNEL],[
fi
fi
if test x"${install_real_sse_block2}" = x"yes" ; then
if test x"${can_compile_sse_intrinsics}" = x"no" ; then
AC_MSG_ERROR([$2 kernel was set, but cannot be compiled!])
else
want_sse=yes
fi
fi
if test x"${install_real_sse_block4}" = x"yes" ; then
if test x"${can_compile_sse_intrinsics}" = x"no" ; then
AC_MSG_ERROR([$2 kernel was set, but cannot be compiled!])
else
want_sse=yes
fi
fi
if test x"${install_real_sse_block6}" = x"yes" ; then
if test x"${can_compile_sse_inrinsics}" = x"no" ; then
AC_MSG_ERROR([$2 kernel was set, but cannot be compiled!])
else
want_sse=yes
fi
fi
if test x"${install_real_avx_block2}" = x"yes" ; then
if test x"${can_compile_avx}" = x"no" ; then
AC_MSG_ERROR([$2 kernel was set, but cannot be compiled!])
...
...
@@ -111,10 +135,10 @@ AC_DEFUN([DEFINE_OPTION_SPECIFIC_REAL_KERNEL],[
fi
AC_MSG_NOTICE([$1 will be the only compiled kernel for real case])
if test x"${want_gpu}" = x"yes" ; then
AC_MSG_WARN([At the moment this disables GPU support!])
AC_MSG_WARN([IF GPU support is wanted do NOT specify a specific real kernel])
fi
#
if test x"${want_gpu}" = x"yes" ; then
#
AC_MSG_WARN([At the moment this disables GPU support!])
#
AC_MSG_WARN([IF GPU support is wanted do NOT specify a specific real kernel])
#
fi
else
AC_MSG_FAILURE([$1 failed; A specific kernel for real case has already been defined before!])
fi
...
...
@@ -145,7 +169,7 @@ AC_DEFUN([DEFINE_OPTION_SPECIFIC_COMPLEX_KERNEL],[
want_avx=no
want_avx2=no
install_gpu=no
#
install_gpu=no
use_specific_complex_kernel=yes
dnl now set the specific kernel
$3=yes
...
...
@@ -161,6 +185,8 @@ AC_DEFUN([DEFINE_OPTION_SPECIFIC_COMPLEX_KERNEL],[
if test x"${install_complex_sse_assembly}" = x"yes" ; then
if test x"${can_compile_sse_assembly}" = x"no" ; then
AC_MSG_ERROR([$2 kernel was set, but cannot be compiled!])
else
want_sse=yes
fi
fi
...
...
src/elpa2_utilities.F90
View file @
065e5150
...
...
@@ -81,7 +81,6 @@ module ELPA2_utilities
REAL_ELPA_KERNEL_AVX2_BLOCK4
,
REAL_ELPA_KERNEL_AVX2_BLOCK6
,
&
REAL_ELPA_KERNEL_GPU
,
DEFAULT_REAL_ELPA_KERNEL
public
::
COMPLEX_ELPA_KERNEL_GENERIC
,
COMPLEX_ELPA_KERNEL_GENERIC_SIMPLE
,
&
COMPLEX_ELPA_KERNEL_BGP
,
COMPLEX_ELPA_KERNEL_BGQ
,
&
COMPLEX_ELPA_KERNEL_SSE
,
COMPLEX_ELPA_KERNEL_SSE_BLOCK1
,
&
...
...
src/mod_compute_hh_trafo_complex.F90
View file @
065e5150
...
...
@@ -333,7 +333,6 @@ module compute_hh_trafo_complex
#endif /* WITH_NO_SPECIFIC_COMPLEX_KERNEL */
#if defined(WITH_NO_SPECIFIC_COMPLEX_KERNEL) || (defined(WITH_ONE_SPECIFIC_COMPLEX_KERNEL) && !defined(WITH_COMPLEX_AVX_BLOCK2_KERNEL) && !defined(WITH_COMPLEX_AVX2_BLOCK2_KERNEL))
ttt
=
mpi_wtime
()
do
j
=
ncols
,
1
,
-1
#ifdef WITH_OPENMP
...
...
src/mod_mpi_stubs.F90
View file @
065e5150
...
...
@@ -121,6 +121,6 @@ module elpa_mpi_stubs
new_comm
=
mpi_communicator
mpierr
=
0
return
end
subroutine
end
subroutine
mpi_comm_split
end
module
test/fortran_test_programs/elpa_test_programs_print_headers.X90
View file @
065e5150
...
...
@@ -168,7 +168,7 @@
#ifdef WITH_REAL_GENERIC_SIMPLE_KERNEL
print *,"GENERIC SIMPLE kernel for real matrices"
#endif
#ifdef WITH_REAL_SSE_KERNEL
#ifdef WITH_REAL_SSE_
ASSEMBLY_
KERNEL
print *,"SSE ASSEMBLER kernel for real matrices"
#endif
#ifdef WITH_REAL_BGP_KERNEL
...
...
@@ -213,7 +213,7 @@
#ifdef WITH_COMPLEX_GENERIC_SIMPLE_KERNEL
print *,"GENERIC SIMPLE kernel for complex matrices"
#endif
#ifdef WITH_COMPLEX_SSE_KERNEL
#ifdef WITH_COMPLEX_SSE_
ASSEMBLY_
KERNEL
print *,"SSE ASSEMBLER kernel for complex matrices"
#endif
...
...
test/fortran_test_programs/test_complex2_choose_kernel_with_api.F90
View file @
065e5150
...
...
@@ -349,8 +349,6 @@ program test_complex2_choose_kernel_with_api_double_precision
COMPLEX_ELPA_KERNEL_SSE
)
#endif
#ifdef WITH_ONE_SPECIFIC_COMPLEX_KERNEL
#ifdef WITH_COMPLEX_SSE_BLOCK2_KERNEL
COMPLEX_ELPA_KERNEL_SSE_BLOCK2
)
#else
...
...
@@ -367,33 +365,12 @@ program test_complex2_choose_kernel_with_api_double_precision
#endif
#endif
#else /* WITH_ONE_SPECIFIC_COMPLEX_KERNEL */
#ifdef WITH_COMPLEX_SSE_BLOCK1_KERNEL
COMPLEX_ELPA_KERNEL_SSE_BLOCK1
)
#endif
#ifdef WITH_COMPLEX_SSE_BLOCK2_KERNEL
COMPLEX_ELPA_KERNEL_SSE_BLOCK2
)
#endif
#ifdef WITH_COMPLEX_AVX_BLOCK1_KERNEL
COMPLEX_ELPA_KERNEL_AVX_BLOCK1
)
#endif
#ifdef WITH_COMPLEX_AVX_BLOCK2_KERNEL
COMPLEX_ELPA_KERNEL_AVX_BLOCK2
)
#endif
#endif /* WITH_ONE_SPECIFIC_COMPLEX_KERNEL */
#ifdef WITH_GPU_VERSION
COMPLEX_ELPA_KERNEL_GPU
)
#endif
#endif /* WITH_ONE_SPECIFIC_COMPLEX_KERNEL */
if
(
.not.
(
successELPA
))
then
write
(
error_unit
,
*
)
"solve_evp_complex_2stage produced an error! Aborting..."
#ifdef WITH_MPI
...
...
test/fortran_test_programs/test_real2_choose_kernel_with_api.F90
View file @
065e5150
...
...
@@ -394,7 +394,6 @@ program test_real2_choose_kernel_with_api_double_precision
REAL_ELPA_KERNEL_AVX_BLOCK6
)
#endif
#endif /* WITH_ONE_SPECIFIC_REAL_KERNEL */
#ifdef WITH_REAL_BGP_KERNEL
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment