SUMMARY: DNLC hit rate

From: Peter Schauss x 2014 (
Date: Thu Feb 05 1998 - 10:39:35 CST

Original message was:

Environment: Solaris 2.4 on a SPARC 20.

I am using the 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?


From: Nicholas Masika <>

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

From: Igor Schein <>

vmstat -s

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

From: Seela Balkissoon <>

  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

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
Gull Electronic Systems Division
Parker Hannifin Corporation
Smithtown, NY

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:12:30 CDT