skip to main content
article

The Direct3D 10 system

Published:01 July 2006Publication History
Skip Abstract Section

Abstract

We present a system architecture for the 4th generation of PC-class programmable graphics processing units (GPUs). The new pipeline features significant additions and changes to the prior generation pipeline including a new programmable stage capable of generating additional primitives and streaming primitive data to memory, an expanded, common feature set for all of the programmable stages, generalizations to vertex and image memory resources, and new storage formats. We also describe structural modifications to the API, runtime, and shading language to complement the new pipeline. We motivate the design with descriptions of frequently encountered obstacles in current systems. Throughout the paper we present rationale behind prominent design choices and alternatives that were ultimately rejected, drawing on insights collected during a multi-year collaboration with application developers and hardware designers.

Skip Supplemental Material Section

Supplemental Material

p724-blythe-high.mov

mov

45.8 MB

p724-blythe-low.mov

mov

16.9 MB

References

  1. Ati. 2005. Radeon X800 3D Architecture White Paper. http://www.ati.com/products/radeonx800/RadeonX800ArchitectureWhitePaper.pdf.Google ScholarGoogle Scholar
  2. Akeley, K. 1993. RealityEngine graphics. In Proceedings of ACM SIGGRAPH 1993. ACM Press, New York, NY, 109--116. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Blinn, J. F. 1990. The truth about texture mapping. IEEE Computer Graphics and Applications 10, 2, 78--83. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Buck, I. Foley, T., Horn, D., Sugerman, D., Fatahalian, K., Houstin, M., and Hanrahan, P. 2004. Brook for GPUs: Stream computing on graphics hardware. Transactions on Graphics 23, 3, 777--786. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Chan, E., Ng, R., Sen, P., Proudfoot, K., and Hanrahan, P. 2002. Efficient Partitioning of Fragment Shaders for Multipass Rendering on Programmable Graphics Hardware, In Graphics Hardware, 69--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Doggett, M., 2005. Xenos: XBox 360 GPU. GDC-E 2005, http://www.ati.com/developer/eg05-xenos-doggett-final.pdf.Google ScholarGoogle Scholar
  7. Gray, K. 2003. The Microsoft DirectX 9 Programmable Graphics Pipeline. Microsoft Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Haines, E. 2006. An Introductory Tour of Rendering. IEEE Computer Graphics and Applications 26, 1, 76--87. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Hakura, Z. S., and Gupta, A. 1997. The design and analysis of a cache architecture for texture mapping. ACM SIGARCH Computer Architecture News 25, 2, 108--120. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Ieee Computer Society. 1985. IEEE Standard for Binary Floating-Point Arithmetic. IEEE Std 754--1985.Google ScholarGoogle Scholar
  11. Igehy, H., Eldridge, M., and Hanrahan, P. 1999. Parallel Texture Caching. In Graphics Hardware, ACM Press, New York, NY, 95--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Kessenich, J., Baldwin, D., and Rost, R. 2004. The OpenGL Shading Language version 1.10.59. http://www.opengl.org/documentation/oglsl.html.Google ScholarGoogle Scholar
  13. Lindholm, E., Kilgard, M. J., and Moreton, H. 2001. A User-programmable vertex engine. In Proc. of SIGGRAPH 2001, ACM Press / ACM SIGGRAPH, 149--158. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Mark, W. R., Glanville, R. S., Akeley, K., and Kilgard, M. J. Cg: A system for programming graphics in a C-like language. Transactions on Graphics 22, 3, 2003, 896--907. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. McCabe, D., and Brothers, J. 1998. DirectX 6 Texture Map Compression. Game Developer Magazine 5, 8. 42--46.Google ScholarGoogle Scholar
  16. McCool, M. and Du Toit, S. 2004. Metaprogramming GPUs with Sh. A K Peters. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. McCormick P. S., Inman, J., Ahrens, J. P., Hansen, C., and Roth, G. 2004, Scout: A hardware-accelerated system for quantitatively driven visualization and analysis. In Proc. of IEEE Visualization, 171--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Microsoft Corp. 2002. High-level shader language. In DirectX 9.0 graphics. http://msdn.microsoft.com/directx.Google ScholarGoogle Scholar
  19. Microsoft Corp. 2006, Direct3D 10 Reference. In Direct3D 10 graphics. http://msdn.microsoft.com/directx.Google ScholarGoogle Scholar
  20. Montrym, J., and Moreton, H. 2005. The GeForce 6800. IEEE Micro 25, 2, 41--51. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Proudfoot, K., Mark, W. R., Tzvetkov, S., and Hanrahan, P. 2001. A real-time procedural shading system for programmable graphics hardware. In Proc. of SIGGRAPH 2001, ACM Press / ACM SIGGRAPH, 159--170. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Riffel, A., Lefohn, A. E., Vidimce, K., Leone, M., and Owens, J. D. 2004. Mio: Fast Multipass Partitioning via Priority-Based Instruction Scheduling. In Graphics Hardware, 35--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Rohlf, J. and Helman, J. 1994. IRIS Performer: a high performance multiprocessing toolkit for real-time 3D graphics. In Proc. of SIGGRAPH '94. ACM Press, New York, NY, 381--394. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Segal, M., and Akeley, K. 2004. The OpenGL Graphics System: A Specification (Version 2.0). http://www.opengl.org/documentation/spec.html.Google ScholarGoogle Scholar
  25. Tarditi, D., Puri, S., and Oglesby, J. 2005. Accelerator: simplified programming of graphics units for general-purpose uses via data parallelism. Technical Rerport, MSR-TR-2005-184.Google ScholarGoogle Scholar
  26. Everitt, C. and Kilgard, M. 2002. Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated Rendering. http://developer.nvidia.com.Google ScholarGoogle Scholar
  27. Hirche, J., Ehlert, A. Guthe, S. and Doggett, M. 2004.Hardware accelerated per-pixel displacement mapping. In Proc. of Graphics Interface 2004, 153--160. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The Direct3D 10 system

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Graphics
          ACM Transactions on Graphics  Volume 25, Issue 3
          July 2006
          742 pages
          ISSN:0730-0301
          EISSN:1557-7368
          DOI:10.1145/1141911
          Issue’s Table of Contents

          Copyright © 2006 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 July 2006
          Published in tog Volume 25, Issue 3

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader