In this paper we present new functionality we added to the Chromium framework. When driving tiled displays using a sort-first configuration based on the Tilesort stream procession unit (SPU) the performance bottlenecks are the high utilization of the client host caused by the expensive sorting and bucketing of geometry and the high bandwidth consumption caused by a significant amount of redundant unicast transmissions. We addressed these problems with an implementation of a true point-to-multipoint connection type using UDP multicast. Based on this functionality we developed the so called OPT-SPU. This SPU replaces the widely used Tilesort-SPU in typical Sort-First environments. Tile-sorting and state differencing is not necessary because Multicasting allows us to send the geometry to all server nodes at once. Instead of tile-sorting a conventional frustum culling method is used to avoid needless server utilization caused by rendering of geometry outside their viewports. This approach leads to significant lower processor and memory load on the client and a very effective utilization of available network bandwidth. To avoid redundant transmissions of identical command sequences that are generated by the application several times we put a transparent stream cache into the multicast communication channel. In addition, frustum and hardware accelerated occlusion culling methods may be used to eliminate unnecessary transfer of invisible geometry. Finally, a software based method for synchronization of buffer swap operations at all servers was implemented. In a nutshell, for the first time an appropriate combination of our optimizations makes it possible to render large scenes synchronously on an arbitary number of tiles at nearly constant performance. Categories and Subject Descriptors (ACM CCS): I.3.2 [Computer Graphics]: Distributed/network graphics 1
To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.