vpGetTimer man page

vpGetTimer, vpClearTimer — interval timer facility

Synopsis

#include <volpack.h>

vpResult

vpGetTimer(vpc, option, iptr)

vpContext *vpc;

int option;

int *iptr;;

vpResult

vpClearTimer(vpc, option)

vpContext *vpc;

int option;

Arguments

vpc

VolPack context from vpCreateContext.

option

Constant that specifies a particular timer.

iptr

Location for storing the timer value.

Description

These functions are used for measuring the performance of the VolPack library.  To use them, the library must be compiled with a special flag: either -DHAVE_LORES_TIMER (for machine that support the gettimeofday C library call) or -DHAVE_HIRES_TIMER (for SGI machines that support high-resolution memory-mapped I/O timers; on a Challenge or ONYX, the -DHAVE_64BIT_TIMER must also be specified).  If one of these flags is specified at compile time then VolPack maintains a table recording the accumulated time spent in various operations. Note that some of the operations can only be timed with a high-resolution timer; time values will not be recorded and will appear to be zero if a low resolution timer is specified at compile time.

vpGetTimer retrieves the accumulated time for a particular operation.  The option argument specifies which operation:

VPTIMER_SHADE

Time the routine that computes the contents of the shading lookup table.

VPTIMER_RENDER

Time the routine that renders a volume (includes VPTIMER_CLSFY_OCTREE, VPTIMER_COMPOSITE, VPTIMER_DEPTHCUE, and VPTIMER_WARP).

VPTIMER_COMPOSITE

Time the routine that computes the intermediate image from the volume (includes VPTIMER_CLEAR, VPTIMER_TRAVERSE_OCTREE, VPTIMER_ERT, VPTIMER_TRAVERSE_RUNS, and VPTIMER_PROCESS_VOXELS).

VPTIMER_DEPTHCUE

Time the routine that performs the depth cueing fixup on the intermediate image.

VPTIMER_WARP

Time the routine that warps the intermediate image into the final image.

VPTIMER_TRAVERSE_RUNS

Time the portion of the compositing routine devoted to traversing the volume data structures.

VPTIMER_PROCESS_VOXELS

Time the portion of the compositing routine devoted to compositing voxels into the intermediate image.

VPTIMER_ERT

Time the early-ray termination checks during compositing.

VPTIMER_CLSFY_OCTREE

Time the octree classification stage.

VPTIMER_TRAVERSE_OCTREE

Time the portion of the compositing routine devoted to traversing the octree.

VPTIMER_CLEAR

Time the routine that clears the intermediate image at the beginning of compositing.

The routine stores the accumulated time since the last call to vpClearTimer (or since the beginning of the program) in the location specified by iptr.  The units of the value are microseconds.

vpClearTimer sets the specified timer value back to zero.

Errors

The normal return value is VP_OK.  The following error return value is possible:

VPERROR_BAD_OPTION

The option argument is invalid.

See Also

VolPack(3), vpCreateContext(3)

Info

VolPack