[Paraview] Re: [vtkusers] paraview crashes in VTK with > 2^31 points

Marco Ehlert Marco.Ehlert at mpikg.mpg.de
Thu Nov 22 10:56:55 EST 2007


VTK_USE_64BIT_IDS is used and vtkIdType is 64bit 'long'.
The mentioned bug is related to 'int' type of extent[] values
and calculating the number of tuples before invoking
SetNumberOfTuples().

see vtkImageData::AllocateScalars()

   1630*1250*1520 results in -1197967296 as number of tuples

Fixing this calculation as mentioned in previous email removes the
crash, but when turning on volume representation no points are displayed. 
I am using the MPI version with --use-offscreen-rendering on 64 nodes. 
I can move my box and modify the color map but nothing is displayed.

I am very new to paraview and would appreciate any further hint
how to track down why no points are displayed. All goes well with
400x400x400 samples.

Marco

On Thu, 22 Nov 2007, Berk Geveci wrote:

> Did you compile paraview with VTK_USE_64BIT_IDS? By default, VTK (and
> hence ParaView) uses a signed int as n id type, restricting number of
> points/cells to 2^31. If you compile with VTK_USE_64BIT_IDS turned on,
> VTK will use the appropriate 64 bit integer as id type. However, there
> are still some bugs where certain things do not work with 2^31. We
> haven't tracked all of them down. If you run into issues, please post
> a report on this list describing what happened in detail.
>
> -berk
>
> On 11/22/07, Marco Ehlert <Marco.Ehlert at mpikg.mpg.de> wrote:
>>
>> Hello,
>>
>> does paraview (resp. VTK) support data sets of
>> more than 2^31 points on 64bit x86 ?
>>
>> I am using a raw file with dimension
>> 1630x1250x1520 of 8bit-points.
>>
>> During file reading paraview crashes with SIGFAULT.
>> The crash seems based on a wrong 'int' calculation in
>>
>>     vtkImageData::AllocateScalars().
>>
>> After first attempt of fixing it roughly
>>
>> /*
>>      scalars->SetNumberOfTuples((extent[1] - extent[0] + 1)*
>>                                 (extent[3] - extent[2] + 1)*
>>                                 (extent[5] - extent[4] + 1));
>> */
>>      scalars->SetNumberOfTuples((long)(extent[1] - extent[0] + 1)*
>>                                 (long)(extent[3] - extent[2] + 1)*
>>                                 (long)(extent[5] - extent[4] + 1));
>>
>>
>> the file is read fine now, but paraview does not display
>> any points. On the other hand arrays of 400x400x400
>> are displayed perfectly. Maybe there are more such bugs
>> in paraview components. At least the above bug is still
>> present in current CVS VTK tree.
>>
>> Any idea how to debug this situation and fix it completely
>> is appreciated.
>>
>> Regards,
>> Marco Ehlert
>>
>> IT-Support                        <Marco.Ehlert at mpikg.mpg.de>
>> Max-Planck-Institute of Colloids  Tel:  +49-(0)331-567-9650
>> and Interfaces
>> Am Muehlenberg 1, D-14476, Golm, Germany
>> _______________________________________________
>> This is the private VTK discussion list.
>> Please keep messages on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
>


More information about the ParaView mailing list