Ben,



Good info.

So -- going back to my comment of having 3 1GB programs running. Is it the case that they would be using the 2GB of RAM and then swap space of 1GB???
And the operating system would be running in the other 2GB of RAM?





-John






On Nov 19, 2009, at 4:23 AM, Ben Chernys wrote:

**
The line by Lyle is incorrect. A 32 bit program can address 32 bits - not 31!. There are no special compiler switches needed to allow you to address higher than 2Gb.

That being said, the OS shares some of your address space. Windows, will allocate 2Gb of real memory for its own use and limit the virtual address space for any single process to 2Gb by default. This can be changed with the /3gb switch in c:\boot.ini

John, your interpretation of the article is also incorrect. Specifically, you say "It seems as if ALL programs together under windows can only take 2GB. So - if I have 3 programs each take 1GB -- I would have a problem -- even though I have 4GB."

You would have a performance problem, not necessarily a memory problem, though I have seen Windows deny mallocs when it was reorganising it's own memory usage even though there was plenty of "memory" - ie disk space - available.

The KB article states that EACH process can address "typically" 2GB of space and the article goes on to talk about addressing MORE than 4GB on a 32 but machine which is more than a 32 bit word can address.

The article also talks about the /3GB switch which I describe a bit below. To enable it, add it to the C:\boot.ini file as in

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /3GB

With this configuration, Windows own use of virtual addresses is limited to 1Gb and any application can address 3Gb of virtual space. I use this config in a lap-top of 4gb where I run a VM Windows 2003 server with ITSM and have the VM's memory resident (non-swappable IF Windows agrees) in the host OS. This gives me excellent VM performance, as well as allowing me to run a host of other apps such as Visual C, Outlook with a 1gb mail file, Word, etc.

This does affect performance in odd ways when you are running many different memory hungry applications (such as MS Word) but it is relatively standard for 32 bit servers running only server type applications (such as Oracle / Remedy etc).

Microsoft has a few articles on it.  Look for the /3gb switch.

Cheers
Ben Chernys


From: Action Request System discussion list(ARSList) [mailto:arslist@ARSLIST.ORG ] On Behalf Of John Sundberg
Sent: November 18, 2009 7:34 PM
To: arslist@ARSLIST.ORG
Subject: Re: JVM output -- only sees 2GB - but machine has 4GB?

**

As I read http://support.microsoft.com/kb/283037

It seems as if ALL programs together under windows can only take 2GB.

So - if I have 3 programs each take 1GB -- I would have a problem -- even though I have 4GB.


Do others interpret the MS support document similarly?




-John



On Nov 18, 2009, at 12:05 PM, Lyle Taylor wrote:

**
If you’re using a 32-bit JVM (which is required for Remedy), then it is limited to a 2GB memory space, as are all 32-bit processes. You may have more memory on the machine, but 32-bit processes cannot access more than 2GB (unless they’re specially compiled for that, which these aren’t).
Lyle
From: Action Request System discussion list(ARSList) [mailto:arslist@ARSLIST.ORG ] On Behalf Of John Sundberg
Sent: Wednesday, November 18, 2009 10:38 AM
To: arslist@ARSLIST.ORG
Subject: JVM output -- only sees 2GB - but machine has 4GB?
**
Below is the output of a hs_err_pid file -- the JVM is only seeing 2GB -- but the physical machine has 4GB.
Does anybody know why?
Also -- does anybody on a Windows 2003 Server see anything (relevant) different if they get a pid file?
Any other suggestions are welcome.
Thanks,
-John
---------------  S Y S T E M  ---------------
OS: Windows Server 2003 family Build 3790 Service Pack 2
CPU:total 1 (8 cores per cpu, 1 threads per core) family 6 model 10 stepping 5, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3 Memory: 4k page, physical 2097151k(1391860k free), swap 4194303k(3394944k free) vm_info: Java HotSpot(TM) Server VM (11.3-b02) for windows-x86 JRE (1.6.0_13-b03), built on Mar 9 2009 01:10:11 by "java_re" with MS VC+ + 7.1
time: Fri Nov 13 14:11:23 2009
elapsed time: 77507 seconds
--
John David Sundberg
235 East 6th Street, Suite 400B
St. Paul, MN 55101
(651) 556-0930-work
(651) 247-6766-cell
(651) 695-8577-fax
john.sundb...@kineticdata.com
_Platinum Sponsor: rmisoluti...@verizon.net ARSlist: "Where the Answers Are"_


NOTICE: This email message is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message.

_Platinum Sponsor: rmisoluti...@verizon.net ARSlist: "Where the Answers Are"_

--
John David Sundberg
235 East 6th Street, Suite 400B
St. Paul, MN 55101
(651) 556-0930-work
(651) 247-6766-cell
(651) 695-8577-fax
john.sundb...@kineticdata.com





_Platinum Sponsor: rmisoluti...@verizon.net ARSlist: "Where the Answers Are"_ _Platinum Sponsor: rmisoluti...@verizon.net ARSlist: "Where the Answers Are"_

--
John David Sundberg
235 East 6th Street, Suite 400B
St. Paul, MN 55101
(651) 556-0930-work
(651) 247-6766-cell
(651) 695-8577-fax
john.sundb...@kineticdata.com






_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor:rmisoluti...@verizon.net ARSlist: "Where the Answers Are"

Reply via email to