Real-Time Visualization in Distributed Computational Laboratories
Eisenhauer, Greg Stephen
MetadataShow full item record
Large data volumes cannot be transported, processed or displayed in real-time unless we apply to them general or application-specific compression and filtering techniques. In addition, when multiple end users inspect such data sets or when multiple programs access or consume them, data distribution and display should be performed differentially, in accordance with the queries generated by programs or end users. Finally, if dynamic access queries cannot be formulated precisely, then they must be refined as they progress in order to avoid unnecessary data retrievals, transfers, and information overload for programs or end users with uninteresting or unimportant data. The principal idea of our research is to create Active User Interfaces (AUIs) that continuously emit events describing their internal states and/or current information needs. Based on these events, we then develop methods for controlling the information streams directed at these interfaces, for single and for multiple, collaborating end users. The purposes of stream control are twofold. First, stream control is performed to deal with heterogeneous underlying hardware and software systems, where streams may originate at secondary storage media or may be generated dynamically, may have to be moved across the Internet or may utilize local area or high performance interconnects, and where collaborating user interfaces may range from low end PC-based displays to high end immersive visualization engines. Second, stream control aims to achieve scalability for user interfaces to large-scale, complex data streams directed at them, by offloading computations from visualizations to information generators or to information routing sites, to dynamically migrate such computations to appropriate locations, and to adapt these computations in order to effect tradeoffs in the amount of data moved across network links vs. the computations required when performing data rendering, compression, filtering, and routing actions.