[vtkusers] Allocation Errors

Alex Malyushytskyy alexmalvtk at gmail.com
Wed Aug 29 18:57:11 EDT 2012


I never worked with Activiz, but I think you are wrong:

> It is indeed 32bit code because Activiz isn't available as 64 bit code.

As far as I understand it is:
http://www.kitware.com/opensource/avdownload.php

> I understand what  you mean, that would explain why it depends on the
> computer.

On Windows 64 bit 32 bit executable which has Large address aware
attribute flag set can get up to 4 GB of memory for data, when on 32
Bit 2GB the most ( in reality you mostly always get less than 1.8 GB
continuous memory right after your application starts due to static
data in dlls).

So it does depend on the system you are running your executable at.
With special configuration you may allow process to provide 3GB for
data leaving 1GB for code even on 32 bit Windows.
I would never expect this from customer though.


Regards,
     Alex




On Wed, Aug 29, 2012 at 11:35 AM, Jean-Hugues Royer <jhroyer at joher.com> wrote:
> Hi,
>
> It is indeed 32bit code because Activiz isn't available as 64 bit code.
>
> I understand what  you mean, that would explain why it depends on the
> computer.
>
> Do you have any idea how to overcome this problem ? (if this is the case)
>
> It happens at our first call of vtkDICOMImageReader, that is why
> fragmentation seems to be unlikely unless DLLs are loaded randomly in the
> address space.
>
> Regards.
>
>
> On 29/08/2012 20:20, John Drescher wrote:
>>
>> On Wed, Aug 29, 2012 at 2:13 PM, Jean-Hugues Royer<jhroyer at joher.com>
>> wrote:
>>>
>>> Hi,
>>>
>>> On some computers when we load DICOM images using vtkDICOMImageReader we
>>> get
>>> this allocation error message:
>>>
>>>
>>> In c:\users\davidcole\dashboards\my
>>>
>>> tests\activizinstallers\vtksource-prefix\src\vtksource\common\vtkDataArrayTemplate.txx,
>>> line 144
>>> vtkShortArray (06EDCFC0): Unable to allocate 166567060 elements of size 2
>>> bytes.
>>>
>>> or
>>>
>>> In c:\users\davidcole\dashboards\my
>>>
>>> tests\activizinstallers\vtksource-prefix\src\vtksource\common\vtkDataArrayTemplate.txx,
>>> line 144
>>> vtkShortArray (0C765058): Unable to allocate 184549376 elements of size 2
>>> bytes.
>>>
>>>
>>> Of course there is enough memory on the computers to allocate such a
>>> size.
>>>
>>> This can be reproduced at will on some computers while it will never
>>> happen
>>> on others.
>>>
>>> We are using Activiz 5.8.
>>>
>>>
>>> Did you already see this message ?
>>>
>>> Do you know why/how this happens ?
>>>
>> If this is a 32 bit code it could be caused by address space
>> fragmentation. Remember under 32 bit windows you by default get a 2GB
>> address space regardless of how much ram or page file you have. Inside
>> this 2GB address space all memory for your application is allocated
>> along with all of your code. Also remember that dlls specify what
>> address they try to load at and this can cause fragmentation because
>> the OS does not try to pack them all together to create 1 large free
>> address space.
>>
>> John
>
> _______________________________________________
> 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 VTK 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 vtkusers mailing list