A Survey and Performance Analysis of Software Platforms for Interactive Cluster-Based Multi-Screen Rendering

Total Page:16

File Type:pdf, Size:1020Kb

A Survey and Performance Analysis of Software Platforms for Interactive Cluster-Based Multi-Screen Rendering Ninth Eurographics Workshop on Virtual Environments (2003) A. Kunz, J. Deisinger (Editors) A Survey and Performance Analysis of Software Platforms for Interactive Cluster-Based Multi-Screen Rendering Oliver Staadt, Justin Walker, Christof Nuber, and Bernd Hamann Center for Image Processing and Integrated Computing (CIPIC) and Department of Computer Science University of California, Davis Abstract We present a survey of different software architectures designed to render on a tiled display. We provide an in- depth analysis of three selected systems, including their implementation of data distribution, sort-first render- ing, and overall usability. We use various test cases to analyze the performance of these three systems. Categories and Subject Descriptors (according to ACM CCS): C.4 [Performance of Systems]: Performance Attributes, I.3.2 [Computer Graphics]: Distributed/Network Graphics, I.3.4 [Computer Graphics]: Graphics Packages, I.3.7 [Computer Graphics]: Virtual Reality. 1. Introduction • displaying images at very high resolutions exceeding those of available monitors and/or graphic cards and Traditionally, multi-screen display environments have been driven primarily by powerful graphics supercomputers, • providing a larger field-of-view and better immersion such as SGI’s Onyx systems. With features including into the scenery. shared-memory multi-processing and multiple synchro- A larger image can be obtained by using special purpose nized graphics pipelines, they provided a stable and flexible video processors that split the incoming video signal and development platform for high-performance virtual reality distribute it to the connected display systems. This and visual simulation applications. Unfortunately, these fea- approach, however, increases the area covered by a single tures come at high cost. Hence, the use of multi-screen pro- pixel, which is not always desired. Increasing the resolution jection environments has been limited to a small number of of a displayed image requires the combination of several users. display-devices into a single display-environment, provid- During the past several years, high-performance and fea- ing a higher resolution by combining several images. In the ture-rich PC graphics interfaces have become available at past, high-performance computers, such as SGI’s Infinite low cost. This development enables us to build clusters of Reality with multiple graphics pipes have been used to high-performance graphics PCs at reasonable cost. An drive multi-tiled displays. With the availability of afford- important issue, however, is that the programming model able PC-based high-performance graphics cards like the for shared-memory systems and clusters differ significantly. NVidia GeForce- or the 3DLabs Wildcat-series, high-qual- In shared-memory graphics systems, the programmer does ity rendering is available at relatively low cost. Using a not have to worry about issues such as sharing data amongst cluster-based approach requires the solution of problems different processors or distributing rendering information to like data-management and -distribution, output-synchroni- different graphics engines. In cluster environments, it is zation and event handling. Solving these problems for an necessary to deal with these issues explicitly. The use of application can be very tedious, time-consuming and error- clusters for computationally intensive simulations and prone, so the usage of libraries providing the necessary sup- applications has lead to the development of interface stan- port should be considered. dards such as the Message Passing Interface (http:// The design and development of platforms for cluster- www.mpi-forum.org) and OpenPBS (http://www.open- based multi-screen rendering has become increasingly pop- pbs.org). We focus on rendering in a multi-display environ- ular during the past few years 1,4,5,6,7,10,15,16, but a standard ment. There are two important application areas where solution has yet to be found. Nevertheless, many developers multi-display environments are used 14: are eager to port existing applications to cluster environ- © The Eurographics Association 2003 1 Staadt et al. / Performance Analysis of Software Platforms for Interactive Cluster-Based Multi-Screen Rendering ments or to develop new ones. Although development of primitive clustering. Samanta et al. 13 investigated methods those platforms has only begun recently, various different to improve load balancing by dynamically changing the til- architectures have been proposed, some are available as ing. Sort-first algorithms also do not scale well when the open-source software 1,7,10,15,16. number of nodes in the cluster increases. Every primitive We provide a survey of different systems designed to that lies on the border of two tiles must be rendered by both tiles. As the number of tiles increases, the number of these render on a tiled display and discuss potential implications primitives increases. Samanta et al. 12 solved this problem on the application development as well as advantages and by using a hybrid sort-first, sort-last approach. disadvantages of these designs. We present detailed descrip- Sort-middle algorithms begin by distributing each graph- tions of three systems followed by a performance analysis. ics primitive to exactly one processor† for geometry pro- We defined a set of test-cases and conducted a quantitative cessing. After the primitive has been transformed into evaluation of the usefulness of these systems for different screen space, it is forwarded to another processor for ren- kinds of application scenarios. Our goal is to help develop- dering. Similar to the sort-first approach the screen space is ers with the selection of a software platform that is appro- divided into tiles, but each processor is only responsible for priate for their particular application requirements. We do rasterization of primitives within that tile. This approach not discuss hardware-related issues, which are also impor- requires a separation of rasterization engine and rendering tant for building commodity clusters for rendering. We refer pipeline, so that primitives can be redistributed. Currently the reader to 19 for an overview of different hardware archi- this approach can only be implemented using specialized tectures. hardware, such as SGI’s InfiniteReality engine. The remainder of this paper is structured as follows: In sort-last approaches, each primitive is sent to exactly After discussing different applications for cluster-based one node for rendering. After all primitives have been ren- rendering environments in Section 2, we will present the dered, the nodes must composite the images to form the survey of different software platforms in Section 3. Three final image. This usually requires a large amount of band- selected platforms will be evaluated in detail in Section 4. width because each node must send the entire image to a Section 5 contains the results and interpretations of our per- compositor. formance analysis, followed by conclusions in Section 6. Tiled displays lead naturally toward a sort-first approach. The screen is already partitioned into tiles, with each tile being driven by a single cluster node. Other approaches 2. Cluster-based Rendering require to distribute the primitives to the rendering nodes Cluster-based rendering in general can be described as the and distributing the final image to the nodes responsible for use of a set of computers connected via a network for ren- tile-rendering. For these reasons the majority of software dering purposes, ranging from distributed non-photorealis- systems designed for rendering on a tiled display imple- ments a sort-first algorithm. tic volume rendering over ray tracing and radiosity-based rendering 17 to interactive rendering using application pro- gramming interfaces (APIs) like OpenGL 18 or DirectX 11. 3. Systems Survey We use the same terminology as is used by X-Windows. A client runs the application while the server renders on the In our survey we analyzed systems designed to support ren- local display. dering on a tiled display. All systems evaluated implement to some extent a sort-first method. They vary widely with Most of the recent research on cluster-based rendering respect to the way data is distributed among the cluster focuses on different algorithms to distribute the rendering 2,3 of polygonal geometry across the cluster. Molnar et al.9 nodes. Chen et al. first looked at the problem of data dis- classified these algorithms into three general classes based tribution. Two general models have emerged: on where the sorting of the primitives occurs in the transi- • client–server and tion from object to screen space. The three classes are • master–slave. • sort-first, In the client–server model a user interacts with a single • sort-middle, and instance of the application that runs on a client node. This • sort-last. client is responsible for generating the geometry and dis- In sort-first algorithms, the display is partitioned into dis- tributing it to the render servers (see Figure 1a). We can dis- crete, disjoint tiles. Each rendering node of the cluster is tinguish between two rendering modes - immediate mode then assigned one or more of these tiles and is responsible and retained mode. In immediate mode the client sends the for the complete rendering of only those primitives that lie primitives over the network every frame. In retained mode within one of its tiles. To accomplish this, primitives are each render server stores primitives it has already been sent usually pre-transformed to determine their screen space to locally for re-use. The client then needs to send only extents and then sent only to those tiles they overlap with. changes to the geometry. This method is usually accom- The required network bandwidth can be high when sending plished through the use of a scene graph. primitives to the appropriate render server, but utilizing knowledge of the frame-to-frame coherency of the primi- tives can reduce the amount of network traffic significantly. †The term processor is used in a more general sense, not re- Sort-first algorithms suffer from load balancing due to stricted to CPUs or GPUs.
Recommended publications
  • Stardust: Accessible and Transparent GPU Support for Information Visualization Rendering
    Eurographics Conference on Visualization (EuroVis) 2017 Volume 36 (2017), Number 3 J. Heer, T. Ropinski and J. van Wijk (Guest Editors) Stardust: Accessible and Transparent GPU Support for Information Visualization Rendering Donghao Ren1, Bongshin Lee2, and Tobias Höllerer1 1University of California, Santa Barbara, United States 2Microsoft Research, Redmond, United States Abstract Web-based visualization libraries are in wide use, but performance bottlenecks occur when rendering, and especially animating, a large number of graphical marks. While GPU-based rendering can drastically improve performance, that paradigm has a steep learning curve, usually requiring expertise in the computer graphics pipeline and shader programming. In addition, the recent growth of virtual and augmented reality poses a challenge for supporting multiple display environments beyond regular canvases, such as a Head Mounted Display (HMD) and Cave Automatic Virtual Environment (CAVE). In this paper, we introduce a new web-based visualization library called Stardust, which provides a familiar API while leveraging GPU’s processing power. Stardust also enables developers to create both 2D and 3D visualizations for diverse display environments using a uniform API. To demonstrate Stardust’s expressiveness and portability, we present five example visualizations and a coding playground for four display environments. We also evaluate its performance by comparing it against the standard HTML5 Canvas, D3, and Vega. Categories and Subject Descriptors (according to ACM CCS):
    [Show full text]
  • Parallel Particle Rendering: a Performance Comparison Between Chromium and Aura
    See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/221357191 Parallel Particle Rendering: a Performance Comparison between Chromium and Aura . Conference Paper · January 2006 DOI: 10.2312/EGPGV/EGPGV06/137-144 · Source: DBLP CITATIONS READS 4 29 3 authors, including: Michal Koutek Koninklijk Nederlands Meteorologisch Instituut 26 PUBLICATIONS 172 CITATIONS SEE PROFILE All content following this page was uploaded by Michal Koutek on 28 January 2015. The user has requested enhancement of the downloaded file. All in-text references underlined in blue are added to the original document and are linked to publications on ResearchGate, letting you access and read them immediately. Eurographics Symposium on Parallel Graphics and Visualization (2006) Alan Heirich, Bruno Raffin, and Luis Paulo dos Santos (Editors) Parallel particle rendering: a performance comparison between Chromium and Aura , Tom van der Schaaf1, Michal Koutek1 2 and Henri Bal1 1Faculty of Sciences - Vrije Universiteit, De Boelelaan 1081, 1081 HV Amsterdam, The Netherlands 2Faculty of Information Technology and Systems - Delft University of Technology Abstract In the fields of high performance computing and distributed rendering, there is a great need for a flexible and scalable architecture that supports coupling of parallel simulations to commodity visualization clusters. The most popular architecture that allows such flexibility, called Chromium, is a parallel implementation of OpenGL. It has sufficient performance on applications with static scenes, but in case of more dynamic content this approach often fails. We have developed Aura, a distributed scene graph library, which allows optimized performance for both static and more dynamic scenes. In this paper we compare the performance of Chromium and Aura.
    [Show full text]
  • Tessellation and Rendering of Trimmed NURBS Models in Scene Graph Systems
    Tessellation and rendering of trimmed NURBS models in scene graph systems Dissertation zur Erlangung des Doktorgrades (Dr. rer. nat.) der Mathematisch-Naturwissenschaftlichen Fakultat¨ der Rheinischen Friedrich-Wilhelms-Universitat¨ Bonn vorgelegt von Dipl.-Inform. Akos´ Balazs´ aus Budapest/Ungarn Munchen,¨ April 2008 Universitat¨ Bonn, Institut fur¨ Informatik II Romerstraße¨ 164, 53117 Bonn Angefertigt mit Genehmigung der Mathematisch-Naturwissenschaftlichen Fakultat¨ der Rheinischen Friedrich-Wilhelms Universitat¨ Bonn. Diese Dissertation ist auf dem Hochschulschriftenserver der ULB Bonn http://hss.ulb.uni-bonn.de/diss online elektronisch publiziert. Dekan: Prof. Dr. Armin B. Cremers 1. Referent: Prof. Dr. Reinhard Klein 2. Referent: Prof. Dr. Andreas Weber Tag der Promotion: 25.09.2008 Erscheinungsjahr: 2008 I To the memory of my father To my parents, for making all of this possible. II III Acknowledgements “Standing on the shoulders of giants” - Isaac Newton once wrote, and this sentence describes how I feel about the support many people have given me during the writing of this thesis. Acknowledging their support here is beyond doubt not enough to express my sincere appreciation for their help, yet, I hope they know what their backing has meant to me. First and foremost, I must thank my advisor Prof. Dr. Reinhard Klein, whose inspi- ration, patience and guidance made writing this thesis possible. His occasional nudges were also necessary to keep me on the right track and for this I cannot be grateful enough. I would like to thank
    [Show full text]
  • Opengl Shading Languag 2Nd Edition (Orange Book)
    OpenGL® Shading Language, Second Edition By Randi J. Rost ............................................... Publisher: Addison Wesley Professional Pub Date: January 25, 2006 Print ISBN-10: 0-321-33489-2 Print ISBN-13: 978-0-321-33489-3 Pages: 800 Table of Contents | Index "As the 'Red Book' is known to be the gold standard for OpenGL, the 'Orange Book' is considered to be the gold standard for the OpenGL Shading Language. With Randi's extensive knowledge of OpenGL and GLSL, you can be assured you will be learning from a graphics industry veteran. Within the pages of the second edition you can find topics from beginning shader development to advanced topics such as the spherical harmonic lighting model and more." David Tommeraasen, CEO/Programmer, Plasma Software "This will be the definitive guide for OpenGL shaders; no other book goes into this detail. Rost has done an excellent job at setting the stage for shader development, what the purpose is, how to do it, and how it all fits together. The book includes great examples and details, and good additional coverage of 2.0 changes!" Jeffery Galinovsky, Director of Emerging Market Platform Development, Intel Corporation "The coverage in this new edition of the book is pitched just right to help many new shader- writers get started, but with enough deep information for the 'old hands.'" Marc Olano, Assistant Professor, University of Maryland "This is a really great book on GLSLwell written and organized, very accessible, and with good real-world examples and sample code. The topics flow naturally and easily, explanatory code fragments are inserted in very logical places to illustrate concepts, and all in all, this book makes an excellent tutorial as well as a reference." John Carey, Chief Technology Officer, C.O.R.E.
    [Show full text]
  • A Load-Balancing Strategy for Sort-First Distributed Rendering
    A load-balancing strategy for sort-first distributed rendering Frederico Abraham, Waldemar Celes, Renato Cerqueira, Joao˜ Luiz Campos Tecgraf - Computer Science Department, PUC-Rio Rua Marquesˆ de Sao˜ Vicente 225, 22450-900 Rio de Janeiro, RJ, Brasil ffabraham,celes,rcerq,[email protected] Abstract such algorithms, when applied to complex scenes, still de- mand graphics power that a single processor may not be In this paper, we present a multi-threaded sort-first dis- able to deliver. Examples of such scenarios include scenes tributed rendering system. In order to achieve load balance described by a dense and highly tessellated geometry set, among the rendering nodes, we propose a new partition- sophisticated per-pixel lighting algorithms and volume ren- ing scheme based on the rendering time of the previous dering. frame. The proposed load-balancing algorithm is very sim- The purpose of our research is to investigate the use of ple to be implemented and works well for both geometry- PC-based clusters for improving the rendering performance and rasterization-bound models. We also propose a strat- of such complex scenes, delivering the frame rate usually egy to assign tiles to rendering nodes that effectively uses required by virtual-reality applications. This goal can be the available graphics resources, thus improving rendering achieved by combining the graphics power of a set of PCs performance. equipped with graphics accelerators. Although PC clusters have also been used for supporting high resolution multi- display rendering systems [2, 12, 14, 13], in this paper we focus on the use of a PC cluster for improving rendering 1.
    [Show full text]
  • Rapid Prototyping for Virtual Environments
    Old Dominion University ODU Digital Commons Electrical & Computer Engineering Theses & Dissertations Electrical & Computer Engineering Winter 2008 Rapid Prototyping for Virtual Environments Emre Baydogan Old Dominion University Follow this and additional works at: https://digitalcommons.odu.edu/ece_etds Part of the Computer Sciences Commons, and the Electrical and Computer Engineering Commons Recommended Citation Baydogan, Emre. "Rapid Prototyping for Virtual Environments" (2008). Doctor of Philosophy (PhD), Dissertation, Electrical & Computer Engineering, Old Dominion University, DOI: 10.25777/pb9g-mv96 https://digitalcommons.odu.edu/ece_etds/45 This Dissertation is brought to you for free and open access by the Electrical & Computer Engineering at ODU Digital Commons. It has been accepted for inclusion in Electrical & Computer Engineering Theses & Dissertations by an authorized administrator of ODU Digital Commons. For more information, please contact [email protected]. RAPID PROTOTYPING FOR VIRTUAL ENVIRONMENTS by Emre Baydogan B.S. June 1999, Marmara University, Turkey M.S. June 2001, Marmara University, Turkey A Dissertation Submitted to the Faculty of Old Dominion University in Partial Fulfillment of the Requirement for the Degree of DOCTOR OF PHILOSOPHY ELECTRICAL AND COMPUTER ENGINEERING OLD DOMINION UNIVERSITY December 2008 Lee A. Belfore, H (Director) K. Vijayan Asari Jesmca R. Crouch ABSTRACT RAPID PROTOTYPING FOR VIRTUAL ENVIRONMENTS Emre Baydogan Old Dominion University, 2008 Director: Dr. Lee A. Belfore, II Development of Virtual Environment (VE) applications is challenging where appli­ cation developers are required to have expertise in the target VE technologies along with the problem domain expertise. New VE technologies impose a significant learn­ ing curve to even the most experienced VE developer. The proposed solution relies on synthesis to automate the migration of a VE application to a new unfamiliar VE platform/technology.
    [Show full text]
  • Data Management for Augmented Reality Applications
    Technische Universitat¨ Munchen¨ c c c c Fakultat¨ fur¨ Informatik c c c c c c c c c c c c Diplomarbeit Data Management for Augmented Reality Applications ARCHIE: Augmented Reality Collaborative Home Improvement Environment Marcus Tonnis¨ Technische Universitat¨ Munchen¨ c c c c Fakultat¨ fur¨ Informatik c c c c c c c c c c c c Diplomarbeit Data Management for Augmented Reality Applications ARCHIE: Augmented Reality Collaborative Home Improvement Environment Marcus Tonnis¨ Aufgabenstellerin: Prof. Gudrun Klinker, Ph.D. Betreuer: Dipl.-Inf. Martin Bauer Abgabedatum: 15. Juli 2003 Ich versichere, daß ich diese Diplomarbeit selbstandig¨ verfaßt und nur die angegebenen Quellen und Hilfsmittel verwendet habe. Munchen,¨ den 15. Juli 2003 Marcus Tonnis¨ Zusammenfassung Erweiterte Realitat¨ (Augmented Reality, AR) ist eine neue Technologie, die versucht, reale und virtuelle Umgebungen zu kombinieren. Gemeinhin werden Brillen mit eingebauten Computerdisplays benutzt um eine visuelle Er- weiterung der Umgebung des Benutzers zu erreichen. In das Display der Brillen, die Head Mounted Displays genannt werden, konnen¨ virtuelle Objekte projiziert werden, die fur¨ den Benutzer ortsfest erscheinen. Das am Lehrstuhl fur¨ Angewandte Softwaretechnik der Technischen Universitat¨ Munchen¨ angesiedelte Projekt DWARF versucht, Methoden des Software Engineering zu benutzen, um durch wiederverwendbare Komponenten die prototypische Implementierung neuer Komponenten zu beschleunigen. DWARF besteht aus einer Sammlung von Softwarediensten, die auf mobiler verteilter Hardware agieren und uber¨ drahtlose oder fest verbundene Netzwerke miteinander kom- munizieren konnen.¨ Diese Kommunikation erlaubt, personalisierte Komponenten mit einge- betteten Diensten am Korper¨ mit sich zu fuhren,¨ wahrend¨ Dienste des Umfeldes intelligente Umgebungen bereitstellen konnen.¨ Die Dienste erkennen sich gegenseitig und konnen¨ dy- namisch kooperieren, um gewunschte¨ Funktionalitat¨ zu erreichen, die fur¨ Augmented Rea- lity Anwendungen gewunscht¨ ist.
    [Show full text]
  • Cross-Segment Load Balancing in Parallel Rendering
    EUROGRAPHICS Symposium on Parallel Graphics and Visualization (2011), pp. 1–10 N.N. and N.N. (Editors) Cross-Segment Load Balancing in Parallel Rendering Fatih Erol1, Stefan Eilemann1;2 and Renato Pajarola1 1Visualization and MultiMedia Lab, Department of Informatics, University of Zurich, Switzerland 2Eyescale Software GmbH, Switzerland Abstract With faster graphics hardware comes the possibility to realize even more complicated applications that require more detailed data and provide better presentation. The processors keep being challenged with bigger amount of data and higher resolution outputs, requiring more research in the parallel/distributed rendering domain. Optimiz- ing resource usage to improve throughput is one important topic, which we address in this article for multi-display applications, using the Equalizer parallel rendering framework. This paper introduces and analyzes cross-segment load balancing which efficiently assigns all available shared graphics resources to all display output segments with dynamical task partitioning to improve performance in parallel rendering. Categories and Subject Descriptors (according to ACM CCS): I.3.2 [Computer Graphics]: Graphics Systems— Distributed/network graphics; I.3.m [Computer Graphics]: Miscellaneous—Parallel Rendering Keywords: Dynamic load balancing, multi-display systems 1. Introduction of massive pixel amounts to the final display destinations at interactive frame rates. The graphics pipes (GPUs) driving As CPU and GPU processing power improves steadily, so the display array, however, are typically faced with highly and even more increasingly does the amount of data to uneven workloads as the vertex and fragment processing cost be processed and displayed interactively, which necessitates is often very concentrated in a few specific areas of the data new methods to improve performance of interactive massive and on the display screen.
    [Show full text]
  • Opensg Starter Guide 1.2.0
    OpenSG Starter Guide 1.2.0 Generated by Doxygen 1.3-rc2 Wed Mar 19 06:23:28 2003 Contents 1 Introduction 3 1.1 What is OpenSG? . 3 1.2 What is OpenSG not? . 4 1.3 Compilation . 4 1.4 System Structure . 5 1.5 Installation . 6 1.6 Making and executing the test programs . 6 1.7 Making and executing the tutorials . 6 1.8 Extending OpenSG . 6 1.9 Where to get it . 7 1.10 Scene Graphs . 7 2 Base 9 2.1 Base Types . 9 2.2 Log . 9 2.3 Time & Date . 10 2.4 Math . 10 2.5 System . 11 2.6 Fields . 11 2.7 Creating New Field Types . 12 2.8 Base Functors . 13 2.9 Socket . 13 2.10 StringConversion . 16 3 Fields & Field Containers 17 3.1 Creating a FieldContainer instance . 17 3.2 Reference counting . 17 3.3 Manipulation . 18 3.4 FieldContainer attachments . 18 ii CONTENTS 3.5 Data separation & Thread safety . 18 4 Image 19 5 Nodes & NodeCores 21 6 Groups 23 6.1 Group . 23 6.2 Switch . 23 6.3 Transform . 23 6.4 ComponentTransform . 23 6.5 DistanceLOD . 24 6.6 Lights . 24 7 Drawables 27 7.1 Base Drawables . 27 7.2 Geometry . 27 7.3 Slices . 35 7.4 Particles . 35 8 State Handling 37 8.1 BlendChunk . 39 8.2 ClipPlaneChunk . 39 8.3 CubeTextureChunk . 39 8.4 LightChunk . 39 8.5 LineChunk . 39 8.6 PointChunk . 39 8.7 MaterialChunk . 40 8.8 PolygonChunk . 40 8.9 RegisterCombinersChunk .
    [Show full text]
  • A Survey of Technologies for Building Collaborative Virtual Environments
    The International Journal of Virtual Reality, 2009, 8(1):53-66 53 A Survey of Technologies for Building Collaborative Virtual Environments Timothy E. Wright and Greg Madey Department of Computer Science & Engineering, University of Notre Dame, United States Whereas desktop virtual reality (desktop-VR) typically uses Abstract—What viable technologies exist to enable the nothing more than a keyboard, mouse, and monitor, a Cave development of so-called desktop virtual reality (desktop-VR) Automated Virtual Environment (CAVE) might include several applications? Specifically, which of these are active and capable display walls, video projectors, a haptic input device (e.g., a of helping us to engineer a collaborative, virtual environment “wand” to provide touch capabilities), and multidimensional (CVE)? A review of the literature and numerous project websites indicates an array of both overlapping and disparate approaches sound. The computing platforms to drive these systems also to this problem. In this paper, we review and perform a risk differ: desktop-VR requires a workstation-class computer, assessment of 16 prominent desktop-VR technologies (some mainstream OS, and VR libraries, while a CAVE often runs on building-blocks, some entire platforms) in an effort to determine a multi-node cluster of servers with specialized VR libraries the most efficacious tool or tools for constructing a CVE. and drivers. At first, this may seem reasonable: different levels of immersion require different hardware and software. Index Terms—Collaborative Virtual Environment, Desktop However, the same problems are being solved by both the Virtual Reality, VRML, X3D. desktop-VR and CAVE systems, with specific issues including the management and display of a three dimensional I.
    [Show full text]
  • Chromium Renderserver: Scalable and Open Remote Rendering Infrastructure Brian Paul, Member, IEEE, Sean Ahern, Member, IEEE, E
    1 Chromium Renderserver: Scalable and Open Remote Rendering Infrastructure Brian Paul, Member, IEEE, Sean Ahern, Member, IEEE, E. Wes Bethel, Member, IEEE, Eric Brug- ger, Rich Cook, Jamison Daniel, Ken Lewis, Jens Owen, and Dale Southard Abstract— Chromium Renderserver (CRRS) is software infrastruc- ture that provides the ability for one or more users to run and view image output from unmodified, interactive OpenGL and X11 applications on a remote, parallel computational platform equipped with graphics hardware accelerators via industry-standard Layer 7 network proto- cols and client viewers. The new contributions of this work include a solution to the problem of synchronizing X11 and OpenGL command streams, remote delivery of parallel hardware-accelerated rendering, and a performance anal- ysis of several different optimizations that are generally applicable to a variety of rendering architectures. CRRS is fully operational, Open Source software. Index Terms— remote visualization, remote rendering, parallel rendering, virtual network computer, collaborative Fig. 1. An unmodified molecular docking application run in parallel visualization, distance visualization on a distributed memory system using CRRS. Here, the cluster is configured for a 3x2 tiled display setup. The monitor for the “remote I. INTRODUCTION user machine” in this image is the one on the right. While this example has “remote user” and “central facility” connected via LAN, The Chromium Renderserver (CRRS) is software in- the typical use model is where the remote user is connected to the frastructure that provides access to the virtual desktop central facility via a low-bandwidth, high-latency link. Here, we see the complete 4800x2400 full-resolution image from the application on a remote computing system.
    [Show full text]
  • Hybrid Sort-First and Sort-Last Parallel Rendering with a Cluster of Pcs
    Hybrid Sort-First and Sort-Last Parallel Rendering with a Cluster of PCs Rudrajit Samanta, Thomas Funkhouser, Kai Li, and Jaswinder Pal Singh Princeton University Abstract frequent basis as faster versions become available from any hardware vendor. We investigate a new hybrid of sort-first and sort-last approach for parallel polygon rendering, using as a target platform a clus- Modularity & flexibility: Networked systems in which com- ter of PCs. Unlike previous methods that statically partition the 3D puters communicate only via network protocols, allow PCs to model and/or the 2D image, our approach performs dynamic, view- be added and removed from the system easily, and they can dependent and coordinated partitioning of both the 3D model and even be heterogeneous. Network protocols also allow spe- the 2D image. Using a specific algorithm that follows this approach, cific rendering processors to be accessed directly by remote we show that it performs better than previous approaches and scales computers attached to the network, and the processors can be better with both processor count and screen resolution. Overall, our used for other computing purposes when not in use for high- algorithm is able to achieve interactive frame rates with efficiencies performance graphics. of 55.0% to 70.5% during simulations of a system with 64 PCs. While it does have potential disadvantages in client-side process- Scalable capacity: The aggregate hardware compute, stor- ing and in dynamic data management—which also stem from its age, and bandwidth capacity of a PC cluster grows linearly dynamic, view-dependent nature—these problems are likely to di- with increasing numbers of PCs.
    [Show full text]