[Paraview] timer log, looks a bit off

Berk Geveci berk.geveci at kitware.com
Thu Jul 9 09:41:19 EDT 2009


If you are look at a line like:

Execute vtkSphereSource id: 115,  0.256536 seconds

where vtkSphereSource should be replaced with your reader, it should
be only the timing for your reader from right before its execution to
right after. If you are looking at the render time, it would include
other things. In the rest of the message, I am assuming that you are
looking at a line like the one above. Even if not, some of my answers
should shed some light on how timing works.

During the RequestData pass, the executive does the following:

- vtkDemandDrivePipeline::ExecuteDataStart() -> calls
this->Algorithm->UpdateProgress(0.0) at the end
- calls your algorithm
- vtkDemandDrivePipeline::ExecuteDataEnd() -> calls
this->Algorithm->UpdateProgress(1.0) at the beginning

The timer log reports the time that passed between progress 0 and 1.
There seems to be a big discrepancy between this number and what your
timing show. So I'd guess that there is a bug somewhere. If you are
calling UpdateProgress(), can you verify that it is doing the right
thing? Also, you can insert your own timing code in
vtkDemandDrivenPipeline to look for a bug in ParaView.

> The more important question: What is going on behind the scenes in those 5
> seconds after my reader executes?

I am going to say nothing - barring any bugs.

> Can we safely say it's client server communication?

Nope. The timing should not include any client-server communication.

> ParaView wont try to load ballance behind my back will it?

It depends. If this reader produces polydata or unstructured grid, are
you setting MAXIMUM_NUMBER_OF_PIECES to -1 in RequestInformation? If
this reader produces one of the structured datasets, are you producing
exactly the UPDATE_EXTENT? Either way, the timing should not include
any load balancing ParaView does. That should be reported separately.

On Tue, Jul 7, 2009 at 8:49 PM, Bam Ting<bampingting at gmail.com> wrote:
> testing my reader plugin, I thought timer log would be a good way to go,
> however not so sure what it's timing. running in client server mode, 2 , 4
> and 8 processes so far.
>
> I put some time computation in my request data method that show the read
> takes less than 1 second on all processes and decreases as process are
> added, however timer log reports nearly 6 seconds on all runs.
>
> The more important question: What is going on behind the scenes in those 5
> seconds after my reader executes?
>
> Can we safely say it's client server communication?
>
> ParaView wont try to load ballance behind my back will it?
>
>
> _______________________________________________
> 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
>
>


More information about the ParaView mailing list