html5-img
1 / 33

Graphics Hardware and Software using Linux

Graphics Hardware and Software using Linux. Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group Boston University. Introduction. Agenda Why Linux/Intel? Hardware Video Cards Processors I/O and Memory Software System (OS, X, drivers)

keegan-rice
Télécharger la présentation

Graphics Hardware and Software using Linux

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Graphics Hardware and Software using Linux Ray Gasser, rayg@bu.edu Graphics Programmer/Analyst Scientific Computing and Visualization Group Boston University

  2. Introduction Agenda • Why Linux/Intel? • Hardware • Video Cards • Processors • I/O and Memory • Software • System (OS, X, drivers) • Graphics APIs and Libraries • Development environments • Resources • Issues • Future • Conclusions

  3. Why Linux/Intel? SGI InfiniteReality3 210 million polygons per second 896 megapixels /sec pixel fill rate per pipe (up to 7.2 gigapixels) 1-16 graphic pipelines per system 24-bit floating-point Z buffer 48-bit RGBA color AA 8X (multisampling) 1-8 channels per pipe 256MB texture memory per pipe (up to 1 GB texture memory) 80MB - 320MB frame buffer per pipe 11.2GB/sec - 716GB/sec system bandwidth MSRP $119,000.00 entry level (includes Onyx 300) http://www.sgi.com/visualization/onyx/3000/ir3

  4. Why Linux/Intel? ATI Radeon 9700 - latest consumer video card (linux drivers to come) 300 million triangles per second 2.6 gigapixel /sec fill rate (textured, AA, Z) 1 128-bit floating point graphics pipeline 24-bit floating-point Z buffer 128-bit fp RGBA color AA 2X/4X/6X (multisampling and supersampling) 2 channels (1 VGA, 1 DVI) 128MB quad channel DDR SDRAM frame buffer 2.1GB/sec system bandwidth AGP 3.0 bus (2x/4x/8x) MSRP $399.00 (you have to supply the PC) http://www.ati.com/products/pc/radeon9700/index.html http://www.anandtech.com/video/showdoc.html?i=1656 http://www.tomshardware.com/graphic/02q3/020718

  5. Why Linux/Intel?

  6. Why Linux/Intel? Dave Pape's SPECglperf 3.1.2 results (Onyx2 IR vs PC) drawing display-listed, Z-buffered triangle strips, with varying triangle sizes http://www.evl.uic.edu/pape/papers/lowcost.spie02/node7.html

  7. Why Linux/Intel? Dave Pape's CAVE app benchmark (Onyx2 IR vs PC) http://www.evl.uic.edu/pape/papers/lowcost.spie02/node7.html

  8. Why Linux/Intel? • Graphics hardware cost/performance • Intel leader in CPU cost/performance • Open Source (large community, many projects) • UNIX (what you are used to)

  9. Hardware: Video Cards (current state) • Game driven • Large number of manufacturers • Low cost • GPU • Hardware T&L • Hardware Z buffer • Hardware AA • Texture support • Linux drivers

  10. Hardware: Video Cards (limitations) • limited number of channels (1 AGP slot) • limited texture memory • fill rate • precision* (16bit Z, 32 bit integer graphics pipe) • quality* (16bit color depth) • video Radeon R300*

  11. Hardware: Video Cards (consumer) • Pros • very low cost (<$500.00) • high performance • innovative: pixel/vertex shaders, shadow buffers, 3D textures • very fast production cycles (6 months) • Cons • poor precision (16bit Z, 32 bit integer graphics pipe) • poor quality (16bit color depth) • poor line drawing rates • poor AA • Examples • nVidia GeForce4 Ti • ATI Radeon 9700 • Matrox Parhelia

  12. Hardware: Video Cards (professional) • Pros • good precision/quality • good line drawing rates • good AA • fully accelerated OpenGL 1.2 • more memory • more hardware lights • overlay plane support • quad-buffered stereo • dual channel • application support and certification • Cons • performance about the same as consumer cards • price 2-3x high end consumer cards • lag (1 cycle) consumer cards in feature innovations

  13. Hardware: Video Cards (professional) • Examples • nVidia Quadro4 • ATI FireGL • 3DLabs Wildcat

  14. Hardware: Processors • 32 bit (Intel XEON, Intel Pentium4, AMD Athlon) • 64 bit coming (Intel Itanium2, AMD Opteron) • Pros • increased memory address space • higher precision at higher speed • Cons • data type size increases • greater application memory requirements • performance can degrade if buses not increased • cost >10x 32bit • very new • Cache L1, L2 • Number of processors (1, 2, or 4) • realtime applications require at least 2 processors

  15. Hardware: I/O and Memory • AGP 3.0 bus • (2x/4x/8x) • 2.1 GB/s bandwidth • Storage • ATA/100 • Ultra 160 SCSI • Ultra 320 SCSI • System Bus • 133MHz • 400MHz • Memory • DDR SDRAM • RDRAM (dual-channel) • Kernel supports up to 64GB of physical memory

  16. Software: System (Operating System) • Red Hat • RPM • capable installer • most apps certified for Red Hat • IBM • Itanium • Debian • user maintained/non-commercial • very stable • advanced package management • apt-get (Synaptic version reads RPM) • very good with dependencies • Hewlett-Packard

  17. Software: System (Operating System) • Debian • no release schedule (packages released when ready) • often behind other distributions (no KDE 3.0, no XFree86 4.0) • UnitedLinux • Caldera • Suse • Conectiva • TurboLinux

  18. Software: System (X and OpenGL) • X Windows XFree86 4.X • Direct Rendering Infrastructure (DRI) • direct access to graphics hardware • first used to create fast OpenGL implementations • integrates with Mesa (open source OpenGL) • OpenGL drivers • ATI • Radeon* open source DRI (Weather Channel funds TG) • FireGL closed source • nVidia • GeForce closed source unified driver • Quadro closed source unified driver *coming end 2002

  19. Software: System (X and OpenGL) • OpenGL drivers • Matrox • open source DRI (Precision Insight) • 3Dlabs • 3rd party, IBM, some open source DRI • 3rd Party • Xi Graphics http://www.xi-graphics.com • Tungsten Graphics http://www.tungstengraphics.com • Metrolink http://www.metrolink.com

  20. Software: Graphic APIs and Libraries • OpenGL (SGI SI* Open Source) v1.3 • software interface to graphics hardware • low level • hardware independent • distributed either as Mesa (part of XFree86) or with video card (e.g. nVidia) • GLX (SGI SI Open Source) • glue connecting OpenGL and X Windows • distributed with OpenGL • GLU (SGI SI Open Source) • OpenGL Utility Library • modeling features (quadratic surfaces, NURBS, curves) *SI Sample Implementation

  21. Software: Graphic APIs and Libraries • GLU (SGI SI Open Source) • SGI SI v1.3 GLU library replaces Mesa GLU • distributed separately from OpenGL • http://www.mesa3d.org/downloads/sgi.html • Glut (Open Source) • OpenGL Utility Toolkit • windowing toolkit (mouse, keyboard, menus, windows) • uses callbacks • abstracts native windowing system (X and GLX) • cross platform toolkit • above Xlib and GLX • distributed separately from OpenGL • http://www.opengl.org/developers/documentation/glut/index.html

  22. Software: Graphic APIs and Libraries • Open Inventor • OO toolkit built on top of OpenGL • standard file format • scene graphs • event model • SGI v2.1 http://oss.sgi.com/projects/inventor • open source sample implementation • Template Graphics Software v3.1 http://www.tgs.com • closed source • commercial product • higher performance • many enhancements (multi thread, volumetric rendering, multipipe, collision detection, stereo, etc.) • support for clusters coming

  23. Software: Graphic APIs and Libraries • OpenGL Performer v2.5 • high level API for creation of real-time visual simulations • built on top of OpenGL • high performance • closed source • commercial product http://www.sgi.com/software/performer http://www.sgi.com/software/performer/mailinglist.html

  24. Software: Development (compilers) • GNU gcc 2.X • GNU gcc 3.0 • P4 optimizers • C, C++, Objective C, Java, Fortran 77 • Intel Fortran and C/C++ v6.0 • Fortran 95 • substantial source and object code compatibility w GNU C • supports 3.0 ABI • P4, XEON, and Itanium optimizers • Absoft Pro Fortran v7.5 • Fortran 95 and Fortran 77 • P4 and AMD optimizers • graphical debugger

  25. Software: Development (compilers) • Portland Group Fortran and C/C++ v4.0 • Fortran 90 and Fortran 77 • P4 and AMD optimizers • graphical debugger

  26. Software: Development • Debuggers • gdb (GNU) • ldb (Intel) • valgrind (memory) • electric fence (memory) • spyGLass (OpenGL) • Profilers • gprof • cprof • vprof

  27. Software: Development • IDEs • RedHat GNUPro • Metroworks CodeWarrior • KDE Kdevelop • Borland Kylix (Delphi) • Code Forge • Windowing Toolkits • Qt Designer • gtk+ http://developer.gnome.org/ • FLTK • ICS BXpro (viewkit, RapidApp) http://developer.kde.org/tools/index.html http://www.codeforge.com http://developer.gnome.org http://www.trolltech.com http://www.ics.com

  28. Resources • Linux Documentation • http://www.tldp.org • http://www.linux.org • Open Source Repositories • http://freshmeat.net • http://sourceforge.net • http://oss.sgi.com/projects • http://www.gnu.org

  29. Resources • Graphics Resources • http://www.opengl.org • http://www.mesa3d.org • http://dri.sourceforge.net • http://www.xfree86.org • http://www.linux3d.org • http://www.sgi.com/software/software.html#linux

  30. Issues with Linux • Poor support (volunteer effort) • Lack of commercial applications (Office, Photoshop) • Too many cooks in the kitchen • Dependency Hell • Lack/delay of drivers (e.g. ATI Radeon 9700)

  31. Future • OpenGL 2.0, Cg • Programmability • vertex processing • fragment processing • image formats • multipass algorithms • flexible frame buffer config • offscreen rendering • control of texture memory • Microsoft • DirectX 9 • targeting Linux • owns much SGI's 3D patents

  32. Future • "Microsoft senior vice president Craig Mundie gave a speech at New York University in which Microsoft officially declared war on Linux.“ • "Silicon Graphics Inc has transferred much of its 3D graphics patents portfolio to Microsoft... sources close to the Mountain View are emphatic that these represent the bulk of SGI's 3D intellectual property assets, a view confirmed by documents disclosed to The Register. " http://www.theregister.co.uk/content/54/23708.html

  33. Conclusions Linux is a cost effective and rich environment for the development and deployment of computer graphics.

More Related