CLmitedPrecisionRealType double malloc causes exception

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

CLmitedPrecisionRealType double malloc causes exception

Dziedzic, Peter

Hello community,

i have a problem. I use "CLmitedPrecisionRealType double malloc:" and this causes a exception on my Windows x64 System with 24GB memory.

vwnt.exe is just 1,6GB big. So it can grow till 4GB ( 32-Bit processes can use 4GB on a Win 64-Bit  OS).

My memory policy is:
ObjectMemory
installMemoryPolicy:
(MemoryPolicy new setDefaults;
preferredGrowthIncrement: (2 ** 24);
growthRetryDecrement: (2 ** 15);
freeMemoryUpperBound: (2 ** 25);
memoryUpperBound:4024000000
).

When i use malloc with a small number (e.g.: CLmitedPrecisionRealType double malloc: 100000)  then it works. but when i use it with a bigger number (e.g.: CLmitedPrecisionRealType double malloc: 1400000) then it  causes the exception.

I dont understand it cause i have a lot of free memory. Thanks for your help.

 

Mit freundlichen Grüßen - best regards,

Peter Dziedzic

---------------------------

Carl Zeiss Industrielle Meßtechnik GmbH/ Industrial Metrology
Softwareentwicklung/Software Development

D i p l .  I n f .  ( F H )   P e t e r  D z i e d z i c

73446 Oberkochen, Germany

tel: +49 73 64 20-84 48
fax: +49 73 64 20-48 00
e-mail: [hidden email]
http://www.zeiss.de/imt

Carl Zeiss Industrielle Messtechnik GmbH
Carl–Zeiss–Straße 22, 73447 Oberkochen
Aufsichtsratsvorsitzender: Dr. Dieter Kurz
Geschäftsführer: Dr. Rainer Ohnheiser, Felix Hoben, Axel Jaeger
Sitz der Gesellschaft: 73446 Oberkochen, Deutschland
Handelsregister: Amtsgericht Ulm, HRB 501561
USt–IdNr.: DE 811 515 346


----------------------------------------
This message is intended for a particular addressee only and may contain business or company secrets. If you have received this email in error, please contact the sender and delete the message immediately. Any use of this email, including saving, publishing, copying, replication or forwarding of the message or the contents is not permitted.


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: CLmitedPrecisionRealType double malloc causes exception

Holger Kleinsorgen-4

Hello,

 

have a look at this document concerning the memory limits of 32 bit applications running on 64 bit Windows.

 

http://msdn.microsoft.com/en-us/library/bb613473(v=VS.85).aspx

 

VW does not support IMAGE_FILE_LARGE_ADDRESS_AWARE, as far as I know, so the total memory is limited to 2 GB.

 

there are additional size limits, see doc/TechNotes/ImplementationLimits7x.pdf

 

 

Von: [hidden email] [hidden email] Im Auftrag von Dziedzic, Peter
Gesendet: Donnerstag, 25.
November 2010 09:16
An:
[hidden email]
Betreff: [vwnc] CLmitedPrecisionRealType double malloc causes exception

 


Hello community,

i have a problem. I use "CLmitedPrecisionRealType double malloc:" and this causes a exception on my Windows x64 System with 24GB memory.

vwnt.exe is just 1,6GB big. So it can grow till 4GB ( 32-Bit processes can use 4GB on a Win 64-Bit  OS).

My memory policy is:
ObjectMemory
installMemoryPolicy:
(MemoryPolicy new setDefaults;
preferredGrowthIncrement: (2 ** 24);
growthRetryDecrement: (2 ** 15);
freeMemoryUpperBound: (2 ** 25);
memoryUpperBound:4024000000
).

When i use malloc with a small number (e.g.: CLmitedPrecisionRealType double malloc: 100000)  then it works. but when i use it with a bigger number (e.g.: CLmitedPrecisionRealType double malloc: 1400000) then it  causes the exception.

I dont understand it cause i have a lot of free memory. Thanks for your help.


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Antwort: Re: CLmitedPrecisionRealType double malloc causes exception

Dziedzic, Peter

Hello,

okay, I thought that the LARGEADDRESSAWARE-Flag is set in the vwnt.exe by default.
Now i set the flag with editbin.

thanks for your help.

Mit freundlichen Grüßen - best regards,

Peter Dziedzic

---------------------------

Carl Zeiss Industrielle Meßtechnik GmbH/ Industrial Metrology
Softwareentwicklung/Software Development

D i p l .  I n f .  ( F H )   P e t e r  D z i e d z i c

73446 Oberkochen, Germany

tel: +49 73 64 20-84 48
fax: +49 73 64 20-48 00
e-mail: [hidden email]
http://www.zeiss.de/imt

Carl Zeiss Industrielle Messtechnik GmbH
Carl–Zeiss–Straße 22, 73447 Oberkochen
Aufsichtsratsvorsitzender: Dr. Dieter Kurz
Geschäftsführer: Dr. Rainer Ohnheiser, Felix Hoben, Axel Jaeger
Sitz der Gesellschaft: 73446 Oberkochen, Deutschland
Handelsregister: Amtsgericht Ulm, HRB 501561
USt–IdNr.: DE 811 515 346



