Hi Ken,

Thanks for the help, you're right D3 is dividing each "dataset". looking at the vtm file for this dataset, which was produced by saving from an extract surface filter that was run on a grouped set of 8 vts datasets while running pv in client-server with 8 ranks. In the vtm file each "piece" has 8 vtu "datasets". So d3 is seeing what appears in the gui to be an 8 block multiblock dataset as 64 items to divide individually, so running with 4 ranks this produces 256 regions. When the surface data is generated in serial with only one "dataset" per "piece" in the vtm file it works wonderfully.

While exploring this I've noticed that sometimes after d3 some geometry is being dropped, not sure if that's occuring in d3 or some point after, filed a bug report about that. http://paraview.org/Bug/view.php?id=14061

Burlen


On 05/10/2013 07:52 AM, Moreland, Kenneth wrote:
I am guessing that this has to do with the blocks in your multiblock dataset. The D3 filter will partition each block independently. This means that each process will have a small region in each partition, which will be spread throughout the dataset.

Although not a good solution, one way around the problem would be to first run the merge blocks filters to construct a monolithic unstructured grid, and then run D3.

-Ken

From: Burlen Loring <blor...@lbl.gov <mailto:blor...@lbl.gov>>
Date: Thursday, May 9, 2013 5:36 PM
To: "paraview@paraview.org <mailto:paraview@paraview.org>" <paraview@paraview.org <mailto:paraview@paraview.org>>
Subject: [EXTERNAL] [Paraview] d3 poor domain decomposition

    I wanted to report a situation where D3 is generating really poor
    domain decomposition. In this case it's taking decent data
    locality and destroying it. This is a multiblock with 8 polydata
    surfaces. Screen shot shows result with 4 mpi ranks, 8 produces a
    similar result. D3 usually does a great job, so maybe this has hit
    some of its weak spots. I'm surprised that there are so many
    disconnected regions on each rank and that it doesn't retain any
    of the initial data locality. Although here I was just
    experimenting trying to get a more even data distribution by using
    d3, I think similar use cases arise frequently. for example the
    need to re-balancing the data distribution after an iso-surface in
    parallel. Should this be considered a bug?







<VTKFile type="vtkMultiBlockDataSet" version="1.0" byte_order="LittleEndian">
  <vtkMultiBlockDataSet>
    <Piece index="0">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_0_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_0_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_0_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_0_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_0_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_0_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_0_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_0_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="1">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_1_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_1_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_1_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_1_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_1_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_1_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_1_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_1_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="2">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_2_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_2_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_2_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_2_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_2_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_2_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_2_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_2_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="3">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_3_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_3_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_3_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_3_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_3_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_3_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_3_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_3_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="4">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_4_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_4_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_4_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_4_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_4_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_4_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_4_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_4_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="5">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_5_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_5_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_5_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_5_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_5_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_5_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_5_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_5_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="6">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_6_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_6_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_6_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_6_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_6_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_6_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_6_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_6_7.vtu">
        
      </DataSet>
      
    </Piece>
    <Piece index="7">
      <DataSet index="0" file="shuttle-surf/shuttle-surf_7_0.vtu">
        
      </DataSet>
      <DataSet index="1" file="shuttle-surf/shuttle-surf_7_1.vtu">
        
      </DataSet>
      <DataSet index="2" file="shuttle-surf/shuttle-surf_7_2.vtu">
        
      </DataSet>
      <DataSet index="3" file="shuttle-surf/shuttle-surf_7_3.vtu">
        
      </DataSet>
      <DataSet index="4" file="shuttle-surf/shuttle-surf_7_4.vtu">
        
      </DataSet>
      <DataSet index="5" file="shuttle-surf/shuttle-surf_7_5.vtu">
        
      </DataSet>
      <DataSet index="6" file="shuttle-surf/shuttle-surf_7_6.vtu">
        
      </DataSet>
      <DataSet index="7" file="shuttle-surf/shuttle-surf_7_7.vtu">
        
      </DataSet>
      
    </Piece>
    
  </vtkMultiBlockDataSet>
</VTKFile>
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview

Reply via email to