Commit a17d925c authored by incardon's avatar incardon

Map working for grid_dist_id

parent 52bf0490
...@@ -665,6 +665,94 @@ void Test3D_amr_domain_ghost_it(grid & amr_g, Box<3,float> & domain, size_t coar ...@@ -665,6 +665,94 @@ void Test3D_amr_domain_ghost_it(grid & amr_g, Box<3,float> & domain, size_t coar
BOOST_REQUIRE_EQUAL(gtot_count,total_all_level); BOOST_REQUIRE_EQUAL(gtot_count,total_all_level);
} }
template<typename grid_amr>
void Test3D_ghost_put(grid_amr & g_dist_amr, long int k)
{
size_t sz[3] = {k,k,k};
g_dist_amr.initLevels(4,sz);
// Grid sm
grid_sm<3,void> info(sz);
size_t count = 0;
for (size_t i = 0 ; i < g_dist_amr.getNLvl() ; i++)
{
auto dom = g_dist_amr.getGridIterator(i);
while (dom.isNext())
{
auto key = dom.get_dist();
g_dist_amr.template insert<0>(i,key) = -6.0;
// Count the points
count++;
++dom;
}
}
// Set to zero the full grid
{
auto dom = g_dist_amr.getDomainIterator();
while (dom.isNext())
{
auto key = dom.get();
g_dist_amr.template insert<0>(key.moveSpace(0,1)) += 1.0;
g_dist_amr.template insert<0>(key.moveSpace(0,-1)) += 1.0;
g_dist_amr.template insert<0>(key.moveSpace(1,1)) += 1.0;
g_dist_amr.template insert<0>(key.moveSpace(1,-1)) += 1.0;
g_dist_amr.template insert<0>(key.moveSpace(2,1)) += 1.0;
g_dist_amr.template insert<0>(key.moveSpace(2,-1)) += 1.0;
++dom;
}
}
bool correct = true;
// Domain + Ghost iterator
auto dom_gi = g_dist_amr.getDomainIterator();
while (dom_gi.isNext())
{
auto key = dom_gi.get();
correct &= (g_dist_amr.template get<0>(key) == 0);
++dom_gi;
}
g_dist_amr.template ghost_put<add_,0>();
if (count != 0)
{BOOST_REQUIRE_EQUAL(correct, false);}
// sync the ghosts
g_dist_amr.template ghost_get<0>();
correct = true;
// Domain + Ghost iterator
auto dom_gi2 = g_dist_amr.getDomainIterator();
while (dom_gi2.isNext())
{
auto key = dom_gi2.get();
correct &= (g_dist_amr.template get<0>(key) == 0);
++dom_gi2;
}
BOOST_REQUIRE_EQUAL(correct, true);
}
template <typename> struct Debug; template <typename> struct Debug;
BOOST_AUTO_TEST_CASE( grid_dist_amr_get_child_test_nop ) BOOST_AUTO_TEST_CASE( grid_dist_amr_get_child_test_nop )
...@@ -838,127 +926,7 @@ BOOST_AUTO_TEST_CASE( grid_dist_amr_test_background_value ) ...@@ -838,127 +926,7 @@ BOOST_AUTO_TEST_CASE( grid_dist_amr_test_background_value )
} }
BOOST_AUTO_TEST_CASE( grid_dist_amr_get_domain_ghost_check ) BOOST_AUTO_TEST_CASE( grid_dist_amr_get_domain_ghost_check )
{
// Domain
Box<3,float> domain3({0.0,0.0,0.0},{1.0,1.0,1.0});
Ghost<3,long int> g(1);
sgrid_dist_amr<3,float,aggregate<long int,long int,long int>> amr_g2(domain3,g);
size_t g_sz[3] = {4,4,4};
amr_g2.initLevels(4,g_sz);
// This point is on a ghost
grid_dist_key_dx<3> key(0,grid_key_dx<3>({0,0,0}));
amr_g2.template insert<0>(1,key) = 555;
auto dgit = amr_g2.getDomainGhostIterator();
int cnt = 0;
while (dgit.isNext())
{
cnt++;
++dgit;
}
BOOST_REQUIRE_EQUAL(cnt,1);
}
template<typename grid_amr>
void Test3D_ghost_put(grid_amr & g_dist_amr, long int k)
{
// check the consistency of the decomposition
bool val = g_dist_amr.getDecomposition().check_consistency();
BOOST_REQUIRE_EQUAL(val,true);
size_t sz[3] = {k,k,k};
// Grid sm
grid_sm<3,void> info(sz);
size_t count = 0;
auto dom = g_dist_amr.getGridIterator();
while (dom.isNext())
{
auto key = dom.get_dist();
g_dist_amr.template insert<0>(key) = -6.0;
// Count the points
count++;
++dom;
}
// Set to zero the full grid
{
auto dom = g_dist_amr.getDomainIterator();
while (dom.isNext())
{
auto key = dom.get();
g_dist_amr.template insert<0>(key.move(0,1)) += 1.0;
g_dist_amr.template insert<0>(key.move(0,-1)) += 1.0;
g_dist_amr.template insert<0>(key.move(1,1)) += 1.0;
g_dist_amr.template insert<0>(key.move(1,-1)) += 1.0;
g_dist_amr.template insert<0>(key.move(2,1)) += 1.0;
g_dist_amr.template insert<0>(key.move(2,-1)) += 1.0;
++dom;
}
}
bool correct = true;
// Domain + Ghost iterator
auto dom_gi = g_dist_amr.getDomainIterator();
while (dom_gi.isNext())
{
auto key = dom_gi.get();
correct &= (g_dist_amr.template get<0>(key) == 0);
++dom_gi;
}
g_dist_amr.template ghost_put<add_,0>();
if (count != 0)
{BOOST_REQUIRE_EQUAL(correct, false);}
// sync the ghosts
g_dist_amr.template ghost_get<0>();
correct = true;
// Domain + Ghost iterator
auto dom_gi2 = g_dist_amr.getDomainIterator();
while (dom_gi2.isNext())
{
auto key = dom_gi2.get();
correct &= (g_dist_amr.template get<0>(key) == 0);
++dom_gi2;
}
BOOST_REQUIRE_EQUAL(correct, true);
}
BOOST_AUTO_TEST_CASE( grid_dist_amr_get_domain_ghost_put_check )
{ {
// Test grid periodic // Test grid periodic
...@@ -986,14 +954,16 @@ BOOST_AUTO_TEST_CASE( grid_dist_amr_get_domain_ghost_put_check ) ...@@ -986,14 +954,16 @@ BOOST_AUTO_TEST_CASE( grid_dist_amr_get_domain_ghost_put_check )
periodicity<3> pr = {{PERIODIC,PERIODIC,PERIODIC}}; periodicity<3> pr = {{PERIODIC,PERIODIC,PERIODIC}};
// Distributed grid with id decomposition // Distributed grid with id decomposition
grid_dist_id<3, float, aggregate<long int>> g_dist(sz,domain,g,pr); grid_dist_amr<3, float, aggregate<long int>> g_dist(domain,g,pr);
Test3D_ghost_put(g_dist,k); Test3D_ghost_put(g_dist,k);
// Distributed grid with id decomposition // Distributed grid with id decomposition
sgrid_dist_id<3, float, aggregate<long int>> sg_dist(sz,domain,g,pr); sgrid_dist_amr<3, float, aggregate<long int>> sg_dist(domain,g,pr);
Test3D_ghost_put(sg_dist,k); Test3D_ghost_put(sg_dist,k);
} }
BOOST_AUTO_TEST_SUITE_END() BOOST_AUTO_TEST_SUITE_END()
...@@ -762,7 +762,10 @@ public: ...@@ -762,7 +762,10 @@ public:
cart.cd = cd; cart.cd = cd;
cart.domain = domain; cart.domain = domain;
for (size_t i = 0 ; i < dim ; i++) for (size_t i = 0 ; i < dim ; i++)
{cart.spacing[i] = spacing[i];}; {
cart.spacing[i] = spacing[i];
cart.magn[i] = magn[i];
};
cart.bbox = bbox; cart.bbox = bbox;
cart.ghost = g; cart.ghost = g;
...@@ -800,8 +803,13 @@ public: ...@@ -800,8 +803,13 @@ public:
cart.gr = gr; cart.gr = gr;
cart.cd = cd; cart.cd = cd;
cart.domain = domain; cart.domain = domain;
cart.gr_dist = gr_dist;
cart.dist = dist;
for (size_t i = 0 ; i < dim ; i++) for (size_t i = 0 ; i < dim ; i++)
{cart.spacing[i] = spacing[i];}; {
cart.spacing[i] = spacing[i];
cart.magn[i] = magn[i];
};
cart.ghost = ghost; cart.ghost = ghost;
...@@ -832,9 +840,14 @@ public: ...@@ -832,9 +840,14 @@ public:
gr = cart.gr; gr = cart.gr;
cd = cart.cd; cd = cart.cd;
domain = cart.domain; domain = cart.domain;
gr_dist = cart.gr_dist;
dist = cart.dist;
for (size_t i = 0 ; i < dim ; i++) for (size_t i = 0 ; i < dim ; i++)
{spacing[i] = cart.spacing[i];}; {
spacing[i] = cart.spacing[i];
magn[i] = cart.magn[i];
};
ghost = cart.ghost; ghost = cart.ghost;
...@@ -864,9 +877,15 @@ public: ...@@ -864,9 +877,15 @@ public:
fine_s.swap(cart.fine_s); fine_s.swap(cart.fine_s);
gr = cart.gr; gr = cart.gr;
cd = cart.cd; cd = cart.cd;
gr_dist = cart.gr_dist;
dist = cart.dist;
domain = cart.domain; domain = cart.domain;
for (size_t i = 0 ; i < dim ; i++) for (size_t i = 0 ; i < dim ; i++)
{spacing[i] = cart.spacing[i];}; {
spacing[i] = cart.spacing[i];
magn[i] = cart.magn[i];
};
ghost = cart.ghost; ghost = cart.ghost;
......
...@@ -638,6 +638,7 @@ public: ...@@ -638,6 +638,7 @@ public:
verticesGotWeights = dist.verticesGotWeights; verticesGotWeights = dist.verticesGotWeights;
sub_sub_owner = dist.sub_sub_owner; sub_sub_owner = dist.sub_sub_owner;
m2g = dist.m2g; m2g = dist.m2g;
parmetis_graph = dist.parmetis_graph;
return *this; return *this;
} }
...@@ -655,6 +656,7 @@ public: ...@@ -655,6 +656,7 @@ public:
verticesGotWeights = dist.verticesGotWeights; verticesGotWeights = dist.verticesGotWeights;
sub_sub_owner.swap(dist.sub_sub_owner); sub_sub_owner.swap(dist.sub_sub_owner);
m2g.swap(dist.m2g); m2g.swap(dist.m2g);
parmetis_graph = dist.parmetis_graph;
return *this; return *this;
} }
......
...@@ -328,7 +328,7 @@ public: ...@@ -328,7 +328,7 @@ public:
} }
if (is_openfpm_init() == true) if (is_openfpm_init() == true)
MPI_Comm_free(&comm); {MPI_Comm_free(&comm);}
} }
/*! \brief Set the Sub-graph /*! \brief Set the Sub-graph
...@@ -526,8 +526,7 @@ public: ...@@ -526,8 +526,7 @@ public:
*/ */
const Parmetis<Graph> & operator=(const Parmetis<Graph> & pm) const Parmetis<Graph> & operator=(const Parmetis<Graph> & pm)
{ {
comm = pm.comm; MPI_Comm_dup(pm.comm, &comm);
v_cl = pm.v_cl;
p_id = pm.p_id; p_id = pm.p_id;
nc = pm.nc; nc = pm.nc;
...@@ -545,8 +544,7 @@ public: ...@@ -545,8 +544,7 @@ public:
*/ */
const Parmetis<Graph> & operator=(Parmetis<Graph> && pm) const Parmetis<Graph> & operator=(Parmetis<Graph> && pm)
{ {
comm = pm.comm; MPI_Comm_dup(pm.comm, &comm);
v_cl = pm.v_cl;
p_id = pm.p_id; p_id = pm.p_id;
nc = pm.nc; nc = pm.nc;
......
...@@ -40,7 +40,7 @@ struct Box_fix ...@@ -40,7 +40,7 @@ struct Box_fix
size_t r_sub; size_t r_sub;
}; };
#define GRID_SUB_UNIT_FACTOR 64 #define NO_GDB_EXT_SWITCH 0x1000
/*! \brief This is a distributed grid /*! \brief This is a distributed grid
* *
...@@ -241,6 +241,9 @@ class grid_dist_id : public grid_dist_id_comm<dim,St,T,Decomposition,Memory,devi ...@@ -241,6 +241,9 @@ class grid_dist_id : public grid_dist_id_comm<dim,St,T,Decomposition,Memory,devi
//! Local external ghost boxes in grid units //! Local external ghost boxes in grid units
openfpm::vector<e_lbox_grid<dim>> loc_eg_box; openfpm::vector<e_lbox_grid<dim>> loc_eg_box;
//! Number of sub-sub-domain for each processor
size_t v_sub_unit_factor = 64;
/*! \brief Call-back to allocate buffer to receive incoming objects (external ghost boxes) /*! \brief Call-back to allocate buffer to receive incoming objects (external ghost boxes)
* *
* \param msg_i message size required to receive from i * \param msg_i message size required to receive from i
...@@ -920,7 +923,7 @@ class grid_dist_id : public grid_dist_id_comm<dim,St,T,Decomposition,Memory,devi ...@@ -920,7 +923,7 @@ class grid_dist_id : public grid_dist_id_comm<dim,St,T,Decomposition,Memory,devi
// Get the number of processor and calculate the number of sub-domain // Get the number of processor and calculate the number of sub-domain
// for decomposition // for decomposition
size_t n_proc = v_cl.getProcessingUnits(); size_t n_proc = v_cl.getProcessingUnits();
size_t n_sub = n_proc * GRID_SUB_UNIT_FACTOR; size_t n_sub = n_proc * v_sub_unit_factor;
// Calculate the maximum number (before merging) of sub-domain on // Calculate the maximum number (before merging) of sub-domain on
// each dimension // each dimension
...@@ -968,6 +971,9 @@ class grid_dist_id : public grid_dist_id_comm<dim,St,T,Decomposition,Memory,devi ...@@ -968,6 +971,9 @@ class grid_dist_id : public grid_dist_id_comm<dim,St,T,Decomposition,Memory,devi
Create(bx,g,use_bx_def); Create(bx,g,use_bx_def);
} }
// Ghost as integer
Ghost<dim,long int> gint = Ghost<dim,long int>(0);
protected: protected:
/*! \brief Get the point where it start the origin of the grid of the sub-domain i /*! \brief Get the point where it start the origin of the grid of the sub-domain i
...@@ -1022,6 +1028,16 @@ protected: ...@@ -1022,6 +1028,16 @@ protected:
return gc; return gc;
} }
/*! \brief Set the minimum number of sub-domain per processor
*
* \param n_sub
*
*/
void setDecompositionGranularity(size_t n_sub)
{
this->v_sub_unit_factor = n_sub;
}
public: public:
//! Which kind of grid the structure store //! Which kind of grid the structure store
...@@ -1203,7 +1219,10 @@ public: ...@@ -1203,7 +1219,10 @@ public:
dec.setParameters(g.getDecomposition(),ghost,this->domain); dec.setParameters(g.getDecomposition(),ghost,this->domain);
InitializeStructures(g.getGridInfoVoid().getSize()); // an empty
openfpm::vector<Box<dim,long int>> empty;
InitializeStructures(g.getGridInfoVoid().getSize(),empty,gh,false);
} }
/*! It constructs a grid of a specified size, defined on a specified Box space, forcing to follow a specified decomposition and with a specified ghost size /*! It constructs a grid of a specified size, defined on a specified Box space, forcing to follow a specified decomposition and with a specified ghost size
...@@ -1269,8 +1288,11 @@ public: ...@@ -1269,8 +1288,11 @@ public:
ghost = convert_ghost(g,cd_sm); ghost = convert_ghost(g,cd_sm);
this->dec = dec.duplicate(ghost); this->dec = dec.duplicate(ghost);
// an empty
openfpm::vector<Box<dim,long int>> empty;
// Initialize structures // Initialize structures
InitializeStructures(g_sz); InitializeStructures(g_sz,empty,g,false);
} }
/*! It construct a grid of a specified size, defined on a specified Box space, forcing to follow a specified decomposition, and having a specified ghost size /*! It construct a grid of a specified size, defined on a specified Box space, forcing to follow a specified decomposition, and having a specified ghost size
...@@ -1293,8 +1315,11 @@ public: ...@@ -1293,8 +1315,11 @@ public:
ghost = convert_ghost(g,cd_sm); ghost = convert_ghost(g,cd_sm);
this->dec = dec.duplicate(ghost); this->dec = dec.duplicate(ghost);
// an empty
openfpm::vector<Box<dim,long int>> empty;
// Initialize structures // Initialize structures
InitializeStructures(g_sz); InitializeStructures(g_sz,empty,g,false);
} }
/*! It construct a grid of a specified size, defined on a specified Box space, and having a specified ghost size /*! It construct a grid of a specified size, defined on a specified Box space, and having a specified ghost size
...@@ -1306,8 +1331,8 @@ public: ...@@ -1306,8 +1331,8 @@ public:
* \warning In very rare case the ghost part can be one point bigger than the one specified * \warning In very rare case the ghost part can be one point bigger than the one specified
* *
*/ */
grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,St> & g) grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,St> & g, size_t opt = 0)
:grid_dist_id(g_sz,domain,g,create_non_periodic<dim>()) :grid_dist_id(g_sz,domain,g,create_non_periodic<dim>(),opt)
{ {
} }
...@@ -1320,8 +1345,8 @@ public: ...@@ -1320,8 +1345,8 @@ public:
* \warning In very rare case the ghost part can be one point bigger than the one specified * \warning In very rare case the ghost part can be one point bigger than the one specified
* *
*/ */
grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,long int> & g) grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,long int> & g, size_t opt = 0)
:grid_dist_id(g_sz,domain,g,create_non_periodic<dim>()) :grid_dist_id(g_sz,domain,g,create_non_periodic<dim>(),opt)
{ {
} }
...@@ -1335,13 +1360,16 @@ public: ...@@ -1335,13 +1360,16 @@ public:
* \warning In very rare case the ghost part can be one point bigger than the one specified * \warning In very rare case the ghost part can be one point bigger than the one specified
* *
*/ */
grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,St> & g, const periodicity<dim> & p) grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,St> & g, const periodicity<dim> & p, size_t opt = 0)
:domain(domain),ghost(g),dec(create_vcluster()),v_cl(create_vcluster()),ginfo(g_sz),ginfo_v(g_sz) :domain(domain),ghost(g),dec(create_vcluster()),v_cl(create_vcluster()),ginfo(g_sz),ginfo_v(g_sz)
{ {
#ifdef SE_CLASS2 #ifdef SE_CLASS2
check_new(this,8,GRID_DIST_EVENT,4); check_new(this,8,GRID_DIST_EVENT,4);
#endif #endif
if (opt >> 32 != 0)
{this->setDecompositionGranularity(opt >> 32);}
InitializeCellDecomposer(g_sz,p.bc); InitializeCellDecomposer(g_sz,p.bc);
InitializeDecomposition(g_sz, p.bc); InitializeDecomposition(g_sz, p.bc);
InitializeStructures(g_sz); InitializeStructures(g_sz);
...@@ -1358,19 +1386,27 @@ public: ...@@ -1358,19 +1386,27 @@ public:
* \warning In very rare case the ghost part can be one point bigger than the one specified * \warning In very rare case the ghost part can be one point bigger than the one specified
* *
*/ */
grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,long int> & g, const periodicity<dim> & p) grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,long int> & g, const periodicity<dim> & p, size_t opt = 0)
:domain(domain),dec(create_vcluster()),v_cl(create_vcluster()),ginfo(g_sz),ginfo_v(g_sz) :domain(domain),dec(create_vcluster()),v_cl(create_vcluster()),ginfo(g_sz),ginfo_v(g_sz)
{ {
#ifdef SE_CLASS2 #ifdef SE_CLASS2
check_new(this,8,GRID_DIST_EVENT,4); check_new(this,8,GRID_DIST_EVENT,4);
#endif #endif
if (opt >> 32 != 0)
{this->setDecompositionGranularity(opt >> 32);}
InitializeCellDecomposer(g_sz,p.bc); InitializeCellDecomposer(g_sz,p.bc);
ghost = convert_ghost(g,cd_sm); ghost = convert_ghost(g,cd_sm);
InitializeDecomposition(g_sz,p.bc); InitializeDecomposition(g_sz,p.bc);
// an empty
openfpm::vector<Box<dim,long int>> empty;
// Initialize structures // Initialize structures
InitializeStructures(g_sz); InitializeStructures(g_sz,empty,g,false);
} }
/*! \brief It construct a grid on the full domain restricted /*! \brief It construct a grid on the full domain restricted
...@@ -1392,7 +1428,7 @@ public: ...@@ -1392,7 +1428,7 @@ public:
const Ghost<dim,long int> & g, const Ghost<dim,long int> & g,
const periodicity<dim> & p, const periodicity<dim> & p,
openfpm::vector<Box<dim,long int>> & bx_def) openfpm::vector<Box<dim,long int>> & bx_def)
:domain(domain),ghost(g),dec(create_vcluster()),v_cl(create_vcluster()),ginfo(g_sz),ginfo_v(g_sz) :domain(domain),dec(create_vcluster()),v_cl(create_vcluster()),ginfo(g_sz),ginfo_v(g_sz),gint(g)
{ {
#ifdef SE_CLASS2 #ifdef SE_CLASS2
check_new(this,8,GRID_DIST_EVENT,4); check_new(this,8,GRID_DIST_EVENT,4);
...@@ -1558,6 +1594,8 @@ public: ...@@ -1558,6 +1594,8 @@ public:
#ifdef SE_CLASS2 #ifdef SE_CLASS2
check_valid(this,8); check_valid(this,8);
#endif #endif
gdb_ext_global.clear();
v_cl.SGather(gdb_ext,gdb_ext_global,0); v_cl.SGather(gdb_ext,gdb_ext_global,0);
v_cl.execute(); v_cl.execute();
...@@ -2260,8 +2298,16 @@ public: ...@@ -2260,8 +2298,16 @@ public:
/*! \brief It move all the grid parts that do not belong to the local processor to the respective processor /*! \brief It move all the grid parts that do not belong to the local processor to the respective processor
* *
*/ */
void map() void map(size_t opt = 0)
{ {
if (!(opt & NO_GDB_EXT_SWITCH))
{
gdb_ext_old = gdb_ext;
loc_grid_old = loc_grid;
InitializeStructures(g_sz,bx_def,gint,bx_def.size() != 0);
}
getGlobalGridsInfo(gdb_ext_global); getGlobalGridsInfo(gdb_ext_global);
this->template map_(dec,cd_sm,loc_grid,loc_grid_old,gdb_ext,gdb_ext_old,gdb_ext_global); this->template map_(dec,cd_sm,loc_grid,loc_grid_old,gdb_ext,gdb_ext_old,gdb_ext_global);
...@@ -2294,7 +2340,7 @@ public: ...@@ -2294,7 +2340,7 @@ public:
h5l.load<device_grid>(filename,loc_grid_old,gdb_ext_old); h5l.load<device_grid>(filename,loc_grid_old,gdb_ext_old);
// Map the distributed grid // Map the distributed grid
map(); map(NO_GDB_EXT_SWITCH);
} }
/*! \brief This is a meta-function return which type of sub iterator a grid produce /*! \brief This is a meta-function return which type of sub iterator a grid produce
......
...@@ -175,7 +175,6 @@ class grid_dist_id_comm ...@@ -175,7 +175,6 @@ class grid_dist_id_comm
//! Memory for the ghost sending buffer //! Memory for the ghost sending buffer
Memory g_recv_prp_mem; Memory g_recv_prp_mem;
/*! \brief Sync the local ghost part /*! \brief Sync the local ghost part
* *
* \tparam prp... properties to sync * \tparam prp... properties to sync
...@@ -223,16 +222,13 @@ class grid_dist_id_comm ...@@ -223,16 +222,13 @@ class grid_dist_id_comm
if (bx_dst.isValid() == false) if (bx_dst.isValid() == false)
continue; continue;
/* grid_key_dx_iterator_sub<dim> sub_src(loc_grid.get(sub_id_src_gdb_ext).getGrid(),bx_src.getKP1(),bx_src.getKP2());
grid_key_dx_iterator_sub<dim> sub_dst(loc_grid.get(sub_id_dst_gdb_ext).getGrid(),bx_dst.getKP1(),bx_dst.getKP2());*/
#ifdef SE_CLASS1 #ifdef SE_CLASS1