Skip to content
GitLab
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
09a8b7bb
Commit
09a8b7bb
authored
Oct 14, 2019
by
Andreas Marek
Browse files
Make ELPA (again) compile and run correctly with MPI and 32bit ints
parent
d836eea2
Changes
23
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
09a8b7bb
...
...
@@ -87,7 +87,7 @@ gnu-gnu-nompi-noopenmp-ilp64:
when: on_success
expire_in: 2 month
script:
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -
xAVX
\" FC=\"gfortra
m
\" FCFLAGS=\"-O3 -
xAVX
\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
M
OMPI_NOOMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --disable-openmp --disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -
mavx
\" FC=\"gfortra
n
\" FCFLAGS=\"-O3 -
mavx
\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
N
OMPI_NOOMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --disable-openmp --disable-gpu --enable-avx
--disable-avx2 --disable-avx512
--enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
# gnu-gnu-ilp64-nompi-openmp
...
...
@@ -98,7 +98,7 @@ gnu-gnu-nompi-openmp-ilp64:
when: on_success
expire_in: 2 month
script:
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -
xAVX
\" FC=\"gfortra
m
\" FCFLAGS=\"-O3 -
xAVX
\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
M
OMPI_OMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --enable-openmp --disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
- ./ci_test_scripts/run_ci_tests.sh -c "CC=\"gcc\" CFLAGS=\"-O3 -
mavx
\" FC=\"gfortra
n
\" FCFLAGS=\"-O3 -
mavx
\" SCALAPACK_LDFLAGS=\"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64 \" SCALAPACK_FCFLAGS=\"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
N
OMPI_OMP_ILP64 \" --enable-option-checking=fatal --with-mpi=no --enable-openmp --disable-gpu --enable-avx
--disable-avx2 --disable-avx512
--enable-64bit-integer-support || { cat config.log; exit 1; }" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE -s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM
# python tests
...
...
ci_test_scripts/.ci-env-vars
View file @
09a8b7bb
...
...
@@ -59,6 +59,15 @@ export MKL_ANACONDA_INTEL_SCALAPACK_MPI_OMP_BASELINE="-L$ANACONDA_HOME/lib -lmkl
export MKL_ANACONDA_INTEL_SCALAPACK_FCFLAGS_MPI_OMP="-I$MKL_HOME/include/intel64/lp64"
export MKL_ANACONDA_INTEL_SCALAPACK_LDFLAGS_MPI_OMP="$MKL_ANACONDA_INTEL_SCALAPACK_MPI_OMP_BASELINE -Wl,-rpath,$ANACONDA_HOME/lib"
export MKL_GFORTRAN_SCALAPACK_NOMPI_NOOMP_ILP64_BASELINE="-L$MKL_HOME/lib/intel64 -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -lpthread"
export MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_NOOMP_ILP64="-I$MKL_HOME/include/intel64/ilp64"
export MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64="$MKL_GFORTRAN_SCALAPACK_NOMPI_NOOMP_ILP64_BASELINE -Wl,-rpath,$MKL_HOME/lib/intel64"
export MKL_GFORTRAN_SCALAPACK_NOMPI_OMP_ILP64_BASELINE="-L$MKL_HOME/lib/intel64 -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -lpthread"
export MKL_GFORTRAN_SCALAPACK_FCFLAGS_NOMPI_OMP_ILP64="-I$MKL_HOME/include/intel64/ilp64"
export MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64="$MKL_GFORTRAN_SCALAPACK_NOMPI_OMP_ILP64_BASELINE -Wl,-rpath,$MKL_HOME/lib/intel64"
export ASAN_OPTIONS=suppressions=./ci_test_scripts/no_asan_for_mpi.supp,fast_unwind_on_malloc=0
export LSAN_OPTIONS=suppressions=./ci_test_scripts/no_lsan_for_mpi.supp
...
...
ci_test_scripts/generate_gitlab_ci_tests.py
View file @
09a8b7bb
...
...
@@ -343,12 +343,12 @@ ilp64_no_omp_tests = [
" expire_in: 2 month"
,
" script:"
,
' - ./ci_test_scripts/run_ci_tests.sh -c "'
'CC=
\\
"gcc
\\
" CFLAGS=
\\
"-O3 -
xAVX
\\
" '
'FC=
\\
"gfortra
m
\\
" FCFLAGS=
\\
"-O3 -
xAVX
\\
" '
'CC=
\\
"gcc
\\
" CFLAGS=
\\
"-O3 -
mavx
\\
" '
'FC=
\\
"gfortra
n
\\
" FCFLAGS=
\\
"-O3 -
mavx
\\
" '
'SCALAPACK_LDFLAGS=
\\
"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_NOOMP_ILP64
\\
" '
'SCALAPACK_FCFLAGS=
\\
"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
M
OMPI_NOOMP_ILP64
\\
" '
'SCALAPACK_FCFLAGS=
\\
"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
N
OMPI_NOOMP_ILP64
\\
" '
'--enable-option-checking=fatal --with-mpi=no --disable-openmp '
'--disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }'
'--disable-gpu --enable-avx
--disable-avx2 --disable-avx512
--enable-64bit-integer-support || { cat config.log; exit 1; }'
'" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE '
'-s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM'
,
"
\n
"
,
...
...
@@ -361,12 +361,12 @@ ilp64_no_omp_tests = [
" expire_in: 2 month"
,
" script:"
,
' - ./ci_test_scripts/run_ci_tests.sh -c "'
'CC=
\\
"gcc
\\
" CFLAGS=
\\
"-O3 -
xAVX
\\
" '
'FC=
\\
"gfortra
m
\\
" FCFLAGS=
\\
"-O3 -
xAVX
\\
" '
'CC=
\\
"gcc
\\
" CFLAGS=
\\
"-O3 -
mavx
\\
" '
'FC=
\\
"gfortra
n
\\
" FCFLAGS=
\\
"-O3 -
mavx
\\
" '
'SCALAPACK_LDFLAGS=
\\
"$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NOMPI_OMP_ILP64
\\
" '
'SCALAPACK_FCFLAGS=
\\
"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
M
OMPI_OMP_ILP64
\\
" '
'SCALAPACK_FCFLAGS=
\\
"$MKL_GFORTRAN_SCALAPACK_FCFLAGS_
N
OMPI_OMP_ILP64
\\
" '
'--enable-option-checking=fatal --with-mpi=no --enable-openmp '
'--disable-gpu --enable-avx --enable-64bit-integer-support || { cat config.log; exit 1; }'
'--disable-gpu --enable-avx
--disable-avx2 --disable-avx512
--enable-64bit-integer-support || { cat config.log; exit 1; }'
'" -j 8 -t $MPI_TASKS -m $MATRIX_SIZE -n $NUMBER_OF_EIGENVECTORS -b $BLOCK_SIZE '
'-s $SKIP_STEP -i $INTERACTIVE_RUN -S $SLURM'
,
"
\n
"
,
...
...
ci_test_scripts/run_ci_tests.sh
View file @
09a8b7bb
...
...
@@ -144,9 +144,12 @@ then
echo
"export TASKS=
$mpiTasks
"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
"make check TEST_FLAGS=
\"
$matrixSize
$nrEV
$blockSize
\"
"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
"exitCode=
\$
?"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
"#copy everything back from /tmp/elpa to runner directory"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
"cp -r *
\$
runner_path"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
"cd .. && rm -rf /tmp/elpa_
\$
SLURM_JOB_ID"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
"exit
\$
exitCode"
>>
./run_
${
CLUSTER
}
_1node_2GPU.sh
echo
" "
echo
"Job script for the run"
...
...
@@ -179,9 +182,12 @@ then
echo
"export TASKS=
$mpiTasks
"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"make check TEST_FLAGS=
\"
$matrixSize
$nrEV
$blockSize
\"
"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"exitCode=
\$
?"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"#copy everything back from /tmp/elpa to runner directory"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"cp -r *
\$
runner_path"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"cd .. && rm -rf /tmp/elpa_
\$
SLURM_JOB_ID"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"exit
\$
exitCode"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
echo
"Job script for the run"
...
...
ci_test_scripts/run_distcheck_tests.sh
View file @
09a8b7bb
...
...
@@ -127,10 +127,12 @@ then
echo
"export DISTCHECK_CONFIGURE_FLAGS=
\"
$distcheckConfigureArgs
\"
"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"make distcheck TEST_FLAGS=
\"
$matrixSize
$nrEV
$blockSize
\"
|| { chmod u+rwX -R . ; exit 1 ; } "
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"exitCode=
\$
?"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"#copy everything back from /tmp/elpa to runner directory"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"cp -r *
\$
runner_path"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"cd .. && rm -rf /tmp/elpa_
\$
SLURM_JOB_ID"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"exit
\$
exitCode"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
echo
"Job script for the run"
cat
./run_
${
CLUSTER
}
_1node.sh
...
...
ci_test_scripts/run_project_tests.sh
View file @
09a8b7bb
...
...
@@ -175,12 +175,14 @@ then
echo
"popd"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"pushd build"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"make distclean || { exit 1; }"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"exitCode=
\$
?"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"rm -rf installdest"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"popd"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"#copy everything back from /tmp/elpa to runner directory"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"cp -r *
\$
runner_path"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"cd .. && rm -rf /tmp/elpa_
\$
SLURM_JOB_ID"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
"exit
\$
exitCode"
>>
./run_
${
CLUSTER
}
_1node.sh
echo
" "
echo
"Job script for the run"
cat
./run_
${
CLUSTER
}
_1node.sh
...
...
src/elpa2/elpa2_bandred_template.F90
View file @
09a8b7bb
...
...
@@ -109,7 +109,7 @@
use
precision
use
elpa_blas_interfaces
#ifdef WITH_MPI
use
elpa_scalpack_interfaces
use
elpa_scal
a
pack_interfaces
#endif
use
elpa_abstract_impl
...
...
src/elpa2/elpa2_trans_ev_band_to_full_template.F90
View file @
09a8b7bb
...
...
@@ -761,7 +761,7 @@
call
PRECISION_TRMM
(
'L'
,
'U'
,
BLAS_TRANS_OR_CONJ
,
'N'
,
&
int
(
n_cols
,
kind
=
BLAS_KIND
),
int
(
l_cols
,
kind
=
BLAS_KIND
),
ONE
,
tmat
(
1
,
1
,
istep
),
&
int
(
ubound
(
tmat
,
dim
=
1
),
kind
=
BLAS_KIND
),
tmp1
,
int
(
n_cols
,
kind
=
BLAS_KIND
)
int
(
ubound
(
tmat
,
dim
=
1
),
kind
=
BLAS_KIND
),
tmp1
,
int
(
n_cols
,
kind
=
BLAS_KIND
)
)
call
PRECISION_GEMM
(
'N'
,
'N'
,
int
(
l_rows
,
kind
=
BLAS_KIND
),
int
(
l_cols
,
kind
=
BLAS_KIND
),
&
int
(
n_cols
,
kind
=
BLAS_KIND
),
-
ONE
,
hvm
,
int
(
ubound
(
hvm
,
dim
=
1
),
kind
=
BLAS_KIND
),
&
tmp1
,
int
(
n_cols
,
kind
=
BLAS_KIND
),
ONE
,
q_mat
,
int
(
ldq
,
kind
=
BLAS_KIND
))
...
...
src/elpa_generalized/cannon_back_template.c
View file @
09a8b7bb
...
...
@@ -74,7 +74,7 @@
#define cannons_triang_rectangular_c_impl_expand1(SUFFIX) cannons_triang_rectangular_c_impl_expand2(SUFFIX)
#define cannons_triang_rectangular_c_impl cannons_triang_rectangular_c_impl_expand1(ELPA_IMPL_SUFFIX)
void
cannons_triang_rectangular_impl
(
math_type
*
U
,
math_type
*
B
,
C_INT_TYPE
np_rows
,
C_INT_TYPE
np_cols
,
C_INT_TYPE
my_prow
,
C_INT_TYPE
my_pcol
,
C_INT_TYPE_PTR
U_desc
,
C_INT_TYPE_PTRb_desc
,
math_type
*
Res
,
MPI_Comm
row_comm
,
MPI_Comm
col_comm
)
void
cannons_triang_rectangular_impl
(
math_type
*
U
,
math_type
*
B
,
C_INT_TYPE
np_rows
,
C_INT_TYPE
np_cols
,
C_INT_TYPE
my_prow
,
C_INT_TYPE
my_pcol
,
C_INT_TYPE_PTR
U_desc
,
C_INT_TYPE_PTR
b_desc
,
math_type
*
Res
,
MPI_Comm
row_comm
,
MPI_Comm
col_comm
)
{
// Cannons algorithm, Non-blocking version
// Input:
...
...
src/elpa_impl_generalized_transform_template.F90
View file @
09a8b7bb
...
...
@@ -75,7 +75,7 @@
#ifdef WITH_MPI
call
cannons_reduction_
&
&
ELPA_IMPL_SUFFIX
&
&(
a
,
b
,
int
(
self
%
local_nrows
,
kind
=
kind
=
BLAS_KIND
),
int
(
self
%
local_ncols
,
kind
=
BLAS_KIND
),
&
&(
a
,
b
,
int
(
self
%
local_nrows
,
kind
=
BLAS_KIND
),
int
(
self
%
local_ncols
,
kind
=
BLAS_KIND
),
&
int
(
sc_desc
,
kind
=
BLAS_KIND
),
tmp
,
int
(
BuffLevelInt
,
kind
=
BLAS_KIND
),
&
int
(
mpi_comm_rows
,
kind
=
BLAS_KIND
),
int
(
mpi_comm_cols
,
kind
=
BLAS_KIND
))
#endif
...
...
src/helpers/fortran_blas_interfaces.F90
View file @
09a8b7bb
...
...
@@ -705,11 +705,11 @@
function
zlange
(
NORM
,
M
,
N
,
A
,
LDA
,
WORK
)
result
(
norm2
)
use
PRECISION_MODULE
implicit
none
character
::
NORM
integer
(
kind
=
BLAS_KIND
)
::
M
,
N
,
LDA
complex
(
kind
=
ck8
)
::
A
(
lda
,
*
)
complex
(
kind
=
c
k8
),
intent
(
inout
)
::
work
(
*
)
complex
(
kind
=
c
k8
)
::
norm2
character
::
NORM
integer
(
kind
=
BLAS_KIND
)
::
M
,
N
,
LDA
complex
(
kind
=
ck8
)
::
A
(
lda
,
*
)
real
(
kind
=
r
k8
),
intent
(
inout
)
::
work
(
*
)
real
(
kind
=
r
k8
)
::
norm2
end
function
end
interface
...
...
@@ -877,11 +877,11 @@
function
clange
(
NORM
,
M
,
N
,
A
,
LDA
,
WORK
)
result
(
norm2
)
use
PRECISION_MODULE
implicit
none
character
::
NORM
integer
(
kind
=
BLAS_KIND
)
::
M
,
N
,
LDA
complex
(
kind
=
ck4
)
::
A
(
lda
,
*
)
complex
(
kind
=
c
k4
),
intent
(
inout
)
::
work
(
*
)
complex
(
kind
=
c
k4
)
::
norm2
character
::
NORM
integer
(
kind
=
BLAS_KIND
)
::
M
,
N
,
LDA
complex
(
kind
=
ck4
)
::
A
(
lda
,
*
)
real
(
kind
=
r
k4
),
intent
(
inout
)
::
work
(
*
)
real
(
kind
=
r
k4
)
::
norm2
end
function
end
interface
...
...
src/helpers/fortran_scalapack_interfaces.F90
View file @
09a8b7bb
...
...
@@ -41,9 +41,35 @@
! This file was written by A. Marek, MPCDF
!interface for descint
!interface for BLACS_Gridinit
!interface for BLACS_Gridinfo
interface
subroutine
descinit
(
DESC
,
M
,
N
,
MB
,
NB
,
IRSRC
,
ICSRC
,
ICTXT
,
LLD
,
INFO
)
use
precision
implicit
none
integer
(
kind
=
BLAS_KIND
)
::
DESC
(
*
),
M
,
N
,
MB
,
NB
,
IRSRC
,
ICSRC
,
LLD
integer
(
kind
=
BLAS_KIND
),
intent
(
inout
)
::
info
integer
(
kind
=
BLAS_KIND
)
::
ICTXT
end
subroutine
end
interface
interface
subroutine
blacs_gridinit
(
ICONTXT
,
ORDER
,
NPROW
,
NPCOL
)
use
precision
implicit
none
integer
(
kind
=
BLAS_KIND
)
::
ICONTXT
character
(
len
=
1
)
::
ORDER
integer
(
kind
=
BLAS_KIND
)
::
NPROW
,
NPCOL
end
subroutine
end
interface
interface
subroutine
blacs_gridinfo
(
ICONTXT
,
NPROW
,
NPCOL
,
MYPROW
,
MYPCOL
)
use
precision
implicit
none
integer
(
kind
=
BLAS_KIND
)
::
ICONTXT
integer
(
kind
=
BLAS_KIND
),
intent
(
inout
)
::
NPROW
,
NPCOL
,
MYPROW
,
MYPCOL
end
subroutine
end
interface
interface
function
numroc
(
N
,
NB
,
IPROC
,
ISRCPROC
,
NPROCS
)
result
(
numr
)
...
...
@@ -209,8 +235,9 @@
implicit
none
character
::
norm
integer
(
kind
=
BLAS_KIND
)
::
m
,
n
,
ia
,
ja
,
desca
(
*
)
complex
(
kind
=
ck8
)
::
a
(
*
),
work
(
*
)
complex
(
kind
=
ck8
)
::
norm2
complex
(
kind
=
ck8
)
::
a
(
*
)
real
(
kind
=
rk8
)
::
work
(
*
)
real
(
kind
=
rk8
)
::
norm2
end
function
end
interface
...
...
@@ -262,8 +289,9 @@
implicit
none
character
::
norm
integer
(
kind
=
BLAS_KIND
)
::
m
,
n
,
ia
,
ja
,
desca
(
*
)
complex
(
kind
=
ck4
)
::
a
(
*
),
work
(
*
)
complex
(
kind
=
ck4
)
::
norm2
complex
(
kind
=
ck4
)
::
a
(
*
)
real
(
kind
=
rk4
)
::
work
(
*
)
real
(
kind
=
rk4
)
::
norm2
end
function
end
interface
src/helpers/scalapack_interfaces.h
View file @
09a8b7bb
...
...
@@ -6,7 +6,7 @@
#define C_INT_TYPE int
#endif
C_INT_TYPE
numroc_
(
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
^^^
);
C_INT_TYPE
numroc_
(
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
);
void
pdlacpy_
(
char
*
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
double
*
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
double
*
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
,
C_INT_TYPE_PTR
);
...
...
test/C/driver/legacy_interface/legacy_complex_driver_c_version.c
View file @
09a8b7bb
...
...
@@ -51,6 +51,19 @@
#include
<math.h>
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
<test/shared/generated.h>
#include
<complex.h>
...
...
test/C/driver/legacy_interface/legacy_real_driver_c_version.c
View file @
09a8b7bb
...
...
@@ -51,6 +51,20 @@
#include
<math.h>
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
<test/shared/generated.h>
int
main
(
int
argc
,
char
**
argv
)
{
...
...
test/C/driver/legacy_interface/legacy_single_complex_driver_c_version.c
View file @
09a8b7bb
...
...
@@ -51,6 +51,18 @@
#include
<math.h>
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
<test/shared/generated.h>
#include
<complex.h>
...
...
test/C/driver/legacy_interface/legacy_single_real_driver_c_version.c
View file @
09a8b7bb
...
...
@@ -51,6 +51,19 @@
#include
<math.h>
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
<test/shared/generated.h>
int
main
(
int
argc
,
char
**
argv
)
{
...
...
test/C/elpa1/legacy_interface/legacy_complex_1stage_c_version.c
View file @
09a8b7bb
...
...
@@ -51,6 +51,19 @@
#include
<math.h>
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
<test/shared/generated.h>
#include
<complex.h>
...
...
test/C/elpa1/legacy_interface/legacy_real_1stage_c_version.c
View file @
09a8b7bb
...
...
@@ -52,6 +52,19 @@
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
"test/shared/generated.h"
#define DOUBLE_PRECISION_REAL 1
...
...
test/C/elpa2/legacy_interface/legacy_complex_2stage_c_version.c
View file @
09a8b7bb
...
...
@@ -51,6 +51,19 @@
#include
<math.h>
#include
<elpa/elpa_legacy.h>
#ifdef HAVE_64BIT_INTEGER_SUPPORT
#define TEST_C_INT_TYPE_PTR long int*
#define C_INT_TYPE_PTR long int*
#define TEST_C_INT_TYPE long int
#define C_INT_TYPE long int
#else
#define TEST_C_INT_TYPE_PTR int*
#define C_INT_TYPE_PTR int*
#define TEST_C_INT_TYPE int
#define C_INT_TYPE int
#endif
#include
<test/shared/generated.h>
#include
<complex.h>
...
...
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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