Hello,<br><br>I am working on various python programmable filters and have gotten them working in parallel but I've ran into some problems and have questions on some of the functionality. I am working with (structured) vtkImageData loaded in from a .pvti file (4 pieces) and will want to ideally output vtkUnstructuredData for some of my filters, and vtkImageData for others. I am not sure if Paraview is supposed to segment the input/output data for you but what I've found out is that it will depending on the set output data type.<br>
<br>If you choose vtkPolyData, vtkStructuredGrid, vtkRectilinearGrid, vtkImageData, and vtkUniformGrid, and print the input extents for each processor that's running the filter, the input will be that of the entire dataset. (and therefore each pvserver will read in the entire dataset into memory!)<br>
<br>If you choose vtkUnstructuredGrid or vtkMultiBlockData, then the input will be segmented into pieces and printing the extents of the data for each processor running the filter will show the input segmented. <br><br>Now, my question is if this behavior is normal/expected? If it is, is there a filter that I may call within my filter to segment my data to only include piece X our of N processors available?<br>
<br>Regarding the output data, I'm assuming each processor is expecting a certain extent of the data and Paraview will combine the output of all processors into one object, but when I output the "output" extents (out = self.GetOutput()), the extents are set to the entire dataset size by default.<br>
<br>I've also found a bug within the datatypes in which inputs are segmented. When a filter is initially added and applied to a dataset, outputting the extents of the inputs shows that each processor is loading the entire extent of the data. If you have a dataset with multiple timesteps or are able to force Paraview to re-read the dataset with the filter already set, you will see that the "correct" segmented extents are now passed through to the filter for each core.<br>
<br>Another, perhaps bug, is that if daisy-chain two python programmable filters, the first one being one of the two datatypes that segment the data, and then the second being one that doesnt segment the data, the inputs for the first filter will no longer be segmented anymore.<br>
<br>Jesus<br>