Wine on Leopard 32-bit with 64-bit memory addressing

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
tpatko
Level 2
Level 2
Posts: 32
Joined: Thu Aug 06, 2009 12:29 am

Wine on Leopard 32-bit with 64-bit memory addressing

Post by tpatko »

Hello WINE Users:

Is it possible to build WINE on Mac (Leopard 10.5.X) in 32-bit mode but with the ability to allocate/deallocate large amounts of memory using 64-bit addresses. Essentially what is needed for my particular application is to support LARGEADDRESSAWARE to allow for addressing more than 2GB of memory per process. For my particular use, no graphical libraries of any kind are required. This is to run a Windows command line program that is 32-bit but with the ability to memory in 64-bit space (see link below for a more detailed explanation).

http://classic.chem.msu.su/cgi-bin/ceil ... 138+00.htm

There is currently no native Mac binary so I am running the Windows version through WINE on Mac in 32-bit mode (actually currently through the prebuilt binary from http://www.kronenberg.org/darwine/). The current limit of memory allocation is 190MW (1520MB per process). The capabilities and limitations running under WINE are detailed here -> http://classic.chem.msu.su/gran/gamess/macosx.html

Any assistance would be appreciated.

Regards,

Thomas
vitamin
Moderator
Moderator
Posts: 6605
Joined: Sat Feb 23, 2008 2:29 pm

Re: Wine on Leopard 32-bit with 64-bit memory addressing

Post by vitamin »

tpatko wrote:Essentially what is needed for my particular application is to support LARGEADDRESSAWARE to allow for addressing more than 2GB of memory per process.
Wine already supports that. Of course single app is still limited to 4GB (actually less then that, because Wine and system libraries take some space).
tpatko
Level 2
Level 2
Posts: 32
Joined: Thu Aug 06, 2009 12:29 am

190MW (1520MB per process) is still upper memory limit

Post by tpatko »

Thank you for the reply.

I definitely cannot allocate more than 190MW per process (1520MB per process) for a program that is LARGEADDRESSAWARE (works perfectly under 64-bit Windows for large memory allocation). For a 32-bit version of Windows this limit would be close to 256MW (2048MB per process). Under a 64-bit version of Windows, this limit would be close to 512MW per process (4096MB per process).

I just updated my version to 1.1.21 as built by http://www.kronenberg.org/darwine/ and this hard upper memory limit is still there. I am looking to built or get a version of WINE for my Mac that can support the upper memory limit (get as close to 4096MB per process as possible).

Any ideas of why it cannot make the 64-bit memory allocations? I understand that there is some overhead from the WINE itself running, but that would only trim a little bit from the available space. For example as 190MW seems to be the practical 32-bit limit on WINE out of the theoretical 256MW (~74% of possible) if the same ratio exists for allocating 64-bit memory that would still allow me to address 3040MB per process (which would definitely help!).

Cheers,

Thomas
Gert van den Berg

Wine on Leopard 32-bit with 64-bit memory addressing

Post by Gert van den Berg »

On Thu, Aug 6, 2009 at 16:21, tpatko<[email protected]> wrote:
Thank you for the reply.

I definitely cannot allocate more than 190MW per process (1520MB per process) for a program that is LARGEADDRESSAWARE (works perfectly under 64-bit Windows for large memory allocation).  For a 32-bit version of Windows this limit would be close to 256MW (2048MB per process).  Under a 64-bit version of Windows, this limit would be close to 512MW per process (4096MB per process).
Just some general background and MSDN links that might be related:
http://msdn.microsoft.com/en-us/library/ms791558.aspx
http://technet.microsoft.com/en-us/libr ... 65%29.aspx
tpatko
Level 2
Level 2
Posts: 32
Joined: Thu Aug 06, 2009 12:29 am

Post by tpatko »

Thank you for the links.

Would there be any changes needed to the program to allocate more than 2GB under WINE as opposed to when it operates under a 64-bit Windows environment. There are no issues to allocate more than 2GB memory when the program is run in the native 64-bit Windows environment.

--Thomas
Locked