Timesten - (Large|Huge) Pages Configuration

> Database > (TimesTen|TT) (In-Memory Database|IMDB)

1 - About

If a TimesTen database larger than 256GB is required, then you must configure Timesten in order to use large pages.

Depending upon the Operating System you are using, you should look into enabling large page support:

3 - Steps

3.1 - Number of large pages

Increasing large page settings for more memory will result in other applications (such as Oracle BI EE, Oracle Essbase) unable to allocate memory. Exceeding more than 80% of the total physical memory is not recommended.

Database shared memory calculation is:

(PermSize + TempSize + LogBufMB + 20) / hugepage_size 

Example of large pages calculation for a 800GB Database:

  • with a Permsize and a TempSize of 400Gb
  • a Log Bufffer of 20 Mb
  • and an hugepagesize of 2Mb (cat /proc/meminfo|grep Hugepagesize)
(400Gb) + (400Gb) + (1Gb) + (20Mb) = 860088172544 bit / 2 Mb = 410122 pages

With this calculation, you must the set the nr_hugepages attribute in the /etc/sysctl.conf file with the following value:

vm.nr_hugepages = 410200

and then run the following command as the root user:

/sbin/sysctl –p
Advertising

3.2 - ttendaemon.options

On Linux, to enable large page support on TimesTen, add the following line in the TimesTen daemon options (ttendaemon.options) file:

-linuxLargePageAlignment <Size_in_MB>

where the <Size_in_MB> is the Hugepagesize value in /proc/meminfo, specified in MB instead of KB.

Example:

cat /proc/meminfo|grep Hugepagesize
Hugepagesize:       2048 kB

We have then 2042 / 1024 = 2 Mb.

In the TimesTen daemon options (ttendaemon.options), you will add the following line:

-linuxLargePageAlignment 2

4 - Support

4.1 - Cannot create data store shared-memory segment

836: Cannot create data store shared-memory segment, error 22
703: Subdaemon connect to data store failed with error TT836
The command failed.
Done.

Did you reach the maximum of 256 Gb ? Then you must configure large page.

Advertising

5 - Documentation / Reference

db/timesten/huge_page.txt · Last modified: 2018/09/16 12:42 by gerardnico