Next: The RTVR Scene Graph
Up: RenderList as Data Representation
Previous: RenderList as Data Representation
  Contents
Due to the specific way of memory management as employed by current
Java virtual machines (VM), a special data handling and caching
functionality is used by
RTVR to support the visualization of huge data sets (dozens to
hundreds of volumes), which are produced, for example, by
numerical simulations [4]. The maximum amount of memory
which is available to a VM has to be fixed at initialization time. As the
garbage collection and object allocation mechanism sweeps
through the entire address space of the VM, allocating more memory to
the VM than physically available would lead to excessive paging
and strong performance degradation. Instead of allocating sufficient
memory to fit even the largest data sets, RTVR uses a separate
memory and disk cache for space-demanding parts of it's data
structures, i.e., the original volume data, the extracted voxel attributes,
and the renderable voxel data. Data, which is currently not used for
rendering, is placed into the memory cache and thereby potentially
written to disk by a
background thread. Requests for recently used data can usually be
satisfied out of the memory cache, whereas reading less recently
accessed data may
require to fetch it from disk. The cache feature is used
when large data sets are visualized locally, and is disabled when
RTVR is used within a web-browser.
Next: The RTVR Scene Graph
Up: RenderList as Data Representation
Previous: RenderList as Data Representation
  Contents
Lukas Mroz, May 2001, mailto:mroz@cg.tuwien.ac.at.