dc.description.abstract | The continuing commoditization of the computer market has precipitated a qualitative change. Increasingly powerful processors, large memories, big harddisk, high-speed networks, and fast 3D rendering hardware are now affordable without a large capital outlay. A new class of computers, dubbed Personal Workstations, has joined the traditional technical workstation as a platform for 3D modeling and rendering. In this tutorial, attendees will learn how to understand and leverage both technical and personal workstations as components of parallel rendering systems. The goal of the tutorial is twofold: Attendees will thoroughly understand the important characteristics workstations architectures. We will present an overview of different workstation architectures, with special emphasis on current technical and personal workstations, addressing both single-processors as well as SMP architectures. We will also introduce important methods of programming in parallel environment with special attention how such techniques apply to developing parallel renderers. Attendees will learn about different approaches to implement parallel renderers. The tutorial will cover parallel polygon rendering and parallel volume rendering. We will explain the underlying concepts of workload characterization, workload partitioning, and static, dynamic, and adaptive load balancing. We will then apply these concepts to characterize various parallelization strategies reported in the literature for polygon and volume rendering. We abstract from the actual implementation of these strategies and instead focus on a comparison of their benefits and drawbacks. Case studies will provide additional material to explain the use of these techniques. The tutorial will be structured into two main sections: We will first discuss the fundamentals of parallel programming and parallel machine architectures. Topics include message passing vs. shared memory, thread programming, a review of different SMP architectures, clustering techniques, PC architectures for personal workstations, and graphics hardware architectures. The second section builds on this foundation to describe key concepts and particular algorithms for parallel polygon rendering and parallel volume rendering. | en_US |