Hi, We're running into a intermittent deadlock when calling assign_global_indices(). The problem only appears on >= 5 processors, and even then it only appears intermittently.
Here's the error we see: Assertion `hi <= node_upper_bounds[communicator.rank()]' failed. hi = 887794606_2212644264_162978473 node_upper_bounds[communicator.rank()] = 583640776_2377824377_539889346 [0] src/mesh/mesh_communication_global_indices.C, line 412, compiled Oct 29 2013 at 08:06:24 Valgrind for this code returns no problems, both with and without the intermittent error. The code generating this error is as follows: int main(void) { //create a mesh const int dim=3; Mesh mesh(dim); MeshTools::Generation::build_cube(mesh, 5000, 5000, 5000, //increase this if needed to generate the bug. -1,1, -1,1, -1,1, HEX8 ); MeshCommunication().broadcast(mesh); mesh.allow_renumbering(false); mesh.partitioner() = AutoPtr<Partitioner>(new LinearPartitioner); mesh.prepare_for_use(); mesh.all_second_order(true); //not sure if this is strictly necessary, but we need 2nd order elements for our application. Included for completeness. using libMesh::MeshTools::Private::globally_renumber_nodes_and_elements; globally_renumber_nodes_and_elements(mesh); mesh.fix_broken_node_and_element_numbering(); return 0; } We need this code in order to write partition-agnostic custom checkpoint files for a cardiac simulation. I wrote this code based on the file IO within the libmesh internals. If it's broken for me, input/output might also be broken for others. ------------------------------------------------------------------------------ _______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel