Visualization And Distributed Systems

3y ago
47 Views
3 Downloads
1.26 MB
45 Pages
Last View : 19d ago
Last Download : 3m ago
Upload by : Aliana Wahl
Transcription

Department of Computing ScienceVisualization and DistributedSystemsNiklas Elmqvist elm@cs.chalmers.se Visualization and Distributed Systems

Department of Computing ScienceContents IntroductionCollaborative Virtual EnvironmentsVisualization of Distributed SystemsDistributed GraphicsWearable ComputersConclusionsVisualization and Distributed Systems

Department of Computing ScienceIntroduction Visualization and distributed computingare two fields of research with many potentialconnections Overview of the visualization research of theDistributed Computing & Systems group atthe department We will discuss a selection of projects relatedto these two areas:– Visualizing distributed systems– Using distributed systems for visualizationVisualization and Distributed Systems

Department of Computing ScienceVisualizationVisualization: graphical representation of datato aid in human cognition. Visualization is a very large field of research Many subfields––––Information visualizationScientific visualizationData visualizationetc. Key component: computer graphics Key feature: high performance Distributed systems may be useful here!Visualization and Distributed Systems

Department of Computing ScienceVisualization: Example CyberCity informationvisualization technique– Visualization of multidimensional data– 3D computer graphics– Uses a ”city” metaphorwith buildings, blocks,and a downtown area This is just one exampleof the unlimited uses ofvisualizationVisualization and Distributed Systems

Department of Computing ScienceVisualization and DistributedSystems Why do we want to combine visualizationand distributed systems? Two main reasons:1. Visualizing distributed systems– Distributed systems may be very complex to design,implement and debug.– Visualization can help us to do this easier.2. Using distributed systems for visualization– Visualization is usually a very CPU-intensive activity– We can use distributed systems to improveperformanceVisualization and Distributed Systems

Department of Computing ScienceCollaborative VirtualEnvironmentsOf Quake and QuestVisualization and Distributed Systems

Department of Computing ScienceIntroduction Sometimes it is beneficial toallow geographically distributedpeople to work (or fight!)together in a sharedenvironment Online 3D multiplayer games areexcellent examples of suchenvironments– EverQuest, Dark Age of Camelot,Ultima Online, Quake, etc Visualization is an important partof these shared environments(see picture), and so isdistributed systemsScene from Dark Age of CamelotVisualization and Distributed Systems

Department of Computing ScienceDefinitionsCollaborative Virtual Environment (CVE):general-purpose virtual world shared by participants across acomputer network. Generalization of online multiplayer games to includeany kind of activity Each participant is embodied by an avatar– Graphical entity representing IdentityPresenceLocationActivity– Is used to interact with the world Convergence of Virtual Reality (VR) and ComputerSupported Cooperative Work (CSCW) researchVisualization and Distributed Systems

Department of Computing ScienceCVEs and Distributed Computing CVEs are by definition distributed systems Participants are geographically distributed andconnected using some kind of network Many interesting challenges:– Scalability: potentially thousands of users– Interest management: who shall receive statechanges?– Distributed architecture: client/server or peer-topeer (multicast vs unicast)– Consistency: how to ensure that all users have thesame view of the world?Visualization and Distributed Systems

Department of Computing ScienceScalability Modern multiplayer games support up to20,000 concurrent users (Anarchy Online)– Client/server architecture with a large server cluster A large-scale CVE may need to support evenmore users– Massive bandwidth requirements– Node processing power– Most of the users don’t see each other (at the sametime) Solution: Send information only to nodes thatare interested in it.Visualization and Distributed Systems

Department of Computing ScienceInterest Management Scalability problems can be remedied by onlysending information to nodes that need it Two major approaches:1. Geography-based: send information to nodes thatare in the vicinity of the originating node.2. Interest-based: send information to nodes thathave registered an interest in this type of info. The second approach is the more general ofthe two but more complex to implementVisualization and Distributed Systems

Department of Computing ScienceInterest Management: Example The NPSNET system uses anetwork of hexagons– Works well for military simulations– Newest version of NPSNET hasmodularized interest management The MASSIVE-2 system useshierarchies of dynamicallyresizing regions– Allows for easy culling of wholesubhierarchies– Interest-based approach (in someways)Visualization and Distributed Systems

Department of Computing ScienceDistributed Architecture Finding a suitable architecture is a majorchallenge Three basic architectures exist:1. Client/server: Clients only participate with acentral server, never with each other. Easy, secure,but may scale poorly.2. Peer-to-peer unicast: Clients communicate witheach other. Massive bandwidth but load is sharedamong all nodes, network delays low.3. Peer-to-peer multicast: Clients communicate witheach other using multicast mechanisms (IPmulticast). Bandwidth-efficient but not generallyavailableVisualization and Distributed Systems

Department of Computing ScienceTo Serve Or Not Client/server architecture– Advantages: Peer-to-peer architecture– Advantages: Easy to implement Secure (oneauthorization point) Reasonably efficient Consistency is simple– Disadvantages: Will not scaleindefinitely Vulnerable to faults Inflexible Fault-tolerant Bandwidth-efficient (ifusing multicast) Dynamicallyreconfigurable Scales well– Disadvantages: Complex to implement Consistency is hard Hard to make secureVisualization and Distributed Systems

Department of Computing ScienceConsistency How do we ensure that all peers have thesame consistent view of the shared world? Classic example: train switchAABB changes switchjust before trainreaches itBA does not see the switchin time and thinks traincontinues along trackIn B’s view of the world, thetrain enters the other trackVisualization and Distributed Systems

Department of Computing ScienceDCS and CVEs The DCS group is exploring the field of CVEs We want to build a system (or a prototype)with the following characteristics– Reconfigurable consistency (with consistencyguarantees)– General area-of-interest management scheme– Peer-to-peer multicast architecture– General-purpose framework that can both be usedfor 3D worlds as well as collaborative editorsVisualization and Distributed Systems

Department of Computing ScienceVisualization of Distributed SystemsGrowing Squares and CausalVizVisualization and Distributed Systems

Department of Computing ScienceIntroduction Distributed systems are often complex todesign, build, and debug Visualization may be able to help theseactivities Trace files of messages sent in a distributedsystem are useful diagnostic tools– Traces can be extremly large and hard to overview– The distributed system may be large and/or complex We need a visualization technique that takessystem traces as input and gives a usefulgraphic representation as outputVisualization and Distributed Systems

Department of Computing ScienceHasse Diagrams Hasse Diagrams canbe used for thispurpose– Each process/node has alifeline in a time-spacediagram– Messages arerepresented as arrowsbetween lifelines– This visualization quicklybecomes messyVisualization and Distributed Systems

Department of Computing ScienceGrowing Squares The Growing Squares visualization techniquewas designed to solve this problem Metaphor: pools of color spreading on a pieceof paper– Each pool is a process/node– Pools grow in size over time– Messages from one pool to another will add color tothe destination pool– The influence of a single pool is easy to see just bystudying its color composition– The history of the growing process is animatedVisualization and Distributed Systems

Department of Computing ScienceGrowing Squares (2) Transitivity Message passing– Process p0 (blue) sendsa message to process p1(white)– Process p1 will now haveboth blue and white in it– Process p0 (blue) sendsa message to process p1(white)– Then, process p1 sends amessage to p2 (red)– Transitivity is clearlyvisible in p2Visualization and Distributed Systems

Department of Computing ScienceGrowing Squares: Example 5-process distributedsystem at t tend– Colors at each processshows influences– Animated history– Scales to largersystemsVisualization and Distributed Systems

Department of Computing ScienceUser Study and Results We have performed a user study comparingHasse diagrams to Growing Squares– New method was faster and more efficient– Users preferred the new method over Hassediagrams Things to be improved– Layout of processes (circular, grid, geographical)– Color assignment (colors too close)– Alternative visualizations? Work has been submitted to CHI 2003Visualization and Distributed Systems

Department of Computing ScienceFuture Work 3D graphics is useful– Extensions to the originaltechnique (i.e. GrowingPyramids)– More complex adaptionsthat make use of the 3rddimension Work in progress– Require test subjects!– Sign up if you want to helpVisualization and Distributed Systems

Department of Computing ScienceDistributed Graphics3Dwm: The Three-DimensionalWorkspace ManagerVisualization and Distributed Systems

Department of Computing ScienceIntroduction Some visualization applications have very highrequirements– Virtual Reality– Computer-Supported Cooperative Work (CSCW)– High-end Computer-Aided Design (CAD) Networked high-performance workstations arebecoming available– Visualization applications that were previouslyimpractical are now feasible We need a framework to construct applicationsmaking use of heterogeneous set of platformsVisualization and Distributed Systems

Department of Computing ScienceDefinitionsDistributed graphics: systems for distributingshared graphical state of multi-display/multiuser, distributed, interactive applications.[MacIntyre et al 1998] Many excellent stand-alone 3D libraries exist– Example: Java3D, Performer, Inventor, VRML, etc Existing VR/CSCW platforms require ”dualdatabases” for graphics vs application state We are looking for a unified way to builddistributed graphics applicationsVisualization and Distributed Systems

Department of Computing ScienceBasic Concepts Two basic types:1. Multi-display: multiple views of a single graphicaldatabase2. Multi-source: the graphical database is distributedand/or modified by multiple clients Hybrids are possible where both the databaseis distributed and rendered by different nodesclientsRenderernetworkExample: multi-source distributed graphics applicationVisualization and Distributed Systems

Department of Computing ScienceDistributed Graphics Platforms Several distributed graphics platforms exist– Repo3D: general-purpose, object-oriented libraryfor distributed 3D applications– WireGL/Chromium: distributed OpenGL, useful fordistributing rendering across workstations– VR Juggler: Virtual Reality application framework,includes distributed graphics primitives– MR Toolkit: library for distributed graphics (mainlyusing ”crude” IPC primitives)– DIVE: CVE platform supporting mechanisms fordistributed graphicsVisualization and Distributed Systems

Department of Computing Science3Dwm The 3Dwm (Three-Dimensional WorkspaceManager) is an application framework fordistributed 3D graphics– Initiated in 1999 by Niklas Elmqvist and RobertKarlsson– Supports all kinds of 3D platforms (VR, AR, etc) Contains a run-time component for managingconcurrent workspaces and applicationsDefinition: a workspace is a specialenvironment in which the cost structure of theneeded materials is tuned to the work processusing them [Card, Robertson, Mackinlay].Visualization and Distributed Systems

Department of Computing Science3Dwm: Basic Idea Single-user client/server interface system– Multi-source/single-display application platform– Each client maintains its own part of the graphicaldatabase– Display server contains the rendering hardware– Clients on the network– CORBA is used for communicationVisualization and Distributed Systems

Department of Computing Science3Dwm: 3D User Interfaces 3Dwm is a platform for building applicationswith 3D user interfaces 3D user interfaces extends conventionalgraphical 2D interfaces––––Interfaces with ”volume”Makes use of human spatial perceptionWell-suited for Virtual and Augmented RealityExample: immersive 3D modeller, simulation, 3Dweb browser, etcVisualization and Distributed Systems

Department of Computing Science3Dwm: System Architecture Layered system Important components:– Distributed 3D scenegraph: abstract scenedescription– Platform abstractionlayer: portablehardware/OS interface– Renderer: supportvarious 3D APIs such asOpenGL and Direct3DVisualization and Distributed Systems

Department of Computing Science3Dwm: Example Immersive CSG modeller– 3D model is created bycombining 3D primitives– Supports spheres, quads,cylinders, cones, planes,etc– Very simple toolbarinterface– The 3D space is the”workshop”– Can coexist with other3Dwm applicationsVisualization and Distributed Systems

Department of Computing Science3Dwm: Future Work See http://www.3dwm.org for moreinformation on 3Dwm Many future research directions–––––3D session management3D widget toolkitInformation visualizationCVE integrationAugmented Reality on wearable computersVisualization and Distributed Systems

Department of Computing ScienceWearable ComputersTruly Mobile Computing and DistributedSystemsVisualization and Distributed Systems

Department of Computing ScienceIntroduction Wearable computers arespecial computers that canbe worn, like clothing Natural way to carry acomputer Pioneered by Steve Mann ofMIT in the 1980s Basic feature: personalimaging system (often via ahead-mounted display)Visualization and Distributed Systems

