I've heard that it is recommended to use huge pages for the memory used by a TimesTen database. Is that correct? If so how do I configure the OS and TimesTen to ensure that it uses huge pages?
Should I use huge pages for my TimesTen database, and if so how do I configure that?
115 Views Asked by AudioBubble At
1
There are 1 best solutions below
Related Questions in MEMORY
- 9 Digit Addresses in Hexadecimal System in MacOS
- Memory location changing from 0 to 1 consistently on Mac
- Would event listeners prevent garbage collecting objects referenced in outer function scopes?
- tensorrt inference problem: CPU memory leak
- How to estimate the memory size of a binary voxelized geometry?
- Java Memory UTF-16 Vs UTF-8
- Spring Boot application container memory footprint (Java 21)
- Low memory Windows CE
- How to throw an error when a program acesses a block of memory created by you that has been deallocated by a call of free?
- Golang bufio.Scanner: token too long
- Get the address and size of a loaded shared object on memory from C
- In Redis Databases how do we need to calculate the table size
- ClickHouse Materialized View consuming a lot of Memory and CPU
- How to reduce memory usage for large matrix calculations?
- How to use memray with Gunicorn or flask dev server?
Related Questions in HUGE-PAGES
- unable to allocate hugepages for an application, rocky linux 9
- Failing to configure hugepages on openshift 4.13 via Cluster Node Tuning Operator
- How to get the physical address in 2MB/1GB Hugepages?
- Transparent hugepages not working with madvise
- Running nitro enclaves and on Amazon EKS and getting Insufficient hugepages-2Mi on pods
- How to make jemalloc to use transparent huge pages?
- How to set the Linux kernel to use transparent huge pages of 1GB page size?
- postgresql-14 with huge_pages won't start
- How to enable hugepages on eks cluster?
- How can I benchmark rust's stdlib Map with/without 2MiB huge pages?
- file backed mmap with huge page?
- Data for the City State and Countries of whole world in CSV data
- Do hugepages guarantee a single tlb entry in the kernel driver when allocated with alloc_pages(GFP_KERNEL | __GFP_COMP)?
- How to read /proc/<pid>/pagemap in a kernel driver?
- openstack using hugepages for instance
Related Questions in TIMESTEN
- Create Clob object from string and list and store into oracle timesten database
- DataGrip (Idea DB plugin) extremely slow fetching
- How to get full outer join in TimesTen
- TimesTen difference between two timestamps
- TimesTen JDBC URL format without DSN
- How do I select row with maximum value of some column
- Running a TimesTen query from a Python script works fine. When I put it in my crontab, it doesn't work as expected
- java.sql.SQLException: Problems with loading native library/missing methods: no ttJdbc181 in java.library.path
- Does TimesTen support high availability? If so, how do I configure it?
- How do I decide where I should locate my TimesTen database files?
- Is it okay if I store database files and other user created files within a TimesTen instance tree?
- Should I use huge pages for my TimesTen database, and if so how do I configure that?
- How to size memory required for TimesTen In-memory Database?
- Installation and Configuration
- Oracle TimesTen Installation and Configuration
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Using huge pages is beneficial if you have a large database and is mandatory if your database will be >= 256 GB in size. You should use explicitly configured huge pages not transparent huge pages. In order to configure the OS suitable you need to:
Determine how many huge pages you need in total (sum of all concurrently active databases). For each database determine the size of the database shared memory segment, divide by the system huge page size (default is 2 MB) and round up. Sum these values to get the number of huge pages. It is vital that you leave enough memory not assigned to huge pages for all other activity on the system.
Edit the file /etc/sysctl.conf and add (or modify) the line
vm.nr_hugepages = N
where N is the value you have determined.
vm.hugetlb_shm_group = timesten_instance_admin_gid
where timesten_instance_admin_gid is the numeric group id of the user who is the TimesTen instance administrator.
Make sure that the TimesTen instance administrator user is allowed to lock enough memory (huge pages are always locked). Normally this is done via entries in /etc/security/limits.conf (memlock parameters) but if you are running the TimesTen daemon under systemd then you need to consult the relevant documentation for how to apply the settings in that environment.
If you had to make any of the changes above, restart your system.
Check that the expected number of huge pages are now configured and available (cat /proc/meminfo).
TimesTen 18.1 and newer will automatically try to use huge pages when creating a database memory segment. If the attempt fails then it will try to fall back to using regular memory instead. So no special configuration is needed on the TimesTen side.