Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Windows 2000: Use of more than 2GB RAM per Instance

Re: Windows 2000: Use of more than 2GB RAM per Instance

From: Paul Drake <drak0nian_at_yahoo.com>
Date: 11 Feb 2003 08:58:10 -0800
Message-ID: <1ac7c7b3.0302110858.6e971221@posting.google.com>


"Casi Schmid" <casimir.schmid_at_swisscom.com> wrote in message news:<1044753963.434521_at_exnews>...
> Got Oralce Enterprise Edition 8.1.7.4.5 on several Windows 2000 Advanced
> Server boxes with more than 2GB RAM installed - details:
>
> boot.ini
> multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Advanced
> Server 3 GB" /fastdetect /3GB
>
> initSID.ora
> db_block_buffers = 65000
> shared_pool_size = 200000000
> large_pool_size = 52428800
> java_pool_size = 67108864
> log_buffer = 131072
> db_block_size = 16384
>
> select * from v$sga:
> NAME VALUE
> -------------------- ----------
> Fixed Size 75804
> Variable Size 334192640
> Database Buffers 1064960000
> Redo Buffers 139264
>
> Questions:
> --------------------------------
>
> - do you have experiences in running instances on windows having an SGA
> greater than 2GB?

yes.

> - which settings are you using?

/3GB
> - what problems have you ecountered using such a big SGA size on Windows
> that is still a 32-Bit OS?

if the boot.ini setting is incorrect, you won't know about it until you hit the 1.7 GB wall ...

> best regards from snowy Switzerland
>
> Casi

Hi from less than snowy New York (a few flurries).

  1. W2K does not allocate memory for db_block_buffers into the process memory (for the oracle.exe process until the memory is actually populated with a block). So just because the memory is supposedly allocated in v$sga - does not mean that memory has been allocated by the operating system. Pretty un-*nix, isn't it?
  2. check the following registry key: (I also had /PAE here, which is not relevant - as it only matters with > 4 GB physical memory) HKLM\SYSTEM\CurrentControlSet\Control\SystemStartOptions : REG_SZ : "FASTDETECT 3GT PAE"
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINNT [operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Advanced Server" /fastdetect /3GB /PAE

This is for a server that has 6 GB of physical memory, where I was planning on testing the Intel P IV CPU's physical address extentions (PAE) functionality.
Notice how the string "/3GB" in the boot.ini was translated into "3GT" in the registry. That seemed to be noteworthy to me.

So - I believe that the string in your boot.ini is incorrect. You will want to remove the "3 GB" string.

3. you will not receive an error that /3GT tuning is not set, until you attempt to allocate more than 1.7 GB of memory in the oracle.exe process. Typically, this will occur as a user session attempts to allocate a sort_area_size, or a new (dedicated) connections is attempted.

4. at first glance, 200,000,000 bytes is quite a large shared pool.

5. what are your sort_area_size, hash_area_size and typical number of connections? These count against the process memory used by oracle.exe.

6. use the tool pslist from http://www.sysinternals.com you can call this as a scheduled task and redirect its output to a file, adding a timestamp between records - if you want to track memory usage.
Or you could use the W2K performance monitor to do the same thing, I'd just rather not use a gui tool.

C:\> pslist -m oracle

C:\Pstools>pslist -m oracle

PsList 1.22 - Process Information Lister Copyright (C) 1999-2002 Mark Russinovich Sysinternals - www.sysinternals.com

Process memory detail for DOUBLESHOT:

Name Pid VM WS WS Pk Priv Faults NonP Page PageFile
oracle 424 293288 169576 182408 228776 6611928 79 72 228776
oracle 680 857248 562668 694300 789536 634079 49 76 789536

hth,

Paul Received on Tue Feb 11 2003 - 10:58:10 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US