[pypy-dev] Visual Studio 2015 build strange behavior

Sergey Kurdakov sergey.forum at gmail.com
Mon Apr 10 13:45:48 EDT 2017


Hi Matti,

after double checking pypy-c.exe headers with

dumpbin /headers pypy-c.exe

(actually while objects are compiled with /LARGEADDRESSAWARE flag in
windows.py - final exe does not contain required flag so possibly here
- either this flag should be removed or set correctly such that
produced exe has needed headers as might be expected from setting
/LARGEADDRESSAWARE flag in code - will look into this in my merge
request)

and  running

editbin /LARGEADDRESSAWARE pypy-c.exe

I achieved compilation of pypy by pypy

but  I also set

BCDEDIT /Set IncreaseUserVa 3072

so my intent before pull request  is
a) to check  that /LARGEADDRESSAWARE flag in windows.py start to work
b) will check several times to be sure if BCDEDIT /Set IncreaseUserVa
3072 is really needed to work.

when I'm done will submit code and if it actually needed - also docs
to compile pypy on windows 64 could be changed such that it it does
not require additional efforts to investigate.

Regards
Sergey

On Sat, Apr 8, 2017 at 10:36 PM, Sergey Kurdakov <sergey.forum at gmail.com> wrote:
> Hi Matti,
>
>>Are you using 64-bit windows? Then using the editbin /largeaddressaware trick as mentioned on the windows build >page you should be able to access all your memory from the 32-bit python executable used for translation.
>
> yes I'm on windows 64 ( win 10/64 ) and  I did, but to no avail ( btw
> pypy builds with largeaddressaware flag too - so it is there either
> way )
> so the memory error appears in spite of having /largeaddressaware trick,
>
> Regards
> Sergey
>
>
> On Sat, Apr 8, 2017 at 9:53 PM, Matti Picus <matti.picus at gmail.com> wrote:
>> On 08/04/17 19:26, Sergey Kurdakov wrote:
>>
>>> while compiling pypy lack of memory is an issue even on machines with
>>> more memory that required for compilation.
>>>
>>> Basically pypy  will crash when achieves 2 Gb memory limit even with
>>> setting pypy to use extended memory
>>> I  suppose it starts to interfere with system memory addresses which
>>> are located exactly at 2 Gb starting point,
>>
>> Are you using 64-bit windows? Then using the editbin /largeaddressaware
>> trick as mentioned on the windows build page you should be able to access
>> all your memory from the 32-bit python executable used for translation.
>> Matti


More information about the pypy-dev mailing list