dnlcmon - a free DNLC monitor for Solaris SPARC


Hi, BigAdmin people! dnlcmon is freeware. It lets you see the values related to the DNLC (Directory Name Lookup Cache) and how it is being used by Solaris SPARC. This utility is a spinoff from our development of SarCheck for Solaris SPARC, and we're providing it for free as a way of thanking the Solaris community for the success of SarCheck. The default output of dnlcmon looks like this:

dnlchits= 76829 dnlcmisses= 5488 dnlchitpct= 93.3 cachefree= 228 lotsfree= 114 numcpus= 1 actvcpus= 1 for info: dnlcmon -help

You can timestamp the output and get rid of the message at the end with the -q and -t switches, and you'll get this:

11:55:50 dnlchits= 76933 dnlcmisses= 5489 dnlchitpct= 93.3 cachefree= 228 lotsfree= 114 numcpus= 1 actvcpus= 1

More information about switches can be found in the usage text. This page contains the usage text, license text, information on how to interpret dnlcmon's output, and finally, a downloadable copy of dnlcmon.

requirements

Resource utilization is trivial but you do need to be root to run dnlcmon. There are separate 32-bit and 64-bit binaries. CPU utilization should still be a small fraction of a second of one processor's time.

usage text

usage:  dnlcmon [-q] [-t] [-license]

-q         don't append messages to the end of the output line

-t         precede the output with a timestamp

-license   send the license agreement to stdout

This program sends the values of various kstat & sysconf data to stdout
in a parsable format.  Any invalid argument or incorrect number of
arguments will cause this usage text to display instead of the expected
data.  This program was designed to gather data from the kstat interface
and make it available for use by human performance analysts or by our
SarCheck performance analysis utility.  More information about SarCheck
can be found at www.sarcheck.com

Please take a look at the license agreement for this program.  It's free
to use and distribute, and the details can be seen by using the -license
switch, ideally piped to more because it's about 70 lines long.  We hope
that it helps you to better understand the way your system uses memory.

Copyright 2002-2004 by Aptitune Corporation, Plaistow NH USA
http://www.aptitune.com/
http://www.aptitune.co.uk/
http://www.sarcheck.com/

license text

Aptitune Corporation
PO Box 1033, Plaistow NH 03865 USA
email: sales@sarcheck.com
Phone: 1-603-382-4200; Fax: 1-603-382-4247
http://www.sarcheck.com

FREE SOFTWARE LICENSE AGREEMENT
TERMS AND CONDITIONS


CAREFULLY READ ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT.  
USING THIS PROGRAM CONSTITUTES YOUR ACCEPTANCE OF THESE TERMS 
AND CONDITIONS.

If you do not agree to the following terms and conditions, no 
license is granted hereunder and you are not authorized to use 
Aptitune Corporation's dnlcmon program.

1.  LICENSE: Aptitune grants to you a royalty-free, worldwide, 
perpetual, right and license to use the Program, including the 
right to make copies of the Program.  YOU MAY NOT DECOMPILE, 
REVERSE ENGINEER, OR OTHERWISE DISASSEMBLE OR MODIFY THE 
PROGRAM OR ANY PART THEREOF.

2.  In the event that you copy or transfer the Program, you 
agree to reproduce the Program in its entirety, including the 
copyright notice.

3.  TERMINATION: This license will terminate immediately and 
without notice upon your failure to comply with any term or 
condition of this Agreement.  You agree, upon such 
termination, to destroy all copies of the Program.

4.  NO WARRANTY: THE PROGRAM IS PROVIDED TO YOU FREE OF 
CHARGE AND FOR NO CONSIDERATION AND APTITUNE DISCLAIMS ALL 
WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING WITHOUT 
LIMITATION, ANY WARRANTIES AS TO THE SUITABILITY OF THE 
PROGRAM FOR YOUR PURPOSES, MERCHANTABILITY, OR FITNESS FOR A 
PARTICULAR PURPOSE.  IN NO EVENT SHALL APTITUNE BE LIABLE FOR 
ANY DAMAGES WHATSOEVER, INCLUDING LOSS OF ANTICIPATED 
PROFITS, OR ANY DIRECT, INCIDENTAL, EXEMPLARY, SPECIAL, OR 
CONSEQUENTIAL DAMAGES.  THE PROGRAM IS PROVIDED TO YOU "AS IS,
WHERE IS", AND WITH ALL FAULTS AND WITHOUT ANY WARRANTIES OF 
ANY KIND.

5.  INDEMNIFICATION BY LICENSEE: You agree to indemnify 
Aptitune from, and hold Aptitune harmless against, any claim 
or action by any third party arising out of or related to your
operation or use of the Program, provided that such 
indemnification shall not apply to any claim or action by any 
third party alleging that the Program, as supplied to you by 
Aptitune, infringes the proprietary rights of any third party.

6.  CHOICE OF LAW: This license shall be governed and 
construed in accordance with the laws of the State of New 
Hampshire, without giving effect to its conflicts of laws 
principles, and the Courts of which shall have exclusive 
jurisdiction over any dispute arising hereunder

7.  ACKNOWLEDGMENT: YOU ACKNOWLEDGE THAT YOU HAVE READ THIS 
AGREEMENT, UNDERSTAND IT, AND AGREE TO BE BOUND BY ITS TERMS 
AND CONDITIONS.  YOU ALSO AGREE THAT THIS AGREEMENT IS THE 
COMPLETE AND EXCLUSIVE STATEMENT OF AGREEMENT BETWEEN THE 
PARTIES AND SUPERSEDES ALL PRIOR PROPOSALS, AGREEMENTS, OR 
UNDERSTANDINGS, WRITTEN OR ORAL, WITH RESPECT TO THE SUBJECT 
MATTER OF THIS AGREEMENT.

Should you have any questions concerning this Agreement, 
please contact in writing Aptitune Corporation, PO Box 1033, 
Plaistow NH 03865 USA

Here is dnlcmon. For MSIE, use the right mouse button to click on one of the following links for either version:

and select "Save Target As". For other browsers, check the documentation. If you're FTPing this file and there's a PC involved, be sure that the PC knows that this file is binary and not text.

We hope that you'll find dnlcmon to be a useful tool and we encourage you to distribute it throughout the Solaris community. And of course, we hope you'll request an evaluation copy of SarCheck for Solaris SPARC if you want to see what we really do and why we built dnlcmon.

Interpreting dnlcmon's output
Here are descriptions of the parameters reported by dnlcmon:

The dnlchits and dnlcmisses fields are just counters. You'll have to calculate the number of hits and/or misses per second for yourself. If the size of free memory is usually less than the value of lotsfree or the scan rate frequently is >0, the system may need more memory. Not all versions of the operating system have a cachefree parameter. The numcpus and actvcpus fields don't have anything to do with the DNLC, they're used by SarCheck for other monitoring purposes.

Signs that the DNLC is too small:

  1. The DNLC hit percent is below 90%.
  2. DNLC misses are very high (> 50/sec)

Signs that the DNLC is too big (hint - adding memory is usually the real answer):

  1. The system is memory-poor and the DNLC percentage is greater than 97 percent.
  2. The system is memory-poor and the number of DNLC misses per second is less than 10.

Go to the SarCheck home page

Copyright © 1996-2005 Aptitune Corporation, All rights reserved.
Information in this document is subject to change without notice.
Other products and companies referred to herein are trademarks or registered trademarks of their respective companies or mark holders.
This information is correct as of May 13, 2005.