uwx_self_init_state_cache.3x (2010 09)

u
uwx_self_init_state_cache(3X) uwx_self_init_state_cache(3X)
(Integrity Systems Only)
NAME
uwx_self_init_state_cache() - create a cache to improve self-unwind performance
SYNOPSIS
#include <uwx.h>
int uwx_self_init_state_cache(
struct uwx_self_info *
info,
int nrows,
int assoc ,
int entsz
);
DESCRIPTION
uwx_self_init_state_cache()
is part of the Unwind Express Library for Integrity systems; see
uwx(3X).
uwx_self_init_state_cache()
creates a cache for quick retrieval of unwind state infor-
mation when self-unwinding. This routine can be used to improve the performance of programs that per-
form frequent self-unwind operations.
The ideal cache size and associativity will vary for different applications. Experiment with different
values and use performance measurement tools to determine the best values to use.
The memory used by the cache is freed when
uwx_self_free_info()
is called.
Parameters
info A pointer to the callback info structure created by
uwx_self_init_info()
.
rows The number of rows in the cache. If this is not a power of two, it will be adjusted to the
largest power of two less than the value specified. If the value specified is less than 1,
uwx_self_init_state_cache()
returns without allocating a cache.
assoc The associativity of the cache. This determines how many entries with conflicting hash
values can be stored in each row of the cache. If the value specified is less than 1,
uwx_self_init_state_cache()
returns without allocating a cache.
entsz The size of a cache entry in bytes. The size of the unwind state information stored in a
cache entry varies between 64 and 368 bytes.
If a stack frame’s unwind state is larger than the value specified for entsz , the state will
not be saved in the cache. An entry size of 104 is sufcient for most stack frames. If the
entsz value is not a multiple of 8 bytes it will be rounded up. If value specified is less
than 64 bytes,
uwx_self_init_state_cache()
returns without allocating a cache.
RETURN VALUE
uwx_self_init_state_cache()
returns [UWX_OK] on success. See uwx(3X) for error codes.
AUTHOR
The Unwind Express Library was developed by Hewlett-Packard.
SEE ALSO
uwx(3X), uwx_add_to_bsp(3X), uwx_find_source_info(3X), uwx_find_symbol(3X), uwx_free(3X),
uwx_get_abi_context_code(3X), uwx_get_funcstart(3X), uwx_get_module_info(3X), uwx_get_nat(3X),
uwx_get_reg(3X), uwx_get_source_info(3X), uwx_get_sym_info(3X), uwx_init(3X), uwx_init_context(3X),
uwx_register_alloc_cb(3X), uwx_register_callbacks(3X), uwx_release_symbol_cache(3X),
uwx_self_do_context_frame(3X), uwx_self_free_info(3X), uwx_self_init_context(3X),
uwx_self_init_info(3X), uwx_set_nofr(3X), uwx_set_remote(3X), uwx_step(3X), uwx_step_inline(3X).
HP-UX 11i Version 3: September 2010 1 Hewlett-Packard Company 1

Summary of content (2 pages)