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
9c352986
Commit
9c352986
authored
Jul 27, 2017
by
Andreas Marek
Browse files
Better debuging of GPU
parent
d2828aed
Changes
2
Pipelines
1
Expand all
Hide whitespace changes
Inline
Side-by-side
src/elpa2/compute_hh_trafo.X90
View file @
9c352986
This diff is collapsed.
Click to expand it.
src/elpa2/elpa2_trans_ev_tridi_to_band_template.X90
View file @
9c352986
...
...
@@ -98,69 +98,69 @@
use
iso_c_binding
implicit
none
class
(
elpa_abstract_impl_t
),
intent
(
inout
)
::
obj
logical
,
intent
(
in
)
::
useGPU
logical
,
intent
(
in
)
::
useGPU
integer
(
kind
=
ik
),
intent
(
in
)
::
kernel
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
nblk
,
nbw
,
ldq
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
integer
(
kind
=
ik
),
intent
(
in
)
::
kernel
integer
(
kind
=
ik
),
intent
(
in
)
::
na
,
nev
,
nblk
,
nbw
,
ldq
,
matrixCols
,
mpi_comm_rows
,
mpi_comm_cols
#if REALCASE == 1
#ifdef USE_ASSUMED_SIZE
real
(
kind
=
REAL_DATATYPE
)
::
q
(
ldq
,
*
)
real
(
kind
=
REAL_DATATYPE
)
::
q
(
ldq
,
*
)
#else
real
(
kind
=
REAL_DATATYPE
)
::
q
(
ldq
,
matrixCols
)
real
(
kind
=
REAL_DATATYPE
)
::
q
(
ldq
,
matrixCols
)
#endif
real
(
kind
=
REAL_DATATYPE
),
intent
(
in
)
::
hh_trans
(:,:)
real
(
kind
=
REAL_DATATYPE
),
intent
(
in
)
::
hh_trans
(:,:)
#endif
integer
(
kind
=
c_intptr_t
)
::
q_dev
integer
(
kind
=
c_intptr_t
)
::
q_dev
#if COMPLEXCASE == 1
#ifdef USE_ASSUMED_SIZE
complex
(
kind
=
COMPLEX_DATATYPE
)
::
q
(
ldq
,
*
)
complex
(
kind
=
COMPLEX_DATATYPE
)
::
q
(
ldq
,
*
)
#else
complex
(
kind
=
COMPLEX_DATATYPE
)
::
q
(
ldq
,
matrixCols
)
complex
(
kind
=
COMPLEX_DATATYPE
)
::
q
(
ldq
,
matrixCols
)
#endif
complex
(
kind
=
COMPLEX_DATATYPE
)
::
hh_trans
(:,:)
complex
(
kind
=
COMPLEX_DATATYPE
)
::
hh_trans
(:,:)
#endif
integer
(
kind
=
ik
)
::
np_rows
,
my_prow
,
np_cols
,
my_pcol
integer
(
kind
=
ik
)
::
tmp
integer
(
kind
=
ik
)
::
np_rows
,
my_prow
,
np_cols
,
my_pcol
integer
(
kind
=
ik
)
::
tmp
integer
(
kind
=
ik
)
::
i
,
j
,
ip
,
sweep
,
nbuf
,
l_nev
,
a_dim2
integer
(
kind
=
ik
)
::
current_n
,
current_local_n
,
current_n_start
,
current_n_end
integer
(
kind
=
ik
)
::
next_n
,
next_local_n
,
next_n_start
,
next_n_end
integer
(
kind
=
ik
)
::
bottom_msg_length
,
top_msg_length
,
next_top_msg_length
integer
(
kind
=
ik
)
::
stripe_width
,
last_stripe_width
,
stripe_count
integer
(
kind
=
ik
)
::
i
,
j
,
ip
,
sweep
,
nbuf
,
l_nev
,
a_dim2
integer
(
kind
=
ik
)
::
current_n
,
current_local_n
,
current_n_start
,
current_n_end
integer
(
kind
=
ik
)
::
next_n
,
next_local_n
,
next_n_start
,
next_n_end
integer
(
kind
=
ik
)
::
bottom_msg_length
,
top_msg_length
,
next_top_msg_length
integer
(
kind
=
ik
)
::
stripe_width
,
last_stripe_width
,
stripe_count
#ifdef WITH_OPENMP
integer
(
kind
=
ik
)
::
thread_width
,
csw
,
b_off
,
b_len
integer
(
kind
=
ik
)
::
thread_width
,
csw
,
b_off
,
b_len
#endif
integer
(
kind
=
ik
)
::
num_result_blocks
,
num_result_buffers
,
num_bufs_recvd
integer
(
kind
=
ik
)
::
a_off
,
current_tv_off
,
max_blk_size
integer
(
kind
=
ik
)
::
mpierr
,
src
,
src_offset
,
dst
,
offset
,
nfact
,
num_blk
integer
(
kind
=
ik
)
::
num_result_blocks
,
num_result_buffers
,
num_bufs_recvd
integer
(
kind
=
ik
)
::
a_off
,
current_tv_off
,
max_blk_size
integer
(
kind
=
ik
)
::
mpierr
,
src
,
src_offset
,
dst
,
offset
,
nfact
,
num_blk
logical
::
flag
logical
::
flag
#if REALCASE == 1
#ifdef WITH_OPENMP
real
(
kind
=
REAL_DATATYPE
),
pointer
::
aIntern
(:,:,:,:)
real
(
kind
=
REAL_DATATYPE
),
pointer
::
aIntern
(:,:,:,:)
#else
real
(
kind
=
REAL_DATATYPE
),
pointer
::
aIntern
(:,:,:)
real
(
kind
=
REAL_DATATYPE
),
pointer
::
aIntern
(:,:,:)
#endif
real
(
kind
=
REAL_DATATYPE
)
::
a_real
real
(
kind
=
REAL_DATATYPE
)
::
a_real
#endif
#if COMPLEXCASE == 1
#ifdef WITH_OPENMP
complex
(
kind
=
COMPLEX_DATATYPE
),
pointer
::
aIntern
(:,:,:,:)
complex
(
kind
=
COMPLEX_DATATYPE
),
pointer
::
aIntern
(:,:,:,:)
#else
complex
(
kind
=
COMPLEX_DATATYPE
),
pointer
::
aIntern
(:,:,:)
complex
(
kind
=
COMPLEX_DATATYPE
),
pointer
::
aIntern
(:,:,:)
#endif
complex
(
kind
=
COMPLEX_DATATYPE
)
::
a_complex
complex
(
kind
=
COMPLEX_DATATYPE
)
::
a_complex
#endif
type
(
c_ptr
)
::
aIntern_ptr
type
(
c_ptr
)
::
aIntern_ptr
#if REALCASE == 1
real
(
kind
=
REAL_DATATYPE
)
,
allocatable
::
row
(:)
real
(
kind
=
REAL_DATATYPE
)
,
allocatable
::
row_group
(:,:)
real
(
kind
=
REAL_DATATYPE
)
,
allocatable
::
row
(:)
real
(
kind
=
REAL_DATATYPE
)
,
allocatable
::
row_group
(:,:)
#endif
#if COMPLEXCASE == 1
complex
(
kind
=
COMPLEX_DATATYPE
),
allocatable
::
row
(:)
...
...
@@ -1706,7 +1706,7 @@
&
MATH_DATATYPE
&
&
_
openmp_
&
&
PRECISION
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
&
l_nev
,
a_off
,
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
@@ -1723,8 +1723,8 @@
&
MATH_DATATYPE
&
&
_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
a_off
,
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
a_off
,
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
#endif
...
...
@@ -1839,7 +1839,7 @@
&
MATH_DATATYPE
&
&
_
openmp_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
l_nev
,
a_off
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
l_nev
,
a_off
,
&
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
@@ -1888,7 +1888,7 @@
&
MATH_DATATYPE
&
&
_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
a_off
,
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
@@ -1984,7 +1984,7 @@
&
MATH_DATATYPE
&
&
_
openmp_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
l_nev
,
a_off
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
l_nev
,
a_off
,
&
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
@@ -2002,7 +2002,7 @@
&
MATH_DATATYPE
&
&
_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
a_off
,
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
@@ -2080,7 +2080,7 @@
&
MATH_DATATYPE
&
&
_
openmp_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
l_nev
,
a_off
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
max_threads
,
l_nev
,
a_off
,
&
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
@@ -2097,7 +2097,7 @@
&
MATH_DATATYPE
&
&
_
&
&
PRECISION
&
&
(
obj
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
&
(
obj
,
useGPU
,
wantDebug
,
aIntern
,
aIntern_dev
,
stripe_width
,
a_dim2
,
stripe_count
,
&
a_off
,
nbw
,
max_blk_size
,
bcast_buffer
,
bcast_buffer_dev
,
&
#if REALCASE == 1
hh_dot_dev
,
&
...
...
Write
Preview
Supports
Markdown
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