vpGetTimer, vpClearTimer - interval timer facility
#include <volpack.h>
vpResult
vpGetTimer(vpc, option, iptr)
-
- vpContext *vpc;
-
- int option;
-
- int *iptr;;
vpResult
vpClearTimer(vpc, option)
-
- vpContext *vpc;
-
- int option;
- vpc
- VolPack context from vpCreateContext.
- option
- Constant that specifies a particular timer.
- iptr
- Location for storing the timer value.
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.
The normal return value is VP_OK. The following error return value
is possible:
- VPERROR_BAD_OPTION
- The option argument is invalid.
VolPack(3), vpCreateContext(3)