NAME

       pmnscomp  - compile an ASCII performance metrics namespace
       into binary format.


SYNOPSIS

       pmnscomp [-d] [-f] [-n namespace] [-v version] outfile


DESCRIPTION

       pmnscomp compiles a Performance Metrics Name Space  (PMNS)
       in  ASCII  format into a more efficient binary representa­
       tion.  pmLoadNameSpace(3) is able to load this binary rep­
       resentation significantly faster than the equivalent ASCII
       representation.

       If outfile already exists pmnscomp will exit without over­
       writing it.

       By  convention, the name of the compiled namespace is that
       of the  root  file  of  the  ASCII  namespace,  with  .bin
       appended.   For example, the root of the default PMNS is a
       file named root and the compiled  version  of  the  entire
       namespace is root.bin.

       The options are;

       -d   By  default  the  PMNS  to be compiled is expected to
            contain at most one name for each unique  Performance
            Metric   Id  (PMID).   The  -d  option  relaxes  this
            restriction and allows the compilation of a  PMNS  in
            which  multiple names may be associated with a single
            PMID.  Duplicate names are useful when  a  particular
            metric may be logically associated with more than one
            group of related metrics, or when it  is  desired  to
            create  abbreviated  aliases  to  name  a set of fre­
            quently used metrics.

       -f   Force  overwriting  of  an  existing  outfile  if  it
            already exists.

       -n   Normally  pmnscomp operates on the default PMNS, how­
            ever if the -n option  is  specified  an  alternative
            namespace is loaded from the file namespace.

       -v   By  default,  pmnscomp  writes  a  version 0 compiled
            namespace, which is compatible with versions  of  PCP
            before  PCP2.0.   If  version is 1 then pmnscomp will
            write a version 1 namespace which is compatible  with
            PCP2.0  or later.  Note that PCP version 2.0 or later
            can handle both versions but PCP  versions  prior  to
            PCP  2.0  can  only  handle version 0 compiled names­
            paces.

       $PCP_VAR_DIR/pmns/root  unless  the  environment  variable
       PMNS_DEFAULT is set, in which case the value is assumed to
       be  the  pathname to the file containing the default input
       PMNS.


CAVEAT

       Once the writing of the new outfile has begun, the signals
       SIGINT,  SIGHUP and SIGTERM will be ignored to protect the
       integrity of the new file.


FILES

       $PCP_VAR_DIR/pmns/*
                 default PMNS specification files
       $PCP_VAR_DIR/pmns/root.bin
                 compiled version of the default PMNS,  when  the
                 environment variable PMNS_DEFAULT is unset
       $PCP_VAR_DIR/pmns/stdpmid
                 some standard macros for PMID generation


PCP ENVIRONMENT

       Environment  variables  with  the  prefix PCP_ are used to
       parameterize the file and directory names used by PCP.  On
       each  installation,  the  file  /etc/pcp.conf contains the
       local values for these variables.  The $PCP_CONF  variable
       may  be used to specify an alternative configuration file,
       as described in pcp.conf(4).


SEE ALSO

       pmnsadd(1), pmnsdel(1),  pmnsmerge(1),  PMAPI(3),  pmLoad­
       NameSpace(3), pcp.conf(4), pcp.env(4) and pmns(4).


DIAGNOSTICS

       Cannot  open  ``xyz''  -  the filename for the root of the
       PMNS that was passed to pmLoadNameSpace(3) is bogus.

       Illegal PMID - either one of  the  three  PMID  components
       (see  pmns(4))  is not an integer, or the value for one of
       the components is negative, or too large.

       Expected ... - specific syntax errors  when  a  particular
       type  of  lexical  symbol  was expected and not found; the
       messages are intended to be self-explanatory.

       Internal botch - implementation problem for the parser ...

       Duplicate  name  ``abc''  in subtree for ``pqr.xyz'' - for
       each non-leaf node, the names of all immediate descendents
       must be unique.

       No  name  space  entry for ``root'' - the special non-leaf
       node with a pathname of ``root'' defines the root  of  the
       PMNS, and must appear somewhere in the PMNS specification.

       ``root'' node does not make sense!

       Disconnected subtree (``abc.xyz.def'') in name space - the
       pathname for this non-leaf node does not correspond to any
       pathname   in  the  PMNS,  hence  this  non-leaf  node  is
       ``orphaned'' in the PMNS.

       Cannot find definition for non-terminal  node  ``xyz''  in
       name  space  - a non-terminal node is named as part of its
       parent's specification, but is never defined.

       Duplicate metric  id  (xxx)  in  name  space  for  metrics
       ``abc''  and ``xyz'' - each PMID must be unique across the
       PMNS.


Man(1) output converted with man2html