In ParaView, they are many readers, some are parallel aware, some aren’t.
This term “parallel aware” is not strictly defined anywhere, there is a single reference to it in the doc
And a few instance in the source code of ParaView. I think we should defined this term precisely.
Here is a suggestion:
"A parallel aware filter or reader is a filter or reader containing dedicated code that makes it work correctly in parallel and would not work without it. Regarding filter, the stream tracer is a parralel aware filter as it would not work without dedicated code to transfer particles from one domain to the next. Regarding reader, all unstructred data reader needs to be parallel aware to output distributed data, eg: Exodus reader"
If we consider that we have an agreement here, that we need to list which readers are parallel aware and which aren’t.
If should be standard in the documentation of each unstructured data reader to specify if they are parallel aware are not. Ideally, this information should also be available as a nice list in the doc.
That lead us to my final point, regarding readers, parallel aware is not enough.
Some readers are indeed parallel aware, but still require the whole dataset to be reader from disk in order to perform the distribution.
- PVTP readers on each nodes do not need to read the whole dataset, only the part that each node needs
- EnSight readers on each nodes need to read the whole dataset before distributing
This is an important distinction and users needs to know about this in order to choose a file format to work with.
Lets coin a supplementary term for this:
- parallel-disk aware
- parallel and disk aware
- parallel-part aware
- parallel and part aware
Any other ideas ?