Red Hat Directory Server 7.1 Performance Tuning and Sizing Guidelines

Server: Montecito-based 8 CPUs @1.6 GHz

#of entries: 250K

RHDS parameter settings: set cachememsize big enough to cache all the entries. dbcachesize is tuned as shown in Table 3, nsslapd-threadnumberis set to 6

dbcachesize

DirMark Exact Search

 

Performance

500,000

12155.43

1,000,000

12400.40

1,500,000

12412.60

2,000,000

12446.90

4,000,000

12670.00

10,000,000

12935.50

50,000,000

12962.33

100,000,000

13117.60

200,000,000

13013.47

300,000,000

12986.17

400,000,000

13033.00

Table 3: RHDS7.1 performance difference based on different nsslapd-dbcachesize.

Because there is no particular method to determine how big the dbcache is at any given time, data shown in Table 3 is collected based on the full entry cache and different settings of dbcachesize starting from the minimum value of 500,000. When dbcachesize is set to 300,000,000, dbcachehitratio is very close to 100%, thus we can assume that the dbcache is big enough to hold all the pages. Please note, as dbcachesize increases from 500,000 to 300,000,000 the search throughput only increased 6.8% in our Montecito-based test bed with RHDS 7.1. Comparing to entrycache size optimization, the size change with dbcache is insignificant. As entrycache size increases from 0% to 100%, the throughput increased about 66%. (As shown Table 4). Thus it appears that entrycache has more impact on performance than dbcache. In the performance test, the entries in the LDAP database are accessed uniformly throughout the test. This characteristic means that increasing the entrycache size will provide the most performance improvement for the test. However, in practical applications, this may not always hold true. If a small subset of all the entries tends to be accessed much more frequently than the rest, then priority to the dbcache instead of the entrycache can be given if memory constraints require a tradeoff.

Data collection 4: (Different entrycache setting)

This set of data is collected to help us understand how entrycache affects the performance.

Server: Montecito-based test configuration 8 CPUs @1.6GHz

#of entries: 250K

RHDS parameter settings: set dbcachesize big enough to cache all the pages. cachesize is tuned as shown in Table 4, cachememsize is tuned big enough to cache all the entries, nsslapd-threadnumber is set to 6

% of total database entries

DirMark Exact Search Performance

(nsslapd-cachesize)

 

0% of total entries

7853.53

20% of total entries

7005.90

40% of total entries

7831.47

60% of total entries

9316.37

80% of total entries

11112.33

100% of total entries

13017.20

Table 4: RHDS7.1 performance difference based on different nsslapd-cachesizesettings.

Page 13