DBA SGA+PGA Memory Configuration – Oracle EBS SQL Report
Oracle E-Business Suite SQL report from the Enginatics Library powered by Blitz Report™.
Overview
Current SGA and PGA memory configuration in gigabytes.
A frequent configuration problem is not making full use of the available hardware resources, especially the physical RAM of the database server. This report shows the servers SGA, PGA and CPU configuration in comparison to the available hardware. For maximum performance, configure the SGA+PGA to use the full available memory of your server minus a few gig for OS level caching, e.g. for writing and reading of PLSQL output files on the DB node and for process memory (an estimated 4MB per process, see below).
Oracle’s performance tuning guide: https://docs.oracle.com/en/database/oracle/oracle-database/12.2/tgdba/database-memory-allocation.html
Oracle’s exadata best practices whitepaper: SUM of databases (SGA_TARGET + PGA_AGGREGATE_TARGET) + 4 MB * (Maximum PROCESSES) < Physical Memory per Database Node
Tom Kyte’s recommendation: “… if you want it all automatic, give ALL FREE MEMORY on your machine to the SGA and be done with it. No more monitoring, no more thinking about how it could be, should be, would be used. Set the PGA aggregate target and the SGA target to be a tad less than physical memory on the machine and you are done.” https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:30011178429375
The report also shows the status of system statistics. select * from sys.aux_stats$
If CPUSPEEDNW still shows the default of 4096, it either means that the stats have never been gathered or it could also mean that your storage is too fast to gather them with the standard NOWORKLOAD method and you should set reasonable values manually then. exec dbms_stats.gather_system_stats(); exec dbms_stats.set_system_stats(‘IOSEEKTIM’,1); exec dbms_stats.set_system_stats(‘IOTFRSPEED’,85782);
There is also an Exadata mode, considering the faster storage correctly and updating the MBRC too exec dbms_stats.gather_system_stats(‘EXADATA’);
The following command checks if hugepages are configured and how many are in use: grep Huge /proc/meminfo https://access.redhat.com/solutions/320303
To configure hugepages, set the vm.nr_hugepages in the /etc/sysctl.conf file and hard and soft memlock in /etc/security/limits.conf for the oracle user. /etc/sysctl.conf vm.nr_hugepages = SGA GB x 512 + 5 /etc/security/limits.conf oracle soft memlock (SGA GB x 512 + 5) * 2048 oracle hard memlock (SGA GB x 512 + 5) * 2048 https://www.carajandb.com/en/2016/09/22/7-easy-steps-to-configure-hugepages-for-your-oracle-database-server/
Check if all database parameters are set according to Oracle’s requirement: Database Initialization Parameters for Oracle E-Business Suite Release 12 (KA1002) https://support.oracle.com/support/?kmContentId=11158187
To perform this check automatically, install and run Oracle’s ‘Database Performance and Statistics Analyzer’ concurrent program (KB627702) https://support.oracle.com/rs?type=doc&id=2126712
Report Parameters
Container Data
Oracle EBS Tables Used
dba_hist_snapshot, dba_hist_sqlstat, dba_hist_sqltext, gv$osstat, gv$system_parameter, gv$sgainfo, gv$instance, dba_hist_pgastat, dhss, aux_stats$, v$parameter, dba_feature_usage_statistics, v$database, dba_editions, dba_tablespace_usage_metrics
Report Categories
Related Reports
DBA AWR SQL Performance Summary, DBA AWR System Metrics Summary, DBA AWR Active Session History, DBA AWR Blocking Session Summary, DBA AWR Settings, DBA AWR PGA History, DBA AWR Interconnect Traffic, DBA AWR Wait Event Summary, DBA AWR Wait Class by Time
Running This SQL Without Blitz Report
Some Oracle EBS SQL reports in this library require functions from the utility package xxen_util. Install it before running the SQL directly against your Oracle EBS database.
Download & Import Options
| Resource | Link |
|---|---|
| Excel Example Output | DBA SGA+PGA Memory Configuration 29-Jul-2018 103004.xlsx |
| Blitz Report™ XML Import | DBA_SGA_PGA_Memory_Configuration.xml |
| Full SQL on Enginatics | www.enginatics.com/reports/dba-sga-pga-memory-configuration/ |
Case Study & Technical Analysis
Abstract
The DBA SGA+PGA Memory Configuration report is a comprehensive audit of the database server’s memory architecture. It compares the Oracle instance configuration (SGA_TARGET, PGA_AGGREGATE_TARGET) against the physical hardware resources to ensure optimal utilization. It also validates critical system statistics that influence the Cost-Based Optimizer (CBO).
Technical Analysis
Core Checks
- Memory Utilization: Calculates the total potential memory footprint (SGA + PGA + Process Overhead) and compares it to the server’s physical RAM.
- System Statistics: Checks
SYS.AUX_STATS$forCPUSPEEDNW,IOSEEKTIM, andIOTFRSPEED. Default values (like 4096 for CPU speed) indicate that system stats have not been gathered, potentially leading the CBO to make suboptimal plan choices. - HugePages: (Contextual) The description emphasizes the importance of HugePages for large SGAs to reduce page table overhead.
Best Practices
- Sizing: The sum of SGA and PGA should generally consume most of the available RAM on a dedicated database server, leaving a safety margin for the OS.
- Exadata: Specific checks for Exadata-optimized system statistics.
Key Views
V$PARAMETER: For memory settings.SYS.AUX_STATS$: For optimizer system statistics.
Operational Use Cases
- Health Check: Standard validation for new deployments.
- Performance Tuning: Ensuring the CBO has accurate information about the hardware’s I/O and CPU capabilities.
- Cost Optimization: Verifying that expensive RAM hardware is actually being allocated to the database instance.
Useful Links
- Blitz Report™ – World’s Fastest Oracle EBS Reporting Tool
- Oracle Discoverer Replacement – Import Worksheets into Blitz Report™
- Oracle EBS Reporting Toolkits by Blitz Report™
- Blitz Report™ FAQ & Community Q&A
- Supply Chain Hub by Blitz Report™
- Blitz Report™ Customer Case Studies
- Oracle EBS Reporting Blog
- Oracle EBS Reporting Resource Centre
© 2026 Enginatics