Merge lp:~asc/fluidity/solver_reordering_remove into lp:fluidity

Proposed by Adam Candy
Status: Merged
Merged at revision: 3900
Proposed branch: lp:~asc/fluidity/solver_reordering_remove
Merge into: lp:fluidity
Diff against target: 109 lines (+28/-49)
3 files modified
femtools/Solvers.F90 (+4/-1)
schemas/solvers.rnc (+11/-20)
schemas/solvers.rng (+13/-28)
To merge this branch: bzr merge lp:~asc/fluidity/solver_reordering_remove
Reviewer Review Type Date Requested Status
Stephan Kramer Approve
Review via email: mp+89023@code.launchpad.net

Description of the change

Removal of the named solver reordering options.
Notes have been added to both the schema and Solvers.F90 stating the reordering mechanisms have not been tested, and how to use them if you want to try them out.

To post a comment you must log in.
Revision history for this message
Stephan Kramer (s-kramer) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'femtools/Solvers.F90'
2--- femtools/Solvers.F90 2011-10-26 14:37:06 +0000
3+++ femtools/Solvers.F90 2012-01-18 12:53:28 +0000
4@@ -774,7 +774,10 @@
5 end if
6
7 ewrite(1, *) 'Assembling matrix.'
8-
9+
10+ ! Note the explicitly-described options rcm, 1wd and natural are now not
11+ ! listed explicitly in the schema (but can still be used by adding the
12+ ! appropriate string in the solver reordering node).
13 call PetscOptionsGetString("", "-ordering_type", ordering_type, &
14 use_reordering, ierr)
15 if (.not. use_reordering) then
16
17=== modified file 'schemas/solvers.rnc'
18--- schemas/solvers.rnc 2010-10-27 12:18:35 +0000
19+++ schemas/solvers.rnc 2012-01-18 12:53:28 +0000
20@@ -427,26 +427,17 @@
21 element cache_solver_context {
22 empty
23 }?,
24- (
25- ## Use Reverse Cuthill-McKee reordering to improve cache performance
26- element reordering {
27- attribute name { "rcm" }
28- }|
29- ## Use one way dissecting reordering to improve cache performance
30- element reordering {
31- attribute name { "1wd" }
32- }|
33- ## Use natural ordering as reordering, i.e. change nothing.
34- ## Only useful for debugging purposes.
35- element reordering {
36- attribute name { "natural" }
37- }|
38- ## Specify any other reordering mechanism supported by PETSc
39- ## see http://www-unix.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpages/MatOrderings/MatGetOrdering.html
40- element reordering {
41- attribute name { xsd:string }
42- }
43- )?,
44+ ## Specify a reordering mechanism supported by PETSc
45+ ## to improve cache performance, see
46+ ## http://www-unix.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpages/MatOrderings/MatGetOrdering.html
47+ ##
48+ ## Note that the use of reordering mechanisms for solves is
49+ ## currently untested. Possible schemes include:
50+ ## Reverse Cuthill-McKee reordering (rcm), a one way dissecting (1wd)
51+ ## algorithm, and also a natural ordering (natural) for debugging.
52+ element reordering {
53+ attribute name { xsd:string }
54+ }?,
55 ## Extra diagnostics to help debug solver problems
56 element diagnostics {
57 ## Print out the norm of vectors and matrices before the
58
59=== modified file 'schemas/solvers.rng'
60--- schemas/solvers.rng 2010-10-27 12:18:35 +0000
61+++ schemas/solvers.rng 2012-01-18 12:53:28 +0000
62@@ -448,34 +448,19 @@
63 </element>
64 </optional>
65 <optional>
66- <choice>
67- <element name="reordering">
68- <a:documentation>Use Reverse Cuthill-McKee reordering to improve cache performance</a:documentation>
69- <attribute name="name">
70- <value>rcm</value>
71- </attribute>
72- </element>
73- <element name="reordering">
74- <a:documentation>Use one way dissecting reordering to improve cache performance</a:documentation>
75- <attribute name="name">
76- <value>1wd</value>
77- </attribute>
78- </element>
79- <element name="reordering">
80- <a:documentation>Use natural ordering as reordering, i.e. change nothing.
81-Only useful for debugging purposes.</a:documentation>
82- <attribute name="name">
83- <value>natural</value>
84- </attribute>
85- </element>
86- <element name="reordering">
87- <a:documentation>Specify any other reordering mechanism supported by PETSc
88-see http://www-unix.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpages/MatOrderings/MatGetOrdering.html</a:documentation>
89- <attribute name="name">
90- <data type="string"/>
91- </attribute>
92- </element>
93- </choice>
94+ <element name="reordering">
95+ <a:documentation>Specify a reordering mechanism supported by PETSc
96+to improve cache performance, see
97+http://www-unix.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpages/MatOrderings/MatGetOrdering.html
98+
99+Note that the use of reordering mechanisms for solves is
100+currently untested. Possible schemes include:
101+Reverse Cuthill-McKee reordering (rcm), a one way dissecting (1wd)
102+algorithm, and also a natural ordering (natural) for debugging.</a:documentation>
103+ <attribute name="name">
104+ <data type="string"/>
105+ </attribute>
106+ </element>
107 </optional>
108 <element name="diagnostics">
109 <a:documentation>Extra diagnostics to help debug solver problems</a:documentation>