From: Benjamin K. <ben...@na...> - 2008-08-04 20:13:39
|
> Specifically, look for the statement "global_ids.clear();" in > mesh_communication_global_indices.C. The for loop immediately > following is where all the CPU time is being sucked up. But I don't > see what the problem is. Nothing inside a libmesh_assert() there is > expensive. Putting std::lower_bound inside an O(N) loop isn't great, > but I don't see why it would be so much worse with METHOD=dbg on. > push_back() should be fine since the proper amount of memory has been > preallocated outside the loop 'dbg' turns on some serious gcc standard library error checking... You can remove the lines "-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC" from Make.common and see what you get. Should be *way* faster. Sorry, my uselessness is around 90% today -- we had to shut down work and get out to prepare for an impending storm. -Ben |