Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
elpa
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
15
Issues
15
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Environments
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
elpa
elpa
Commits
2e26c767
Commit
2e26c767
authored
Jul 17, 2018
by
Pavel Kus
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
avoiding linking problem for non-MPI version without dummy functions
parent
844a4c7c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
4 additions
and
44 deletions
+4
-44
src/elpa_generalized/cannon.c
src/elpa_generalized/cannon.c
+0
-44
src/elpa_impl_generalized_transform_template.F90
src/elpa_impl_generalized_transform_template.F90
+4
-0
No files found.
src/elpa_generalized/cannon.c
View file @
2e26c767
...
...
@@ -172,48 +172,4 @@ void cannons_reduction_c_fc(float complex* A, float complex* U, int local_rows,
*/
void
cannons_triang_rectangular_c_fc
(
float
complex
*
U
,
float
complex
*
B
,
int
local_rows
,
int
local_cols
,
int
*
u_desc
,
int
*
b_desc
,
float
complex
*
Res
,
int
row_comm
,
int
col_comm
);
#else
// Just because of the Intel preprocessor
// TODO do something with it
// ideally the build system, which is generating fortran interfaces, should respect ifdefs and not
// generate interface for non-MPI case
void
cannons_reduction_c_d
(
double
*
A
,
double
*
U
,
int
local_rows
,
int
local_cols
,
int
*
a_desc
,
double
*
Res
,
int
ToStore
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_triang_rectangular_c_d
(
double
*
U
,
double
*
B
,
int
local_rows
,
int
local_cols
,
int
*
u_desc
,
int
*
b_desc
,
double
*
Res
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_reduction_c_f
(
float
*
A
,
float
*
U
,
int
local_rows
,
int
local_cols
,
int
*
a_desc
,
float
*
Res
,
int
ToStore
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_triang_rectangular_c_f
(
float
*
U
,
float
*
B
,
int
local_rows
,
int
local_cols
,
int
*
u_desc
,
int
*
b_desc
,
float
*
Res
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_reduction_c_dc
(
double
complex
*
A
,
double
complex
*
U
,
int
local_rows
,
int
local_cols
,
int
*
a_desc
,
double
complex
*
Res
,
int
ToStore
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_triang_rectangular_c_dc
(
double
complex
*
U
,
double
complex
*
B
,
int
local_rows
,
int
local_cols
,
int
*
u_desc
,
int
*
b_desc
,
double
complex
*
Res
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_reduction_c_fc
(
float
complex
*
A
,
float
complex
*
U
,
int
local_rows
,
int
local_cols
,
int
*
a_desc
,
float
complex
*
Res
,
int
ToStore
,
int
row_comm
,
int
col_comm
)
{
}
void
cannons_triang_rectangular_c_fc
(
float
complex
*
U
,
float
complex
*
B
,
int
local_rows
,
int
local_cols
,
int
*
u_desc
,
int
*
b_desc
,
float
complex
*
Res
,
int
row_comm
,
int
col_comm
)
{
}
#endif
src/elpa_impl_generalized_transform_template.F90
View file @
2e26c767
...
...
@@ -75,9 +75,11 @@
call
self
%
timer_start
(
"cannons_reduction"
)
! BEWARE! even though tmp is output from the routine, it has to be zero on input!
tmp
=
0.0_rck
#ifdef WITH_MPI
call
cannons_reduction_
&
&
ELPA_IMPL_SUFFIX
&
&(
a
,
b
,
self
%
local_nrows
,
self
%
local_ncols
,
sc_desc
,
tmp
,
BuffLevelInt
,
mpi_comm_rows
,
mpi_comm_cols
)
#endif
call
self
%
timer_stop
(
"cannons_reduction"
)
a
(
1
:
self
%
local_nrows
,
1
:
self
%
local_ncols
)
=
tmp
(
1
:
self
%
local_nrows
,
1
:
self
%
local_ncols
)
...
...
@@ -162,9 +164,11 @@
if
(
use_cannon
==
1
)
then
call
self
%
timer_start
(
"cannons_triang_rectangular"
)
#ifdef WITH_MPI
call
cannons_triang_rectangular_
&
&
ELPA_IMPL_SUFFIX
&
&(
b
,
q
,
self
%
local_nrows
,
self
%
local_ncols
,
sc_desc
,
sc_desc_ev
,
tmp
,
mpi_comm_rows
,
mpi_comm_cols
);
#endif
call
self
%
timer_stop
(
"cannons_triang_rectangular"
)
q
(
1
:
self
%
local_nrows
,
1
:
self
%
local_ncols
)
=
tmp
(
1
:
self
%
local_nrows
,
1
:
self
%
local_ncols
)
...
...
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