"Holger Kleinsorgen" <[hidden email]>
Gesendet von: [hidden email]

25.11.2010 10:27

An
<[hidden email]>
Kopie
Thema
Re: [vwnc] CLmitedPrecisionRealType double malloc causes exception





Hello,
 
have a look at this document concerning the memory limits of 32 bit applications running on 64 bit Windows.
 
http://msdn.microsoft.com/en-us/library/bb613473(v=VS.85).aspx
 
VW does not support IMAGE_FILE_LARGE_ADDRESS_AWARE, as far as I know, so the total memory is limited to 2 GB.
 
there are additional size limits, see doc/TechNotes/ImplementationLimits7x.pdf
 
 
Von: [hidden email][hidden email]Im Auftrag von Dziedzic, Peter
Gesendet:
Donnerstag, 25. November 2010 09:16
An:
vwnc@...
Betreff:
[vwnc] CLmitedPrecisionRealType double malloc causes exception

 

Hello community,


i have a problem. I use "CLmitedPrecisionRealType double malloc:" and this causes a exception on my Windows x64 System with 24GB memory.


vwnt.exe is just 1,6GB big. So it can grow till 4GB ( 32-Bit processes can use 4GB on a Win 64-Bit  OS).


My memory policy is:
ObjectMemory
installMemoryPolicy:
(MemoryPolicy new setDefaults;
preferredGrowthIncrement: (2 ** 24);
growthRetryDecrement: (2 ** 15);
freeMemoryUpperBound: (2 ** 25);
memoryUpperBound:4024000000
).


When i use malloc with a small number (e.g.: CLmitedPrecisionRealType double malloc: 100000)  then it works. but when i use it with a bigger number (e.g.: CLmitedPrecisionRealType double malloc: 1400000) then it  causes the exception.


I dont understand it cause i have a lot of free memory. Thanks for your help.
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc



----------------------------------------
This message is intended for a particular addressee only and may contain business or company secrets. If you have received this email in error, please contact the sender and delete the message immediately. Any use of this email, including saving, publishing, copying, replication or forwarding of the message or the contents is not permitted.


_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: CLmitedPrecisionRealType double malloc causes exception

Andres Valloud-4
In reply to this post by Holger Kleinsorgen-4
Hmmm, the 2GB limit has been fixed recently.  However, I think what
might be going on is that allocating a >10mb chunk with malloc: fails
because of fragmentation.  Can you reproduce the failure on a clean
image, or with an image that has not grown so large?  If, at the point
where the malloc: fails, you tried something like

   x := Array new: 3000000.

does it work?  Perhaps the first one does because you have enough
contiguous free memory, but does this work then?

   x := (1 to: sensibleNumber) collect: [:each | Array new: 3000000]

The idea is to set sensibleNumber to a value such that in theory there
would be enough space for the allocations.  If it fails well before it
gets to sensibleNumber, then it's likely that address space
fragmentation is a problem.

Andres.

On 11/25/10 1:27 , Holger Kleinsorgen wrote:

> Hello,
>
> have a look at this document concerning the memory limits of 32 bit
> applications running on 64 bit Windows.
>
> http://msdn.microsoft.com/en-us/library/bb613473(v=VS.85).aspx
>
> VW does not support IMAGE_FILE_LARGE_ADDRESS_AWARE, as far as I know, so
> the total memory is limited to 2 GB.
>
> there are additional size limits, see
> doc/TechNotes/ImplementationLimits7x.pdf
>
> *Von:*[hidden email] <mailto:[hidden email]>
> [mailto:[hidden email]]
> <mailto:[mailto:[hidden email]]> *Im Auftrag von *Dziedzic, Peter
> *Gesendet:* Donnerstag, 25. November 2010 09:16
> *An:* [hidden email] <mailto:[hidden email]>
> *Betreff:* [vwnc] CLmitedPrecisionRealType double malloc causes exception
>
>
> Hello community,
>
> i have a problem. I use "CLmitedPrecisionRealType double malloc:" and
> this causes a exception on my Windows x64 System with 24GB memory.
>
> vwnt.exe is just 1,6GB big. So it can grow till 4GB ( 32-Bit processes
> can use 4GB on a Win 64-Bit OS).
>
> My memory policy is:
> ObjectMemory
> installMemoryPolicy:
> (MemoryPolicy new setDefaults;
> preferredGrowthIncrement: (2 ** 24);
> growthRetryDecrement: (2 ** 15);
> freeMemoryUpperBound: (2 ** 25);
> memoryUpperBound:4024000000
> ).
>
> When i use malloc with a small number (e.g.: CLmitedPrecisionRealType
> double malloc: 100000) then it works. but when i use it with a bigger
> number (e.g.: CLmitedPrecisionRealType double malloc: 1400000) then it
> causes the exception.
>
> I dont understand it cause i have a lot of free memory. Thanks for your
> help.
>
_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc