3.3 Memory Subsystem

Server applications can perform significantly better when RAM is increased. Caching the eDirectory database in the filesystem or in the FLAIM cache can lead to improved performances of search and modify operations. However, you cannot cache the complete DIB in large deployments. Avoid page swapping even if it means reducing the FLAIM entry and block cache sizes. Use the vmstat tool to find more information on the memory subsystem.

As eDirectory uses memory, each thread from the thread pool uses 1 MB of RAM for its stack. By default, the FLAIM cache size is set to 200 MB.

Several loadable modules are started when eDirectory starts, but the loadable module architecture of eDirectory allows you to reduce the memory footprint of the process by not loading the unused modules (for example, SecretStore, LDAP, or eMBox). In addition, products like IDM have some modules that run inside eDirectory.

The memory used by eDirectory might appear to be growing. Although memory is freed by an eDirectory process, it might not be released to the system free pool because the memory manager used internally by eDirectory tries to optimize the memory allocations for future. This is one of the reasons for not recommending FLAIM dynamic configuration. Use the Top tool to find the approximate virtual memory size of the ndsd process in your deployment.

The maximum memory that can be allocated to a process is limited in several ways. A certain amount of RAM is used by the operating system and other processes on the system. The operating system can impose limitations on physical RAM that a process uses.