Commit f64b038b authored by Andreas Marek's avatar Andreas Marek

Pass a_dev to elpa2_tridiag

parent 1675f678
......@@ -323,7 +323,7 @@
&MATH_DATATYPE&
&_&
&PRECISION&
(na, nbw, nblk, a, lda, ev, e, matrixCols, hh_trans, mpi_comm_rows, mpi_comm_cols, mpi_comm_all)
(na, nbw, nblk, a, a_dev, lda, ev, e, matrixCols, hh_trans, mpi_comm_rows, mpi_comm_cols, mpi_comm_all)
ttt1 = MPI_Wtime()
if (my_prow==0 .and. my_pcol==0 .and. elpa_print_times) &
......
......@@ -55,8 +55,7 @@
&_&
&PRECISION &
(na, nqc, nblk, nbw, a, a_dev, lda, tmat, tmat_dev, q, &
q_dev, &
ldq, matrixCols, numBlocks, mpi_comm_rows, mpi_comm_cols, useGPU &
q_dev, ldq, matrixCols, numBlocks, mpi_comm_rows, mpi_comm_cols, useGPU &
#if REALCASE == 1
,useQr)
#endif
......
......@@ -56,7 +56,7 @@
subroutine tridiag_band_complex_&
#endif
&PRECISION &
(na, nb, nblk, a, lda, d, e, matrixCols, &
(na, nb, nblk, aMatrix, a_dev, lda, d, e, matrixCols, &
#if REALCASE == 1
hh_trans_real, &
#endif
......@@ -74,7 +74,7 @@
!
! nblk blocksize of cyclic distribution, must be the same in both directions!
!
! a(lda,matrixCols) Distributed system matrix reduced to banded form in the upper diagonal
! aMatrix(lda,matrixCols) Distributed system matrix reduced to banded form in the upper diagonal
!
! lda Leading dimension of a
! matrixCols local columns of matrix a
......@@ -98,23 +98,25 @@
#endif
use elpa2_workload
use precision
use iso_c_binding
implicit none
integer(kind=ik), intent(in) :: na, nb, nblk, lda, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm
#if REALCASE == 1
#ifdef USE_ASSUMED_SIZE
real(kind=REAL_DATATYPE), intent(in) :: a(lda,*)
real(kind=REAL_DATATYPE), intent(in) :: aMatrix(lda,*)
#else
real(kind=REAL_DATATYPE), intent(in) :: a(lda,matrixCols)
real(kind=REAL_DATATYPE), intent(in) :: aMatrix(lda,matrixCols)
#endif
#endif /* REALCASE */
#if COMPLEXCASE == 1
#ifdef USE_ASSUMED_SIZE
complex(kind=COMPLEX_DATATYPE),intent(in) :: a(lda,*)
complex(kind=COMPLEX_DATATYPE),intent(in) :: aMatrix(lda,*)
#else
complex(kind=COMPLEX_DATATYPE), intent(in) :: a(lda,matrixCols)
complex(kind=COMPLEX_DATATYPE), intent(in) :: aMatrix(lda,matrixCols)
#endif
#endif /* COMPLEXCASE */
integer(kind=c_intptr_t) :: a_dev
real(kind=REAL_DATATYPE), intent(out) :: d(na), e(na) ! set only on PE 0
#if REALCASE == 1
real(kind=REAL_DATATYPE), intent(out), &
......@@ -267,7 +269,7 @@
&MATH_DATATYPE&
&_&
&PRECISION&
&(a, lda, na, nblk, nb, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, ab)
&(aMatrix, a_dev, lda, na, nblk, nb, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, ab)
! Calculate the workload for each sweep in the back transformation
! and the space requirements to hold the HH vectors
......
......@@ -47,26 +47,6 @@
#include "config-f90.h"
!#if REALCASE==1
!
!#ifdef DOUBLE_PRECISION_REAL
!subroutine redist_band_real_double(lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, r_ab)
!#else
!subroutine redist_band_real_single(lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, r_ab)
!#endif
!
!#endif /* REALCASE == 1 */
!
!#if COMPLEXCASE==1
!
!#ifdef DOUBLE_PRECISION_COMPLEX
!subroutine redist_band_complex_double(lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, c_ab)
!#else
!subroutine redist_band_complex_single(lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, c_ab)
!#endif
!
!#endif /* COMPLEXCASE == 1 */
subroutine redist_band_&
&MATH_DATATYPE&
&_&
......@@ -78,7 +58,7 @@ subroutine redist_band_&
#if COMPLEXCASE == 1
c_a, &
#endif
lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, &
a_dev, lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm, &
#if REALCASE == 1
r_ab)
#endif
......@@ -93,22 +73,23 @@ subroutine redist_band_&
#endif
use elpa2_workload
use precision
use iso_c_binding
implicit none
integer(kind=ik), intent(in) :: lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm
integer(kind=ik), intent(in) :: lda, na, nblk, nbw, matrixCols, mpi_comm_rows, mpi_comm_cols, mpi_comm
#if REALCASE == 1
real(kind=REAL_DATATYPE), intent(in) :: r_a(lda, matrixCols)
#endif
#if COMPLEXCASE == 1
complex(kind=COMPLEX_DATATYPE), intent(in) :: c_a(lda, matrixCols)
complex(kind=COMPLEX_DATATYPE), intent(in) :: c_a(lda, matrixCols)
#endif
#if REALCASE == 1
real(kind=REAL_DATATYPE), intent(out) :: r_ab(:,:)
#endif
integer(kind=c_intptr_t) :: a_dev
#if COMPLEXCASE == 1
complex(kind=COMPLEX_DATATYPE), intent(out) :: c_ab(:,:)
complex(kind=COMPLEX_DATATYPE), intent(out) :: c_ab(:,:)
#endif
integer(kind=ik), allocatable :: ncnt_s(:), nstart_s(:), ncnt_r(:), nstart_r(:), &
......
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