Dear community members,
I am wondering about a strange inconsistency in the memory figures reported by Oracle (12c, Standard Edition) and the operating system (Windows Server 2012R2 on VMWare ESXi 6.0). Oracle has a memory_target of "62G", a max_memory_target of "62G", V$SGA reports 62G used, and the "total PGA allocated" stat is about 1.2GB. STATSPACK reports the same figures. The server itself has 64GB memory installed, so that seems about fine.
Strangely, Windows Task Manager reports only 30,7 GB used (Committed bytes). For ORACLE.EXE, it shows 28,442,676K for Private Working Set and 29.318.208K for Commit Size. The total Virtual Memory Size (RAM + page file) is 73,5GB.
I am wondering where Oracle is hiding the additional 34GB of memory that are not used according to the Operating System. The database is running with good performance, and also STATSPACK is not showing any unexplained waits, so there is not immediate problem. However, if Oracle somehow misinterprets its own memory usage, that may degrade efficiency of the cache if the database load increases.
Did anyone encounter similar behaviour?
I am running Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production with "WINDOWS DB BUNDLE PATCH 12.1.0.2.161018(64bit):24591642" on Windows Server 2012R2 (VMWare ESXi 6.0).
Contents of V$SGA is:
select name, Value, Round(Value / 1024 / 1024) AS value_mb from v$sga;
NAME VALUE VALUE_MB
Fixed Size 3065424 3
Variable Size 47915731376 45696
Database Buffers 18522046464 17664
Redo Buffers 131149824 125