Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
maphys
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
3
Issues
3
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Packages
Packages
Container Registry
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
solverstack
maphys
maphys
Commits
cbd0063f
Commit
cbd0063f
authored
Jul 23, 2019
by
MARAIT Gilles
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Hotfix for maphys~pastix
parent
11d74ed8
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
14 additions
and
16 deletions
+14
-16
sds/xmph_sds_mod.F90
sds/xmph_sds_mod.F90
+3
-5
sds/xmph_sds_pastix6_mod.F90
sds/xmph_sds_pastix6_mod.F90
+11
-11
No files found.
sds/xmph_sds_mod.F90
View file @
cbd0063f
...
...
@@ -432,7 +432,7 @@ Contains
Case
(
SDS_Ismumps
)
;
call
XMPH_mumps_solve_RHS
&
(
sds
%
mumps
,
rhs
,
nrhs
,
ldrhs
,
info
)
Case
(
SDS_IsPASTIX
);
call
XMPH_pastix_solve_RHS
(
sds
%
pastix
,
rhs
,
&
Int
(
nrhs
,
kind
=
pastix_int_t
),
Int
(
ldrhs
,
kind
=
pastix_int_t
)
,
info
)
nrhs
,
ldrhs
,
info
)
Case
default
info
=
SDS_IsUnavailable
write
(
6
,
*
)
"Error : in sparse_direct_solver_solve_RHS,"
,
&
...
...
@@ -696,10 +696,8 @@ Contains
Case
(
SDS_IsPASTIX
);
Call
XMPH_pastix_set_denseschur
&
(
sds
%
pastix
,
schurlist
,
Int
(
nschurlist
,
kind
=
pastix_int_t
),
&
schur
,
Int
(
nschur
,
kind
=
pastix_int_t
),
&
Int
(
ldschur
,
kind
=
pastix_int_t
),
info
)
(
sds
%
pastix
,
schurlist
,
nschurlist
,
&
schur
,
nschur
,
ldschur
,
info
)
! none available
Case
Default
...
...
sds/xmph_sds_pastix6_mod.F90
View file @
cbd0063f
...
...
@@ -24,7 +24,6 @@ Module XMPH_sds_pastix_mod
#if HAVE_LIBPASTIX_6
use
pastix_enums
use
spmf
use
pastixf
...
...
@@ -432,11 +431,12 @@ Contains
!* Argument(s) *!
Type
(
XMPH_pastix_t
),
intent
(
inout
)
::
id_pastix
integer
(
kind
=
pastix_int_t
)
,
intent
(
in
)
::
nrhs
,
ldrhs
integer
,
intent
(
in
)
::
nrhs
,
ldrhs
XMPH_FLOAT
,
target
,
intent
(
inout
)
::
rhs
(
ldrhs
*
nrhs
)
Integer
,
intent
(
out
)
::
info
#if HAVE_LIBPASTIX_6
integer
(
kind
=
pastix_int_t
)
::
p_nrhs
XMPH_FLOAT
,
allocatable
,
target
,
dimension
(:)
::
rhs_copy
Type
(
c_ptr
)
::
rhs_copy_ptr
Type
(
c_ptr
)
::
rhs_ptr
...
...
@@ -460,14 +460,15 @@ Contains
info
=
0
BLAS_SET_NUM_THREADS
(
1
)
call
pastix_task_solve
(
id_pastix
%
pastix_data
,
nrhs
,
rhs_ptr
,
id_pastix
%
spm
%
n
,
pinfo
)
p_nrhs
=
Int
(
nrhs
,
kind
=
pastix_int_t
)
call
pastix_task_solve
(
id_pastix
%
pastix_data
,
p_nrhs
,
rhs_ptr
,
id_pastix
%
spm
%
n
,
pinfo
)
Call
mph_pastix_check_status
(
pinfo
,
__
LINE__
,
info
)
If
(
id_pastix
%
useschur
.eqv.
.false.
)
Then
n
=
id_pastix
%
spm
%
n
ldb
=
n
ldx
=
n
call
pastix_task_refine
(
id_pastix
%
pastix_data
,
n
,
nrhs
,
rhs_ptr
,
ldb
,
rhs_copy_ptr
,
ldx
,
pinfo
)
call
pastix_task_refine
(
id_pastix
%
pastix_data
,
n
,
p_
nrhs
,
rhs_ptr
,
ldb
,
rhs_copy_ptr
,
ldx
,
pinfo
)
Call
mph_pastix_check_status
(
pinfo
,
__
LINE__
,
info
)
End
If
BLAS_SET_NUM_THREADS
(
id_pastix
%
iparm
(
IPARM_THREAD_NBR
))
...
...
@@ -539,12 +540,11 @@ Contains
!* Arguments *!
Type
(
XMPH_pastix_t
),
intent
(
inout
)
::
id_pastix
integer
(
kind
=
pastix_int_t
),
intent
(
in
)
::
nschurlist
!integer(kind=pastix_int_t), intent(in ) :: schurlist(nschurlist)
Integer
,
intent
(
in
)
::
schurlist
(
nschurlist
)
integer
(
kind
=
pastix_int_t
),
intent
(
in
)
::
nschur
,
ldschur
integer
,
intent
(
in
)
::
nschurlist
integer
,
intent
(
in
)
::
schurlist
(
nschurlist
)
integer
,
intent
(
in
)
::
nschur
,
ldschur
XMPH_FLOAT
,
pointer
,
intent
(
inout
)
::
schur
(:)
integer
,
intent
(
out
)
::
info
integer
,
intent
(
out
)
::
info
#if MAPHYS_DEBUG
integer
::
i
#endif
...
...
@@ -577,7 +577,7 @@ Contains
Call
MPH_dbg_set_file
(
"schurlist.mtx"
)
Write
(
dbg_unit
,
*
)
nschurlist
Do
i
=
1
,
Int
(
nschurlist
)
Do
i
=
1
,
nschurlist
Write
(
dbg_unit
,
*
)
schurlist
(
i
)
End
Do
...
...
@@ -599,7 +599,7 @@ Contains
schurlist_ptr
=>
null
()
if
(
nschurlist
>
0
)
schurlist_ptr
=>
schurlist_copy
(
1
)
call
pastixSetSchurUnknownList
(
id_pastix
%
pastix_data
,
nschur
,
schurlist_ptr
)
call
pastixSetSchurUnknownList
(
id_pastix
%
pastix_data
,
Int
(
nschur
,
kind
=
pastix_int_t
)
,
schurlist_ptr
)
id_pastix
%
nschur
=
nschur
id_pastix
%
ldschur
=
ldschur
...
...
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