[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Getfem-commits] r4951 - /trunk/getfem/src/getfem_generic_assembly.cc
From: |
logari81 |
Subject: |
[Getfem-commits] r4951 - /trunk/getfem/src/getfem_generic_assembly.cc |
Date: |
Tue, 14 Apr 2015 06:43:55 -0000 |
Author: logari81
Date: Tue Apr 14 08:43:54 2015
New Revision: 4951
URL: http://svn.gna.org/viewcvs/getfem?rev=4951&view=rev
Log:
add basic support for MPI in the high level generic assembly
Modified:
trunk/getfem/src/getfem_generic_assembly.cc
Modified: trunk/getfem/src/getfem_generic_assembly.cc
URL:
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_generic_assembly.cc?rev=4951&r1=4950&r2=4951&view=diff
==============================================================================
--- trunk/getfem/src/getfem_generic_assembly.cc (original)
+++ trunk/getfem/src/getfem_generic_assembly.cc Tue Apr 14 08:43:54 2015
@@ -4846,6 +4846,11 @@
ga_exec(gis, *this);
// cout << "Exec time " << gmm::uclock_sec()-time << endl;
+ if (order == 1) {
+ MPI_SUM_VECTOR(assembled_vector());
+ MPI_SUM_VECTOR(unreduced_V);
+ }
+
// Deal with reduced fems.
if (order) {
std::list<ga_tree>::iterator it = gis.trees.begin();
@@ -8870,7 +8875,9 @@
// iteration on elements (or faces of elements)
std::vector<size_type> ind;
- for (getfem::mr_visitor v(region, m); !v.finished(); ++v) {
+ mesh_region rg(region);
+ m.intersect_with_mpi_region(rg);
+ for (getfem::mr_visitor v(rg, m); !v.finished(); ++v) {
if (gic.use_mim()) {
if (!mim.convex_index().is_in(v.cv())) continue;
gis.pai = mim.int_method_of_element(v.cv())->approx_method();
@@ -8978,7 +8985,9 @@
const mesh_region ®ion = *(it->first.region());
// iteration on elements (or faces of elements)
- for (getfem::mr_visitor v(region, m); !v.finished(); ++v) {
+ mesh_region rg(region);
+ m.intersect_with_mpi_region(rg);
+ for (getfem::mr_visitor v(rg, m); !v.finished(); ++v) {
if (mim.convex_index().is_in(v.cv())) {
// cout << "proceed with element " << v.cv() << endl;
bgeot::vectors_to_base_matrix(G, m.points_of_convex(v.cv()));
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Getfem-commits] r4951 - /trunk/getfem/src/getfem_generic_assembly.cc,
logari81 <=