develooper Front page | perl.perl5.porters | Postings from January 2005

Re: IMPLICIT_SYS and Perl_Malloc behaviour under Win32 (out of memorywith Perls malloc?)

Thread Previous
From:
Steve Hay
Date:
January 4, 2005 02:02
Subject:
Re: IMPLICIT_SYS and Perl_Malloc behaviour under Win32 (out of memorywith Perls malloc?)
Message ID:
41DA696F.30100@uk.radan.com
Orton, Yves wrote:

>This message is kindof a follow up to message
><E471ED2DFD9353458E8B75FD6D6B0307B638D4@defra1ex4.de.mcilink.com> 
>
>I just tried out building Perl 5.8.4 (using the sources from Activestate
>Build 810) without having PERL_IMPLICIT_SYS set and with using Perls malloc.
>I commented out the USE_IMP_SYS = define line in the makefile as well as
>uncommenting the PERL_MALLOC = define line. I tried with both DEBUG_MSTATS
>and without. My test code was a hybrid Inline::C/Perl tool that is quite
>memory hungry.
>
>The end result was that with Perls malloc I ran out of memory quite quickly.
>I got this message:
>
>  Out of memory during "large" request for 16781312 bytes, total sbrk() is
>56289280 bytes at ....
>
>When run with the unaltered AS build 810 it didnt run out of memory, and
>Devel::Size reported that the total memory utilization for the data
>structure being constructed ran to a total of 20MB. 
>
>Having said all of that, when I didnt run out of memory my tests showed that
>with perls malloc things were modestly faster. 
>
>I was wondering if anybody had any suggestions, it seems odd that with the
>Perl Malloc i run out of memory when without it I dont.
>
Perl's malloc() requires an sbrk() function, which Win32's CRT doesn't 
provide.  Therefore, Perl's win32.c source provides one, but this had 
some limitations which would lead to the kind of out of memory error 
that you've seen.

I had a patch committed which should fix the problem that you had:

http://public.activestate.com/cgi-bin/perlbrowse?patch=23128

This patch went into 5.8.6, so please retry with that and let us know 
how you get on.

Cheers,
- Steve


------------------------------------------------
Radan Computational Ltd.

We would like to take this opportunity to wish all our customers, suppliers and colleagues seasons greetings.  We will not be sending corporate greetings cards this year.  Instead, we will be making a donation to charity.

The information contained in this message and any files transmitted with it are confidential and intended for the addressee(s) only.  If you have received this message in error or there are any problems, please notify the sender immediately.  The unauthorized use, disclosure, copying or alteration of this message is strictly forbidden.  Note that any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Radan Computational Ltd.  The recipient(s) of this message should check it and any attached files for viruses: Radan Computational will accept no liability for any damage caused by any virus transmitted by this email.

Thread Previous


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About