dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #17536
[noreply@xxxxxxxxxxxxx: [Branch ~dolfin-core/dolfin/main] Rev 4496: Add strategy string for SCOTCH. Impossible to understand.]
// Set strategy (SCOTCH uses very crytic strings for this) +
std::string strategy =
"b{sep=m{asc=b{bnd=q{strat=f},org=q{strat=f}},low=q{strat=m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}|m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}},seq=q{strat=m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}|m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}}},seq=b{job=t,map=t,poli=S,sep=m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}|m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}}}";
That's even worse than the options for ParMETIS.
--
Anders
--- Begin Message ---
------------------------------------------------------------
revno: 4496
committer: Garth N. Wells <gnw20@xxxxxxxxx>
branch nick: dolfin-all
timestamp: Fri 2010-02-12 16:53:06 +0000
message:
Add strategy string for SCOTCH. Impossible to understand.
modified:
demo/pde/poisson/cpp/main.cpp
dolfin/graph/SCOTCH.cpp
--
lp:dolfin
https://code.launchpad.net/~dolfin-core/dolfin/main
Your team DOLFIN Core Team is subscribed to branch lp:dolfin.
To unsubscribe from this branch go to https://code.launchpad.net/~dolfin-core/dolfin/main/+edit-subscription.
=== modified file 'demo/pde/poisson/cpp/main.cpp'
--- demo/pde/poisson/cpp/main.cpp 2010-02-12 13:32:09 +0000
+++ demo/pde/poisson/cpp/main.cpp 2010-02-12 16:53:06 +0000
@@ -57,8 +57,8 @@
parameters["mesh_partitioner"] = "SCOTCH";
// Create mesh and function space
- //UnitSquare mesh(32, 32);
- Mesh mesh("../../../../data/meshes/unstruct-trimesh-2.xml.gz");
+ UnitSquare mesh(64, 64);
+ //Mesh mesh("../../../../data/meshes/unstruct-trimesh-2.xml.gz");
Poisson::FunctionSpace V(mesh);
// Define boundary condition
=== modified file 'dolfin/graph/SCOTCH.cpp'
--- dolfin/graph/SCOTCH.cpp 2010-02-12 13:32:09 +0000
+++ dolfin/graph/SCOTCH.cpp 2010-02-12 16:53:06 +0000
@@ -452,6 +452,10 @@
// Check graph
if (SCOTCH_dgraphCheck(&dgrafdat))
error("Consistency error in SCOTCH graph.");
+
+
+ SCOTCH_dgraphGhst(&dgrafdat);
+
// Number of partitions (set equal to number of processes)
SCOTCH_Num npart = MPI::num_processes();
@@ -460,6 +464,10 @@
SCOTCH_Strat strat;
SCOTCH_stratInit(&strat);
+ // Set strategy (SCOTCH uses very crytic strings for this)
+ std::string strategy = "b{sep=m{asc=b{bnd=q{strat=f},org=q{strat=f}},low=q{strat=m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}|m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}},seq=q{strat=m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}|m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}}},seq=b{job=t,map=t,poli=S,sep=m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}|m{type=h,vert=80,low=h{pass=10}f{bal=0.0005,move=80},asc=b{bnd=d{dif=1,rem=1,pass=40}f{bal=0.005,move=80},org=f{bal=0.005,move=80}}}}}";
+ SCOTCH_stratDgraphMap (&strat, strategy.c_str());
+
// Hold partition data
std::vector<SCOTCH_Num> partloctab(vertlocnbr);
--- End Message ---
Attachment:
signature.asc
Description: Digital signature
Follow ups