Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

In Windows, is the ORACLE.exe process the SGA+PGA?

2734369Oct 3 2014 — edited Oct 9 2014

In Windows, i the ORACLE.exe process (which you can see in the Processes tab of the Task Mgr) the Total SGA + PGA??

I have a 12c Enterprise DB. The Oracle.exe (Oracle  RDBMS Kernal Executable) is taking 1.1 GB. It showthe memory (Private working set) in the column.

I do this: I disable automatica memory mgt. (AMM) By doing this:

 

Instead of AMM, now we give fixed sizes to the SGA and PGA.

  1ST DISABLE AMM.

  SQL> SHOW PARAMETER memory_target

NAME                                 TYPE        VALUE

  ------------------------------------ ----------- ------------------------------

  memory_target                        big integer 1600M

 

SQL> ALTER SYSTEM SET memory_target=0 SCOPE=SPFILE;

  

System altered.

  

SQL> show parameter memory_target

  

NAME                                 TYPE        VALUE

  ------------------------------------ ----------- ------------------------------

  memory_target                        big integer 1600M

 

SQL> PROMPT "Now give our fixed low values for PGA + SGA"

 

"Now give our fixed low values for PGA + SGA"

 

SQL> ALTER SYSTEM SET pga_aggregate_target=350m SCOPE=SPFILE;

  System altered.

SQL> ALTER SYSTEM SET sga_target=350m SCOPE=SPFILE;

  System altered.

SQL>

Now, restart the service,    Windows service isrestarting…………….   

DB is started now.

Now the Oracle.exe process is only taking 500MB.

Does this mean that the Oracle.exe is the actual SGA + PGA?

ALSO, why is it not 700mb, since we set both PGA + SGA TO fixed values? Is It because PGA memory is allocated only when sessions connect and exeute SQL?

What is the actual SGA + PGA SIZES? 

SQL> SELECT 'total_PGA_MB = ' ||
ROUND(SUM(value)/(1024*1024))

    2  FROM v$sesstat NATURAL JOIN v$statname

    3  WHERE LOWER(name) = 'session pga memory'

    4  UNION

    5  SELECT 'SGA_Size_MB = ' ||
ROUND(SUM(bytes)/(1024*1024))

  6  FROM v$sgastat;

 

'TOTAL_PGA_MB='||ROUND(SUM(VALUE)/(1024*1024))

-------------------------------------------------------

  SGA_Size_MB = 350

  total_PGA_MB = 53

 

Oracle.exe process memory size is 507MB.

WHAT IS THE connection between Oracle.exe and SGA + PGA????

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Nov 6 2014
Added on Oct 3 2014
5 comments
1,724 views