Department of Computing ScienceWearable Equipment Often x86-based computer Typical wearable:––––––Head-mounted displayDigital cameraWireless communicationOne-handed keyboardTouch screenBattery Example: Xybernaut MobileAssistant IV (next slide)Visualization and Distributed Systems

Department of Computing ScienceExample: Xybernaut MA IVVisualization and Distributed Systems

Department of Computing ScienceAugmented Reality Augmented Reality: the next killer app?– Computer-generated images superimposed on thereal world (VR on a virtual world)– 3D visualization important– Example: directions to a shop drawn on yournormal vision Wearables are especially well suited forAugmented Reality– Wear them in everyday life– Head-mounted display (goggles) very useful– Head-tracking prominentVisualization and Distributed Systems

Department of Computing ScienceAugmented Reality: Example Many uses in everyday life– Tourist information in a new city– Soldiers with integrated order and navigation system– Operation support systemsVisualization and Distributed Systems

Department of Computing ScienceDCS and Wearables/AR The DCS group has 2 Xybernaut MA IVwearables– One unit used by a D3 student project group We are conducting research in the followingareas– Turning the 3Dwm system into an AugmentedReality platform– Wearables as mobile entities on a wireless LAN– Using 3Dwm and wearables in CVEsVisualization and Distributed Systems

Department of Computing ScienceConclusionsVisualization and Distributed Systems

Department of Computing ScienceConclusions The fields of visualization and distributedsystems have many interconnections– Mutual benefit Visualization of distributed systems Visualization using distributed systems– Interesting problems and possibilities Much work remains to be done––––Integrating 3Dwm with CVEsIntegrating 3Dwm with wearablesIntegrating visualization with 3Dwmetc.Visualization and Distributed Systems

3Dwm: 3D User Interfaces 3Dwm is a platform for building applications with 3D user interfaces 3D user interfaces extends conventional graphical 2D interfaces – Interfaces with ”volume” – Makes use of human spatial perception – Well-suited for Virtual and Augmented Reality – Example: immersive 3D modeller, simulation, 3D

Related Documents:

management of scientific data, distributed visualization algorithms for high-resolution displays, and intuitive data management designs tailored for specific visualization algorithms. The distributed nature of the framework is primarily due to the distributed implementation of the visualization algorithms.

Distributed Database Design Distributed Directory/Catalogue Mgmt Distributed Query Processing and Optimization Distributed Transaction Mgmt -Distributed Concurreny Control -Distributed Deadlock Mgmt -Distributed Recovery Mgmt influences query processing directory management distributed DB design reliability (log) concurrency control (lock)

Computer-based visualization systems provide visual representations of datasets designed to help people carry out tasks more effectively. more at: Visualization Analysis and Design, Chapter 1. Munzner. AK Peters Visualization Series, CRC Press, 2014. Visualization is suitable when there is a need to augment human capabilities

For visualization pedagogy, an important but challenging notion to teach is design, from making to evaluating visualization encodings, user interactions, or data visualization systems. In our previous work, we introduced the design activity framework to codify the high-level activities of the visualization design process. This framework has

discussing the challenges of big data visualization, and analyzing technology progress in big data visualization. In this study, authors first searched for papers that are related to data visualization and were published in recent years through the university library system. At this stage, authors mainly summarized traditional data visualization

The data source and visualization system have different data models. A database visualization tool must make a connection between the data source data model and the visualization data model. Some methods has been proposed and studied. For example, Lee [17] described a database management-database visualization integration, which

2.1 Data Visualization Data visualization in the digital age has skyrocketed, but making sense of data has a long history and has frequently been discussed by scientists and statisticians. 2.1.1 History of Data Visualization In Michael Friendly's paper from 2009 [14], he gives a thorough description of the history of data visualization.

to summarize documents and then uses several visualization techniques to explain the summarization results. Time-based data visualization for visual analytics often takes the name "river" for the stream visualization technique. EvoRiver[17], a time-based visualization, allows users to ex-plore coopetition-related interactions and to detect dynami-