All -

I'm refactoring the SystemIO code to help address the RB IO bottleneck.  As of 
r6316, serialized vectors are written as

for node…
  for var…
    for comp…


instead of the previous implementation

for var…
  for node…
     for comp…

This allows the parallel communication to occur NVAR times less, passing 
instead larger buffers more efficiently.  I also removed the collective 
communication from the serialized read member, so its performance is increased 
5-10x depending on a lot of factors.

I tested this on all my stuff and am pretty confident with it, but let me know 
if anything breaks!  Old restart files should be read properly, but the library 
only writes the new flavor.

Dave, my ultimate fix for you will be extending this to write

for node…
  for vec…
    for var…
      for comp…

or some permutation thereof, which will necessitate writing all the reduced 
basis vectors to a single file, in order to get maximum performance.  I assume 
that's OK with you?

-Ben



------------------------------------------------------------------------------
LogMeIn Central: Instant, anywhere, Remote PC access and management.
Stay in control, update software, and manage PCs from one command center
Diagnose problems and improve visibility into emerging IT issues
Automate, monitor and manage. Do more in less time with Central
http://p.sf.net/sfu/logmein12331_d2d
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel

Reply via email to