Oracle 9i Automatic PGA Memory Management

Hello,
my team and me, we are facing difficulties to change the size of the PGA used by our server processes for HASH JOIN, SORT... operators,
here you can see the results of "select * from v$pgastat":
[pgastat dynamic view results|http://pastebin.com/m210314dc]
We have been increasing consecutively our pga_aggregate_target parameter from 1.7 Gb initially to 4Gb then at the end 6Gb, the value of "Global memory bound" and " aggregate pga auto target" on the link above are still equal to 0.
I have been reading threads on the forum and documentation see below, I understand how the global memory manager (CKPT) computest the sql memory target and then the global memory bound, as far as I understand I can only "play" on the pga_aggregate_target value in order to increase the size of our PGAs (I exclude to play with hidden parameters).
- Joze Senegacnik: Advanced Management of working areas in Oracle 9i/10g : http://tonguc.yilmaz.googlepages.com/JozeSenegacnik-PGAMemoryManagementvO.zip
- Dageville Benoit and Zait Mohamed: SQL memory management in oracle 9i
Here different information that could be usefull:
OS: solaris 10 (db running in a non global zone)
Arch: 64-bit sparcv9 kernel modules
Physical memory: 32 Gb (being shared between all non global zones)
Oracle version: 9.2.0.5 32bits
Values of init parameters and hidden parameters that could be relevant:
[init parameters|http://pastebin.com/m40340cf4]
[hidden parameters|http://pastebin.com/m50d74c53]
Maybe useful queries:
over work areas views, I use the following script:
[wa_analysis.sql|http://pastebin.com/d606ebd9b]
and the result of it:
[result of script wa_analysis.sql|http://pastebin.com/m5f49a2e5]

Joze Senegacnik wrote:
- either your sessions are using a lot of memory for storing variables like pl/sql arrays which is subtracted from automatic management: PGA_AGGREGATE_TARGET - (aggregated persistent area + a part of the run time area of all server processes)
- you are hitting a bug
- or maybe something elseI am really happy you come to this conclusion too, they are the same we made with my team and we have submitting to Oracle support via metalink SR 3-1216060641, we were asking if we hit the following bug (in note 1) or we leak about pl/sql or java... or else indeed,
note 1: PGA_AGGREGATE_TARGET Assigned Memory Is Left Unconsumed When Set High [ID 844542.1]
Joze Senegacnik wrote:
I would like to know:
1.) what were the values for global memory bound and autotarget immediately (or in short time) after the database restart or when you have increased them Just after the restart of the database and just after the change of P_A_T, we query v$pgastat immediately after and the value of global memory bound and auto target were equal to 0 byte,
2.) If you are able to change value of PGA_AGGREGATE_TARGET (P_A_T) to 10GB what happens with global memory bound and auto traget. They should be positive at least for a short time. As this is a dynamic parameter you can change it for a short time, run queries and set it back.We plan to do this tonight, we have an "heavy" ITIL change management procedures that allow us to make changes approved by change manager and only during night maintenance window on production system, I come back to you tomorrow. But we have been increasing from 1,7Gb to 4Gb to 6Gb, each time I have been querying v$sgastat in the next 2 mins and global memory bound and auto target were equal to 0 byte.
3.) Have you checked on the OS level how much memory are using server processes - do these numbers come along with what Oracle says. Not during problematic activities, meaning active work areas performing HASH-JOIN, SORT... operators,
unfortunately it is a production system, even if he performs poorly, we are not allowed to try or retry the poor queries, but if it comes again I'll do it,
during low activities, here the results paste with the scripts I used:
[pga processes info in oracle|http://pastebin.com/f2e540062]
I spooled the result rows of this previous script in /var/tmp/pga_processes.log then I loop over all processes pid and display pmap output anon info like this:
h5. cat /var/tmp/pga_processes.log | awk -F' ' '{print $5}' | xargs -n 1 -i pmap -x {}| grep -v 'Addres' |egrep 'Kb' 2>&1 > /var/tmp/pga_processes_os.log
then I merge line by line the two files with unix paste command, here the results:
[os and oracle pga informations|http://pastebin.com/f4135c8a6]
4.) How many server processes are running on you system in average/max and are you using just dedicated processes or also shared?in average 250, we are only using dedicated processes,
5.) At time of low activity is the global memory bound still 0 or becomes > 0. I have been querying every 15 min during more than 24 hours low activities, it still stay to 0,
5.) Are you experiencing paging/swapping on OS level?No, here orca figures for details:
[free memory|http://img509.imageshack.us/img509/5897/ohuron1asd2gauge1024xfr.png]
swap
[pagein pageout|http://img121.imageshack.us/img121/6946/ohuron1asd2gaugepginper.png]
[memory usage|http://img19.imageshack.us/img19/2213/ohuron1asd2gaugeppkerne.png]
6.) Please post the result of: select * from X$QESMMSGA ;during low activities, [results X$QESMMSGA|http://pastebin.com/f61df7093]
While you will be answering to my questions I'll try to figure out what we can do to properly diagnose the problem. As you are on 9i it is a little bit harder.I am really kind of your help, as we say in my country, "if you need tow arms one day to carry something, call me."
--Jeremy Baumont                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

Similar Messages

  • Automatic PGA Memory Management in 9i and 10g

    Hi,
    I read the Doc# 223730.1 for Auto PGA advisory.
    At one point in the document, there is given a query to calculate percentage of times work areas were executed in optimal, one-pass, or multi-pass mode since start-up.
    My question is why there is a clause low_optimal_size > 64*1024); ---- for 64 K optimal size
    Why it is safe to ignore all the workareas below 64 K.
    How to decide which entries should be ignored?
    Thanks,
    Neeraj

    I think 64K value used in that document is just an example.
    You can use the prior query (one above which you have cited here) for finding non-empty buckets and then view histograms for range of your concern (the range which is getting used more frequently in your environment).

  • Confusion about Automatic Shared Memory Management

    Hi,
    Oracle Database 10g includes the Automatic Shared Memory Management feature which simplifies the SGA memory management significantly. To use Automatic Shared Memory Management, we have to set the SGA_TARGET initialization parameter to a nonzero value and the STATISTICS_LEVEL initialization parameter to TYPICAL or ALL.
    Oracle Database 10g Rel. 2 documentation, in some places, says that:
    If SGA_TARGET is specified, then the following FIVE memory pools are automatically sized:
    * Buffer cache (DB_CACHE_SIZE)
    * Shared pool (SHARED_POOL_SIZE)
    * Large pool (LARGE_POOL_SIZE)
    * Java pool (JAVA_POOL_SIZE)
    * Streams pool (STREAMS_POOL_SIZE)
    Ref.:
    1. http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams192.htm
    2. http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14220/memory.htm
    3. Oracle Database 10g: New Features for Administrators - Student Guide
    But in some places I found the following:
    If SGA_TARGET is specified, then the buffer cache (DB_CACHE_SIZE), Java pool (JAVA_POOL_SIZE), large pool (LARGE_POOL_SIZE), and shared pool (SHARED_POOL_SIZE) memory pools are automatically sized.
    Here you can see that Streams Pool is not included in the automatically sized pools.
    Ref.:
    1. http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14211/build_db.htm#sthref252
    Also, according to Oracle Press' Book "OCP Oracle Database 10g: New Features for Administrators Exam Guide:
    Under Automatic Shared Memory Management, the database manages the
    following FOUR major components of the SGA, also known as the auto-tuned SGA
    parameters:
    ■ Buffer cache (DB_CACHE_SIZE)
    ■ Shared pool (SHARED_POOL_SIZE)
    ■ Large pool (LARGE_POOL_SIZE)
    ■ Java pool (JAVA_POOL_SIZE)
    It is important to understand that even under Automatic Shared Memory
    Management, you still need to configure any SGA component other than the four
    auto-tuned components. Following are the manually sized components of the SGA:
    ■ Redo Log Buffer
    ■ The KEEP and RECYCLE buffer caches (if specified)
    ■ The nonstandard block size buffer caches (if specified)
    ■ The new Streams pool SGA component
    ■ The new Oracle Storage Management (OSM) buffer cache, which is meant
    for the optional ASM instance
    Now my question is "IS Streams Pool an auto-tuned SGA parameter?"
    Thanks in advance.
    --Khan.

    Hi,
    I would advise you to read Document I.D. Note:295626.1 on Oracle Metalink.
    It states that
    When enabled, it lets Oracle decide of the right size for some components of the SGA:
    SHARED POOL
    LARGE POOL
    JAVA POOL
    DB CACHE (using the DB_BLOCK_SIZE value)
    The SGA_TARGET value will therefore define the memory size sharable between auto-tuned and manual parameters.
    The manual parameters are:
    DB_<KEEP/RECYCLE>CACHESIZE
    DB_nK_CACHE_SIZE (non default block size)
    LOG_BUFFER
    FIXED SGA
    STREAMS_POOL_SIZE
    Adith

  • Large SGA On Linux and Automatic Shared Memory Management problem

    Hello
    I use Oracle10gR2 in linux 32bit and I use http://www.oracle-base.com/articles/linux/LargeSGAOnLinux.php manual
    for larger SGA it works fine but when I set sga_target parameter for using Automatic Shared Memory Management
    I recieve this error
    ERROR at line 1:
    ORA-02097: parameter cannot be modified because specified value is invalid
    ORA-00824: cannot set sga_target due to existing internal settings, see alert
    log for more information
    and in alert log it has been wrote
    Cannot set sga_target with db_block_buffers set
    my question is when using db_block_buffers can't use Automatic Shared Memory Management ?
    Is any solution for using both Large SGA and Automatic Shared Memory Management ?
    thanks
    Edited by: TakhteJamshid on Feb 14, 2009 3:39 AM

    TakhteJamshid wrote:
    Do it means that when we use large SGA using Automatic Shared Memory Management is impossible ?Yes its true. An attempt to do so will result inthis,
    >
    ORA-00825: cannot set DB_BLOCK_BUFFERS if SGA_TARGET or MEMORY_TARGET is set
    Cause: SGA_TARGET or MEMORY_TARGET set with DB_BLOCK_BUFFERS set.
    Action: Do not set SGA_TARGET, MEMORY_TARGET or use new cache parameters, and do not use DB_BLOCK_BUFFERS which is an old cache parameter.>
    HTH
    Aman....

  • Questions about db_keep_cache_size and Automatic Shared Memory Management

    Hello all,
    I'm coming upon a server that I'm needing to pin a table and some objects in, per the recommendations of an application support call.
    Looking at the database, which is a 5 node RAC cluster (11gr2), I'm looking to see how things are laid out:
    SQL> select name, value, value/1024/1024 value_MB from v$parameter
    2 where name in ('db_cache_size','db_keep_cache_size','db_recycle_cache_size','shared_pool_size','sga_max_size');
    NAME VALUE VALUE_MB
    sga_max_size 1694498816 1616
    shared_pool_size 0 0
    db_cache_size 0 0
    db_keep_cache_size 0 0
    db_recycle_cache_siz 0 0
    e
    Looking at granularity level:
    SQL> select granule_size/value from v$sga_dynamic_components, v$parameter where name = 'db_block_size' and component like 'KEEP%';
    GRANULE_SIZE/VALUE
    2048
    Then....I looked, and I thought this instance was set up with Auto Shared Mem Mgmt....but I see that sga_target size is not set:
    SQL> show parameter sga
    NAME TYPE VALUE
    lock_sga boolean FALSE
    pre_page_sga boolean FALSE
    sga_max_size big integer 1616M
    sga_target big integer 0
    So, I'm wondering first of all...would it be a good idea to switch to Automatic Shared Memory Management? If so, is this as simple as altering system set sga_target =...? Again, this is on a RAC system, is there a different way to do this than on a single instance?
    If that isn't the way to go...let me continue with the table size, etc....
    The table I need to pin is:
    SQL> select sum (blocks) from all_tables where table_name = 'MYTABLE' and owner = 'MYOWNER';
    SUM(BLOCKS)
    4858
    And block size is:
    SQL> show parameter block_size
    NAME TYPE VALUE
    db_block_size integer 8192
    So, the space I'll need in memory for pinning this is:
    4858 * 8192 /1024/1024 = 37.95.......which is well below my granularity mark of 2048
    So, would this be as easy as setting db_keep_cache_size = 2048 with an alter system call? Do I need to set db_cache_size first? What do I set that to?
    Thanks in advance for any suggestions and links to info on this.
    cayenne
    Edited by: cayenne on Mar 27, 2013 10:14 AM
    Edited by: cayenne on Mar 27, 2013 10:15 AM

    JohnWatson wrote:
    This is what you need,alter system set db_keep_cache_size=40M;I do not understand the arithmetic you do here,select granule_size/value from v$sga_dynamic_components, v$parameter where name = 'db_block_size' and component like 'KEEP%';it shows you the number of buffers per granule, which I would not think has any meaning.I'd been looking at some different sites studying this, and what I got from that, was that this granularity gave you the minimum you could set the db_keep_cache_size, that if you tried setting it below this value, it would be bumped up to it, and also, that each bump you gave the keep_cache, would be in increments of the granularity number....?
    Thanks,
    cayenne

  • In 11g, How to Enable Automatic Shared Memory Management (ASMM)

    hi experts,
    I have a new 11.2 g database and I want to configure it to use ASMM.
    To enable ASMM, should I assign a non-zero size to the Memory_Target parameter or the SGA_Target ? I have read conflicting statements.
    Thanks, John

    If you mean Automatic Memory Management, pl see
    http://download.oracle.com/docs/cd/E11882_01/server.112/e10595/memory003.htm#ADMIN11011
    http://download.oracle.com/docs/cd/E11882_01/server.112/e10897/instance.htm#ADMQS12039
    HTH
    Srini

  • Sort Area Size in Automatic memory management

    Hello All
    I am aware that the AREASIZE is ignored of the PGA_AGGREGATE_TARGET is set.
    So how is it possible that if we incrase the SORT_AREA_SIZE, the performance improves?
    does this necessarily mean that the PGA_AGGREGATE_TARGET was not set to a proper value that it instead used the SORT_AREA_SIZE instead?
    thanks

    Hi,
    If you have set workarea_size_policy=auto then under the automatic PGA memory management mode, sizing of work
    areas for all sessions becomes automatic and the AREASIZE parameters are
    ignored by all sessions running in that mode.
    In auto mode if you change any AREASIZE parameters will be ignored.
    If you want to manually handle ARASIZE then turnoff the Automatic pga memory by setting workarea_size_policy=MANUAL and then your changes to parameter will take effect but it's advisable to set pga to automatic.
    To check whether your pga is set proper or not check v$pga_target_advice view
    SELECT round(PGA_TARGET_FOR_ESTIMATE/1024/1024) target_mb,
    ESTD_PGA_CACHE_HIT_PERCENTAGE cache_hit_perc,
    ESTD_OVERALLOC_COUNT
    FROM V$PGA_TARGET_ADVICE;
    This will give you how your pga is set.
    chirag

  • SQL memory manager latch at top of the list

    select * from V$LATCH order by wait_time desc shows wait time = 451524661079 on SQL memory manager latch. What is making this so high?

    user498912 wrote:
    Thank you .. the pointer to the bug is helpful. We are having performance issues and complaints of slowness only during about a 2 or 3 hour window each weekday from about 7AM to 10AM EDT. This is definitely peak load. AWR is showing mostly disk i/o issues. Plan is to add about 20 GB more memory on the server. SGA currently at around 61GB with Automatic Shared Memory Management enabled. PGA advice showing nothing with a Cache Hit Percentage (%) 95.93
    I would look at v$sga_resize_ops (or v$memory_resize_ops) to see if there is pressure to move memory around in that time period. Your symptoms could simply be showing load on the buffer cache causing the library cache to shrink leading to agressive demands for library cache locks etc. If so, then fixing a minum shared_pool_size (or generally going to manual memory management) may be the best bet. Also worth checking if there is some inefficient SQL running at that time that results in lots of random I/O - eliminating the cause of disk reads may be the best solution to reducing demand for memory.
    Regards
    Jonathan Lewis

  • Oracle 11g AMM (Automatic Memory Management)

    Hi All,
    I have a very powerful server 24 Processors with 6 cores each and 74 GB RAM for my production database. The server will host only one production database. I wanted to use AMM for this database and allocate maximum memory to Oracle by setting memory_target. By default /dev/shm is set 37 GB but I wanted to increase it least 55 GB. I know I can get this changed by my system admin but I wanted to know how much memory should leave for OS?
    Please help me on sizing this.
    Thanks,
    Arun Singh

    From MOS ID 169706.1
    Automatic Memory Management
    Starting with Oracle Database 11g, the Automatic Memory Management feature requires more shared memory (/dev/shm) and file descriptors. The shared memory should be sized to be at least the greater of MEMORY_MAX_TARGET and MEMORY_TARGET for each Oracle instance on the computer. To determine the amount of shared memory available, enter the following command: # df -k /dev/shm/
    Note: MEMORY_MAX_TARGET and MEMORY_TARGET cannot be used when LOCK_SGA is enabled or with huge pages on Linux

  • Oracle Automatic Memory Management

    Are there any restrictions or best practices regarding the setting of Oracle Automatic and Manual Memory Management (in particular the setting of these parameters: SGA_TARGET, SGA_MAX_SIZE, MEMORY_TARGET, MEMORY_MAX_TARGET) on various Oracle instances on the same server/node/virtual machine. In other words can the memory management schemes be mixed among various Oracle instances on the same server/node/virtual machine. For example suppose a server houses three Oracle instances - inst01, inst02, inst03. Can inst01 and inst03 use automatic memory management and inst02 use manual memory management. Are there any restrictions or best practices that should be noted? If there are multiple Oracle instances on the same server, is it a requirement that they all follow the same memory management scheme or is it a best practice to do so? Obviously, the total memory requested for the Oracle instances combined would not exceed the total physical memory available on the server.
    Note: we are currently using Oracle 11g R2 specifically 11.2.0.1 on Solaris

    sbing52 wrote:
    Are there any restrictions or best practices regarding the setting of Oracle Automatic and Manual Memory Management (in particular the setting of these parameters: SGA_TARGET, SGA_MAX_SIZE, MEMORY_TARGET, MEMORY_MAX_TARGET) on various Oracle instances on the same server/node/virtual machine. Not really or at least I am not aware of.
    In other words can the memory management schemes be mixed among various Oracle instances on the same server/node/virtual machine. Each instance is going to work individually so the answer is yes .
    For example suppose a server houses three Oracle instances - inst01, inst02, inst03. Can inst01 and inst03 use automatic memory management and inst02 use manual memory management.Yes.
    Are there any restrictions or best practices that should be noted? If there are multiple Oracle instances on the same server, is it a requirement that they all follow the same memory management scheme or is it a best practice to do so?As I said, not that I am aware of. As long as you are able to accommodate the memory requirements under your installed RAM, you should be okay.
    Obviously, the total memory requested for the Oracle instances combined would not exceed the total physical memory available on the server.Yep.
    Note: we are currently using Oracle 11g R2 specifically 11.2.0.1 on SolarisPatch to the latest patchset which is 11203.
    Aman....

  • Question about 11gR2 Grid, RAC, /dev/shm and Automatic Memory Management

    Hello,
    i've recently installed grid and rdbms software 11.2.0.2 on a two node Oracle Linux cluster with 128gb ram each node.
    I'm using ASM to store data and ocr and I'm testing Automatic Memory Management.
    When I finished Grid+RDBMS installation I've seen that /dev/shm size is 64gb (half of my total RAM).
    I've created a database with dbca and when I was asked to choose if I wanted to use AMM I've noticed that I could
    allocate only about 60gb for Oracle. If I chose more than 90gb I got an error saying:
    Using Automatic Memory Management requires 60gb available in my two nodes.
    The current available space in the two nodes is only 30gb and 30gb.
    If you want to use AMM you should either free up some space in /dev/shm
    or reduce the memory allocated to Oracle
    I was wondering when (during the installation or the settings of kernel parameters) did I define the space of /dev/shm ?
    Since I have 128gb of RAM wouldn't it be better to use more than 64gb of ram for my /dev/shm tmpfs partition ?
    Is there a limit or a ratio for best practice for my RAM and the /dev/shm ?
    thanks in advance.

    user9051299 wrote:
    Is the "half of the RAM size" a kernel's default value or Oracle's ? Neither. There are a number of unique factors that determine the best memory size and fit for Oracle - including just how much memory is effectively available (i.e. how much is needed for other services and processes).
    And from what I understand i don't "break" any Oracle's best practice by increasing the /dev/shm right ?Correct. (at least none that I'm aware of, and none that I have read in Oracle's RAC Starter Kit documentation).

  • PGA memory problem - Oracle 10.2.0.4 on windows 2003

    Hi,
    I have recently started work at a new company and we are running Oracle 10g (10.2.0.4, Enterprise Edition) on Windows 2003 (Standard Edition). The server has 4Gb of RAM (and we have modified boot.ini to inclue the /3Gb switch).
    RE: SGA/PGA, we have the following Oracle parameters set:
    sga_target 1G
    pga_aggregate_target 194M
    The employees tell me that they frequently "have to reboot the database" because of ORA-4030 and ORA-4031 problems. Looking at taskmgr on the server, Oracle is using "too much" memory (~3Gb). New sessions cannot connect etc. and they restart the database. Being a DBA (experience in UNIX, not Windows) I'm not so keen on this "solution" and am trying to find out what's happening.
    When this problem occurred yesterday, before allowing the reboot, I bought myself some time to have a little dig around in the database. In v$sesstat I saw one process that had a value of over 1GB for "session pga memory". Memory usage on the server for oracle.exe was (as predicted) ~1GB over the "expected" 1.2Gb value (of SGA+PGA agg target). So, part 1 of my question is:
    - Is this "normal" behaviour for Oracle to allow a process to go so wild on the PGA?
    (I understood that Oracle would attempt to maintain total PGA memory close to the value of PGA_AGGREGATE_TARGET. I believe I read in the documentation that it could allow PGA memory to increase "up to 20% over this value" but please don't quote me on that, I can't find it again..)
    Part 2 to this problem is that sessions "collect" in the database and do not release their PGA memory, leading to the slow build up of memory until the errors are encountered. I believe Dead Connection Detection (DCD) not to be working here (sql_net.expire_time=1 is set on the server but appears to do nothing). I've started reading docs/notes on this and it seems that DCD is not reliable on Windows. Metalink Doc 151972.1 suggests testing and adjusting some underlying TCP/IP serttings in the O/S kernel (I'm not even sure how to do this in Windows yet, let alone if it's something I want to get involved with!). So:
    - I'm wondering if anyone has any tips for this (killing off dead connections, getting DCD working in Windows 2003 etc.)?  Any experiences, tips welcome here!!
    Thanks in advance.
    Regards,
    Ados

    user647632 wrote:
    (By the way, can anyone recommend how to sort the formatting of these results please?!!)You can find all by clicking the Oracle Forum FAQ
    </br>
    Here is my PGASTAT result. Have a look at the values.
    SQL> column name  format a60
    column value format 9,999,999,999,999,999
    select * from gv$pgastat order by inst_id,name;
    SQL> SQL>
       INST_ID NAME                                                                          VALUE UNIT
             1 PGA memory freed back to OS                                         202,362,322,944 bytes
             1 aggregate PGA auto target                                             1,831,209,984 bytes
             1 aggregate PGA target parameter                                        2,147,483,648 bytes
             1 bytes processed                                                     287,247,907,840 bytes
             1 cache hit percentage                                                             68 percent
             1 extra bytes read/written                                            133,790,002,176 bytes
             1 global memory bound                                                     214,743,040 bytes
             1 max processes count                                                              48
             1 maximum PGA allocated                                                 1,708,733,440 bytes
             1 maximum PGA used for auto workareas                                   1,112,871,936 bytes
             1 maximum PGA used for manual workareas                                       271,360 bytes
       INST_ID NAME                                                                          VALUE UNIT
             1 over allocation count                                                             0
             1 process count                                                                    42
             1 recompute count (total)                                                     136,756
             1 total PGA allocated                                                     328,158,208 bytes
             1 total PGA inuse                                                         196,502,528 bytes
             1 total PGA used for auto workareas                                        81,608,704 bytes
             1 total PGA used for manual workareas                                               0 bytes
             1 total freeable PGA memory                                                96,927,744 bytes
    19 rows selected.
    SQL>
    SQL> column BYTES_PROCESSED format 9,999,999,999,999,999
    column EST_RW_EXTRA_BYTES format 9,999,999,999,999,999
    SQL> SQL> select inst_id,round(pga_target_for_estimate/1024/1024) as target_size_MB,
      2                bytes_processed,estd_extra_bytes_rw as est_rw_extra_bytes,
      3                estd_pga_cache_hit_percentage as est_hit_pct,
      4                estd_overalloc_count as est_overalloc
      5  from gv$pga_target_advice  order by inst_id,target_size_mb;
       INST_ID TARGET_SIZE_MB        BYTES_PROCESSED     EST_RW_EXTRA_BYTES EST_HIT_PCT EST_OVERALLOC
             1            256        285,418,388,480        188,648,610,816          60             4
             1            512        285,418,388,480        131,006,145,536          69             0
             1           1024        285,418,388,480         92,476,995,584          76             0
             1           1536        285,418,388,480         91,536,565,248          76             0
             1           2048        285,418,388,480         72,373,725,184          80             0
             1           2458        285,418,388,480         68,650,139,648          81             0
             1           2867        285,418,388,480         68,650,139,648          81             0
             1           3277        285,418,388,480         68,650,139,648          81             0
             1           3686        285,418,388,480         68,650,139,648          81             0
             1           4096        285,418,388,480         68,650,139,648          81             0
             1           6144        285,418,388,480         68,650,139,648          81             0
       INST_ID TARGET_SIZE_MB        BYTES_PROCESSED     EST_RW_EXTRA_BYTES EST_HIT_PCT EST_OVERALLOC
             1           8192        285,418,388,480         68,650,139,648          81             0
             1          12288        285,418,388,480         68,650,139,648          81             0
             1          16384        285,418,388,480         68,650,139,648          81             0
    14 rows selected.
    SQL>
    SQL> show parameters pga
    NAME                                 TYPE        VALUE
    pga_aggregate_target                 big integer 2G
    SQL> show parameters sga_max
    NAME                                 TYPE        VALUE
    sga_max_size                         big integer 2G
    SQL> show parameters sga_target
    NAME                                 TYPE        VALUE
    sga_target                           big integer 2G
    SQL>

  • Managing memory Automatic Memory Management 2

    When MEMORY_MAX_TARGET is >0 and MEMORY_TARGET=0 how is memory managed?

    It is managed as described in the documentation available at http://tahiti.oracle.com for free.
    As there is documentation on-line, please avoid asking to abstract the documentation.
    Your question constitutes a violation of Forum Etiquette.
    Sybrand Bakker
    Senior Oracle DBA

  • Oracle 11g SGA & PGA setup

    Hi I installed oracle 11g & create database , now i want to use fully optimize database.
    Currently my DB server RAM is 16GB, how should i allocate SGA for this.If i used oracle 11g automatic memeory management feature to allocate SGA+PGA, how should i use them.Currentlymy SGA is set to 4GB, Please advise

    Hi,
    It is depends upon the workload which you have in your organization(future and present situation)
    SGA+PGA size will be automatically managed by Oracle. No need to worry about this.
    If you need to increase Memory_Max_Size, you can also increase the Memory size in the future.
    Thanks

  • PGA memory Leak issue along with TNS: listener could not hand off client connection

    Hi,
    We have two Oracle Database instances in a 32 bit Standard Edition Windows OS machine with 3 GB RAM : 1) 1525 MB (SGA+PGA) 2) 515 MB (SGA+PGA)
    Recently we upgraded the RAM from 3 GB to 4 GB. Subsequently we upgraded the SGA + PGA of the 2nd instance to 771 MB.
    This has resulted into PGA memory leak issue reported in the alert log file and trace file.
    Reverting back the SGA+PGA size to 515 MB solved the issue.
    Is this issue related to Address Windowing Extension (AWE)?
    Is the reason related to Total memory for all the cumulative Oracle instance should be < 2GB.
    How to solve this?
    Mon Jul 15 08:21:25 2013
    ORACLE V10.2.0.4.0 - Production vsnsta=0
    vsnsql=14 vsnxtr=3
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    Windows Server 2003 Version V5.2 Service Pack 2
    CPU                 : 4 - type 586, 4 Physical Cores
    Process Affinity    : 0x00000000
    Memory (Avail/Total): Ph:1068M/4023M, Ph+PgF:4985M/7933M, VA:18M/2047M
    Instance name: dp3
    Redo thread mounted by this instance: 0 <none>
    Oracle process number: 0
    Windows thread id: 4484, image: ORACLE.EXE (SHAD)
    *** 2013-07-15 08:21:25.133
    *** ACTION NAME:() 2013-07-15 08:21:25.133
    *** MODULE NAME:() 2013-07-15 08:21:25.133
    *** SERVICE NAME:() 2013-07-15 08:21:25.133
    *** SESSION ID:(90.829) 2013-07-15 08:21:25.133
    ******** ERROR: PGA memory leak detected 6302928 > 30176 ********
    HEAP DUMP heap name="pga heap"  desc=6C98A800
    extent sz=0x206c alt=92 het=32767 rec=0 flg=3 opc=3
    parent=00000000 owner=00000000 nex=00000000 xsz=0x0
    EXTENT 0 addr=7FC10008
      Chunk 7fc10010 sz=    64996    free      "               "
      Chunk 7fc1fdf4 sz=  2097676    freeable  "krfrbAllocate: "
    Dump of memory from 0x7FC1FDF4 to 0x7FE20000
    7FC1FDF0          1020020D 7FC10010 03871E90      [.. .........]
    7FC1FE00 00000000 00000000 00000000 00000000  [................]
      Repeat 131103 times
    EXTENT 1 addr=7FA00008
      Chunk 7fa00010 sz=    64996    free      "               "
      Chunk 7fa0fdf4 sz=  2097676    freeable  "krfrbAllocate: "
    Dump of memory from 0x7FA0FDF4 to 0x7FC10000
    7FA0FDF0          1020020D 7FA00010 03871E90      [.. .........]
    7FA0FE00 00000000 00000000 00000000 00000000  [................]
      Repeat 131103 times
    EXTENT 2 addr=7F7F0008
      Chunk 7f7f0010 sz=    64996    free      "               "
      Chunk 7f7ffdf4 sz=  2097676    freeable  "krfrbAllocate: "
    Dump of memory from 0x7F7FFDF4 to 0x7FA00000
    7F7FFDF0          1020020D 7F7F0010 03871E90      [.. .........]
    7F7FFE00 00000000 00000000 00000000 00000000  [................]
      Repeat 131103 times
    EXTENT 3 addr=70A50008

    There may be something fixed in the patch that gives the error rather than mysterious hangs.  I would prefer that, myself.  There may be something in the patch that changes how Oracle allocates user, system and program areas.
    At some point you spend more trying to limp things along in a growing environment than simply upgrading.  32 bit environments these days is an indicator that management is figuring some false economies.  But that's their prerogative.
    The PGA can be affected by many things, not least of which is how the application uses it.  Much has been written about it, my own experience has been more is used than most people say.  But that is probably just my app.  Note there are different ways to set it, and a parameter with "target" in it might not be a hard limit.  Different execution plans for the same code may use different amounts of memory - there can even be situations where forcing some code to use a sort area instead, or even forcing more operations to disk, can free up more pga for everyone else.  It depends.  But that's why I look at multi-pass operations in dbconsole.

Maybe you are looking for

  • How to add new project developed in visual studio 2012 on tfs 2010

    Hi Friends, our development developed new project in visual studio 2012 . and we need to add it on tfs 2010 version . we added it on existing collection on tfs 2010. but itn't works properly .  i want to know is it possible to add visual studio 2012

  • Bug in copying report with PLSQL region...

    Where can i send about one possible bug...so it should not be public (picture shows sensitive debug infos) ...and it looks enough for finding problems? Scott (I owe you one bug report. here is chance to revanche?) THX! Application Express 2.2.1.00.04

  • UPDATE_DOCINFO service from hcsp

    I am having the following code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <M

  • How to stop and start listener auto. when database is open and shutdown?

    Hi, is there a way, in Window , i can shutdown the listener service when the database is shutdown (the rdbms service still up) and startup the listener when the database is open? Thanks

  • Can a C++ client use Oracle Standard or Oracle Enterprise version?

    Can a C++ client use Oracle Standard or Oracle Enterprise version of Coherence or is the Grid edition required? Please keep in mind that I am only interested in doing what is legal from a licensing standpoint, even if some other options are technical