I tried to modify dof_map.h as follows 
  unsigned int block_size() const
  {
#ifdef LIBMESH_ENABLE_BLOCKED_STORAGE
    return (this->has_blocked_representation() ? this->n_variables()*4 : 1);
#else
    return 1;
#endif
  }

I don't know if it is the "correct" way to do it but the memory footprint has 
not changed.
I'm also interested in knowing if the memory savings take place on the libMesh 
side or on the PETSc side, or on both sides.

Thanks for help.
Lorenzo



On May 30, 2013, at 4:23 PM, "Kirk, Benjamin (JSC-EG311)" 
<[email protected]> wrote:

> On May 28, 2013, at 11:22 AM, lorenzo alessio botti 
> <[email protected]> wrote:
> 
>> Yes you are right, it would be limited to dG, all variables of the same 
>> polynomial degree and no local P refinement.
>> I know that this is very specific but the memory savings are quite 
>> encouraging.
> 
> To properly test for this case will require looking at all elements on all 
> processors, and assuring that (nvars*ndofs) is invariant.  Not that I am 
> against it, but definitely some work to get it right.
> 
> To provide an estimate for how much memory savings this might produce in your 
> problem, could you manually hardcode the block size for your problem at hand 
> and see what happens, reporting the results?
> 
> I *think* that should work…
> 
> -Ben
> 
> 


------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to