RE: RAC install on Linux

From: Hameed, Amir <Amir.Hameed_at_xerox.com>
Date: Thu, 22 Feb 2018 20:05:43 +0000
Message-ID: <MWHPR1101MB2352AD6E70E82AB9AE40007DF4CD0_at_MWHPR1101MB2352.namprd11.prod.outlook.com>


In those VM shops where memory is over-subscribed, how do Huge Pages work in terms of locking memory pages so that they cannot be swapped?

Thanks
-----Original Message-----
From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Stefan Koehler Sent: Thursday, February 22, 2018 5:21 AM To: neil_chandler_at_hotmail.com
Cc: Oracle-L Freelists <oracle-l_at_freelists.org> Subject: Re: RAC install on Linux

Hello Neil,

> You also have contiguous memory allocation and it can’t be swapped.

Hugepages can also be non-contiguous aka. fragmented - called external fragmentation (https://lwn.net/Articles/376606/). AFAIK this is also the reason why Oracle has implemented enhancement request #14500387 and you get an "ORA-27107: AUTO value for USE_LARGE_PAGES parameter is no longer supported" (https://docs.oracle.com/database/121/ERRMG/ORA-24280.htm#GUID-7B2814DB-F946-4EB1-80B5-219B256E90C0__GUID-E1254AED-AB39-4D52-97E2-5D6011E161E7) nowadays for dynamic huge pages allocation via oradism.

Best Regards
Stefan Koehler

Independent Oracle performance consultant and researcher Website: http://www.soocs.de
Twitter: _at_OracleSK

> Neil Chandler <neil_chandler_at_hotmail.com> hat am 22. Februar 2018 um 09:47 geschrieben:
>
> Transparent Hugepages should be disabled, to prevent the Kernel “helping you out” and causing CPU spikes and unpredictable performance hits.
>  
> You should always be using Hugepages. 
>  
> They give a minor performance improvement and a significant memory saving in terms of the amount of memory needed to handle the pages - less Transaction Lookaside Buffers, which also means less TLB misses (which are expensive). 
>  
> You are handling the memory chopped up into 2MB pieces instead of 4K. But you also have a single shared memory TLB for Hugepages.
>  
> The kernel has less work to do, bookkeeping fewer pointers in the TLB.
>  
> You also have contiguous memory allocation and it can’t be swapped.
>  
> If you are having problems with Hugepages, you have probably overallocated them (I’ve seen this several times at clients so it’s not uncommon). Hugepages can *only* by used for your SGA’s. All of your SGA’s should fit into the Hugepages and that should generally be no more than about 60% of the total server memory (but there are exceptions), leaving plenty of “normal” memory  (small pages) for PGA , O/S and other stuff like monitoring agendas.
>  
> As an added bonus, AMM can’t use Hugepages, so your are forced to use ASMM. AMM doesn’t work well and has been kind-of deprecated by oracle anyway - dbca won’t let you setup AMM if the server has more than 4GB of memory.
>
> Neil.
> sent from my phone
--
http://www.freelists.org/webpage/oracle-l

i0zX+n{+i^ Received on Thu Feb 22 2018 - 21:05:43 CET

Original text of this message