nbperf man page on Minix

Man page or keyword search:  
man Server   6208 pages
apropos Keyword Search (all sections)
Output format
Minix logo
[printable version]

NBPERF(1)		  BSD General Commands Manual		     NBPERF(1)

NAME
     nbperf — compute a perfect hash function

SYNOPSIS
     nbperf [-ps] [-a algorithm] [-c utilisation] [-h hash] [-i iterations]
	    [-m map-file] [-n name] [-o output] [input]

DESCRIPTION
     nbperf reads a number of keys one per line from standard input or input.
     It computes a minimal perfect hash function and writes it to stdout or
     output.  The default algorithm is "chm".

     The -m argument instructs nbperf to write the resulting key mapping to
     map-file.	Each line gives the result of the hash function for the corre‐
     sponding input key.

     The parameter utilisation determines the space efficiency.

     Supported arguments for -a:

     chm  This results in an order preserving minimal perfect hash function.
	  The utilisation must be at least 2, the default.  The number of
	  iterations needed grows if the utilisation is very near to 2.

     chm3
	  Similar to chm.  The resulting hash function needs three instead of
	  two table lookups when compared to chm.  The utilisation must be at
	  least 1.24, the default.  This makes the output for chm3 noticable
	  smaller than the output for chm.

     bdz  This results in a non-order preserving minimal perfect hash func‐
	  tion.	 Output size is approximately 2.79 bit per key for the default
	  value of utilisation, 1.24.  This is also the smallest supported
	  value.

     Supported arguments for -h:

     mi_vector_hash  Platform-independent version of Jenkins parallel hash.
		     See mi_vector_hash(3).

     The number of iterations can be limited with -i.  nbperf outputs a func‐
     tion matching uint32_t hash(const void * restrict, size_t) to stdout.
     The function expects the key length as second argument, for strings not
     including the terminating NUL.  It is the responsibility of the caller to
     pass in only valid keys or compare the resulting index to the key.	 The
     function name can be changed using -n name.  If the -s flag is specified,
     it will be static.

     After each failing iteration, a dot is written to stderr.

     nbperf checks for duplicate keys on the first iteration that passed basic
     hash distribution tests.  In that case, an error message is printed and
     the program terminates.

     If the -p flag is specified, the hash function is seeded in a stable way.
     This may take longer than the normal random seed, but ensures that the
     output is the same for repeated invocations as long as the input is con‐
     stant.

EXIT STATUS
     The nbperf utility exits 0 on success, and >0 if an error occurs.

SEE ALSO
     mi_vector_hash(3)

AUTHORS
     Jörg Sonnenberger

BSD			      September 25, 2012			   BSD
[top]

List of man pages available for Minix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net