SUMMARY: DNLC hit rate

Peter Schauss x 2014 (ps4330@okc01.jccbi.gov)
Thu, 05 Feb 1998 11:39:35 -0500

Original message was:

Environment: Solaris 2.4 on a SPARC 20.

I am using the zoom.se utility from the RICHPse package. I am
getting a warning about my DNLC hit rate with the suggestion
that I increase my ncsize parameter.

How can I tell what the current, persumably default, value for
this parameter is and what should I set it to? This parameter is
not listed in the output of sysdef.

Where is this information documented?

-------------------------------------------------------------------------
Responses:

From: Nicholas Masika <masika@best.com>

You can get it from the output of vmstat -s; look for 'total name lookups'.

From: Igor Schein <igor@andrew.air-boston.com>

vmstat -s

or, search for vmstat in Sun Manager Archive, there's an summary there on
an alternative way.

From: Seela Balkissoon <seela@cs.yorku.ca>

Using adb -kw /dev/ksyms /dev/mem
ncsize/D - will display what it's currently set as
To write dynamically
adb -kw /dev/ksyms /dev/mem
ncsize/W..... where .... is the value you want ot set it as
please note adb -kw indicates you can write

Peter I forgot to mention that to put the change in place permanently
you must modify the /etc/system file and add entry here before reboot
set ncsize=value

ncsize Number of dnlc entries.
(default = max_procs + 16 + maxusers + 64);
dnlc is the directory-name lookup cache

do the following steps to findout exact DNLC usage
- Become superuser
>
> - #adb -k /dev/ksyms /dev/mem
>
> - ncstats/D <hit enter key>
>

> This will print the cache hit value. Note down on paper
>
> - (ncstats+0x4)/D <hit enter key>
>
> This will print the cache miss value. Write down on paper
>
> - $q <This will quiit adb session >
>
> - using following formula calculate DLNC hit ratio
>
> DNLC cache hit ratio = 100 - (misses*100)/(hits+misses)

> - Now run vmstat -s and look for DNLC value.
>

=====================================================================

Combining all of the above notes and some of my own observations:

1. vmstat -s appears to give me the same information, although
in somewhat less obvious format than zoom.

2. Using adb I was able to read the current value for ncsize
(2215).

3. Also using adb I found the value of ncstats to be
-1971438215. Is it possible that the counter has "rolled over" and
is confusing zoom?

4. The Solaris Answerbook says that ncsize is normally computed from
maxusers. The implication is that if ncsize is too small I should
bump up maxusers. Most likely, this is the approach that I will use.

Thanks to everyone who replied.

Peter Schauss
ps4330@okc01.jccbi.gov
Gull Electronic Systems Division
Parker Hannifin Corporation
Smithtown, NY