Jump to content

Intel GMA

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by SNEST2 (talk | contribs) at 03:30, 14 November 2007. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Integreated graphics really suck!

GMA X3000 on Intel DG965WHMKR motherboard

The Intel Graphics Media Accelerator, or GMA, is Intel's current line of graphics processors (GPUs) built into various motherboard chipsets.

These integrated graphics solutions allow a computer to be built without a separate graphics card, which can lead to dramatically lower overall costs and lower power consumption. They are commonly found on low-priced notebook and desktop computers. They rely on the computer's main memory for storage, which imposes a performance penalty as both the CPU and GPU have to access memory over the same bus.

History

The GMA line of GPUs replaces the earlier “Extreme Graphics”, Intel’s first series of integrated graphics chips, and Intel740 line, which were discrete units in the form of AGP cards.

The original architecture of GMA systems supported only a few functions in hardware, and relied on the host CPU to handle at least some of the graphics pipeline, further decreasing performance. However, with the introduction of Intel’s 4th generation of GMA architecture (GMA X3000) in 2006, many of the functions are now built into the hardware, providing an increase in performance. The 4th generation of GMA combines fixed function capabilities with a threaded array of programmable executions units, providing advantages to both graphics and video performance. Many of the advantages of the new GMA architecture come from the ability to flexibly switch as needed between executing graphics-related tasks or video-related tasks. While GMA performance has been widely criticized in the past as being too slow for computer games, the latest GMA generation should ease many of those concerns for the casual gamer.

Despite similarities, GMA is not based on the PowerVR technology Intel licensed from Imagination Technologies. Intel uses the low-power PowerVR MBX designs in chipsets that support their XScale platform. With the sale of XScale in 2006, it is not clear if Intel will continue to use PowerVR systems with their x86-based XScale replacements, although they have licensed the PowerVR SGX from Imagination Technologies, which is the more powerful successor to the MBX.

Intel has reportedly begun working on a new series of discrete graphics hardware products, under the codename Larrabee.

Hardware: graphics cores

GMA 900

The GMA 900 was the first graphics core produced under Intel's Graphics Media Accelerator product name, and was incorporated in the Intel 910G, 915G, and 915Gx chipsets. The GMA 900 was a notable upgrade from the previous Extreme 3D graphics processors, but was still relatively basic compared to other graphics solutions. For example, its 3D graphics core lacks support for hardware transform and lighting and the similar vertex shader technologies, an important part of the 3D acceleration pipeline. It instead emulated this functionality in software, reducing compatibility and performance with 3D games.

The GMA 900 has 4 pixel shaders supporting DirectX shader model 2.0, and 4 pixel pipelines running at a maximum core clock rate of 333 MHz, depending on the chip set being used. This allows it a peak pixel fillrate performance of 1333 MPixel/s. Like its predecessors (i810/815/845G), the GMA 900 has hardware support for MPEG-2 motion compensation, color-space conversion and DirectDraw overlay.

Memory controller can address maximum 224MiB memory.

The processor uses different separate clock generators for display and render cores.

Display unit includes a 400MHz RAMDAC, 2 25-200Mpixel/s serial DVO ports, 2 display controllers. In mobile chip sets, up to 2 18-bit 25-112MHz LVDS transmitters are included.

GMA 950

The GMA 950 is Intel's second-generation Graphics Media Accelerator graphics core, which was also referred by Intel as 'Gen 3.5 Integrated Graphics Engine' in datasheets. It is used in the Intel 940GML, 945G, 945GU and 945GT system chipsets. The amount of video-decoding hardware has increased; VLD, iDCT, and dual video overlay windows are now handled in hardware. The maximum core clock is up to 400 MHz (on Intel 945G, 945GC, 945GZ), boosting pixel fill-rate to a theoretical 1600 megapixels/s.

The GMA 950 shares the same architectural weakness as the GMA 900: no hardware geometry processing. Neither basic (DX7) hardware transform and lighting[1], nor more advanced vertex shaders (DX8 and later) are handled in the GMA hardware.

GMA 3000

The 946GZ, Q965 and Q963 chipsets use GMA 3000.[2][3] The GMA 3000 3D core is very similar to the X3000, however it has pixel and vertex shaders, which only supports shader model 2.0 features. In addition, hardware video acceleration such as hardware-based iDCT computation, ProcAmp (video stream independent color correction), VC-1 decoding may not be implemented in hardware. Of the GMA 3000-equipped chipsets, only Q965 retains dual independent display support. The core speed is rated 400 MHz with 1.6 Gpixel/s fill rate in datasheets, but was listed as 667MHz core in white paper[4].

Memory controller can now address maximum 256MiB memory.

The integrated serial DVO ports has increased top speed to 270Mpixel/s.

GMA 3100

The G31, G33, Q33 and Q35 chipsets use the GMA 3100. The 3D core is very similar to the older GMA 3000. However, the RAMDAC is reduced to 350MHz, and the DVO ports were reduced to 225Mpixel/s.

GMA X3000

The GMA X3000 represents a dramatic architectural change from previous GMA iterations. Most notably, X3000's underlying 3D rendering hardware is organized as a unified shader processor consisting of 8 scalar execution units. Each pipeline can process video, vertex, or texture operations. A central scheduler dynamically dispatches threads to pipeline resources, to maximize rendering throughput (and decrease the impact of individual pipeline stalls.) However, due to the scalar nature of the execution units, they can only process data on a single pixel component at a time.[5] GMA X3000's shader supports vertex and pixel Shader Model 3.0 features. Specifically, shading precision was increased to 32-bit floating point per vector. Anisotropic filtering uses up to 16 samples instead of 4 in previous generation.

The processor consists of different clock domains, meaning that the entire chip does not operate the same clock speed. This causes some difficulty when measuring peak throughput of its various functions. Further adding to the confusion, it is listed as 667MHz in Intel G965 white paper, but listed as 400MHz in Intel G965 datasheet. There are various rules that define the IGP's processing capabilities. Most of the time, the core is capable of 1.6 pixels and 3.2 textures per clock cycle. It has a maximum potential pixel fill-rate of 2.0 pixels per clock, but only during a "clear" cycle. Similarly, while it can process depth operations at 4 pixels per clock, with texturing this falls to 3.2 pixels per clock. Resulting theoretical fill-rates are 1067 megapixels/s and 2133 megatexel/s at the X3000's overall 667 MHz.[5]

Intel again updated the video processing capabilities of their graphics product. The X3000 features WMV9 (VC-1) video acceleration. VC-1 acceleration only accelerates deblocking and motion compensation.

Memory controller can now address maximum 384MB memory according to white paper, but only 256MB in datasheet.

GMA X3000 is used Intel G965 north bridge controller.

GMA X3100

The GMA X3100 is the mobile version of the GMA X3000 used in the Intel GL960 and GM965 chipsets. The X3100 supports hardware transform and lighting, up to 128 programmable shader units, and up to 384 MB memory. Its display cores can run up to 333 MHz on GM965 and 320 MHz on GM960. Its render cores can run up to 500 MHz on GM965 and 400 MHz on GM960. The X3100 display unit includes a 300MHz RAMDAC, 2 25-112MHz LVDS transmitters, 2 DVO encoders, and a TV encoder. They are also now included in the new Apple Macbook range, replacing the GMA 950 chips. They can also support directX-10

GMA X3500

GMA X3500 is the name of the version used with the G35 ("Bearlake") chipset.[6]

The shaders support shader model 4.0 features.

Display unit is derived from GMA X3000.

GMA X4500

As part of the G45 ("Eaglelake-G") chipset and manufactured in 65nm technology. Like the X3500, X4500 will support DirectX 10, Shader Model 4.0 features. Intel is aiming this solution to be 3x faster than the GMA 3100 (G33) in 3DMark06 performance. In addition to the increase in performance, a more advanced version of Intel Clear Video technology as well as HDCP support will be integrated, allowing for smooth HD-DVD and Blu-Ray playback. The planned release for the X4500 is Q2 2008.[7] [8]

Table of GMA graphics cores and chipsets

Graphics core GMA 900 GMA 950 GMA 3000 GMA 3100 GMA X3000 GMA X3100 GMA X3500
Chipset 910GL, 915G, 915GL, 915GV 915GM 945GU 945GM 945G, 945GZ 946GZ Q963 Q965 G31, Q33, Q35 G33 G965 GM965, GL960 G35
Clock speed (MHz) 333[9] 200[10] 133[11] 250[10] 400[9] 667[2]/400[12] 667 [3] 667 [3] 400[13] 667 [3] 500, 400 [14] 400
Vertex shader model 2.0 3.0 4.0
Pixel shader model 2.0 2.0 2.0 3.0 4.0
Pixel Pipelines 4 NA 4 NA
Unified shader processors NA ? NA 8 10 (?)
Hardware vertex shaders No No No Yes
Peak memory bandwidth (GB/s) 8.5 10.7 12.8 17.1 12.8 12.6[15]
Max video memory (MB) 128[16] 192[17]/224[18] 256 384
OpenGL support 1.4 [2] 1.5 2.0
DirectX API support 9.0 10.0 [18]
MPEG-2 Hardware Acceleration MC VLD + iDCT + MC
VC-1 Hardware Acceleration No MC (for WMV9 only) MC + In loop filter

This table is derived from these sources: [2] [3] [5] [18] [17] [16] [10] [12] [9] [13] [19] [11] [15] [20] [14]

Notes:

Software support

Mac OS X

Mac OS X 10.4 supports the GMA 950, since it was used in previous revisions of the MacBook (but not MacBook Pros) and even some 17-inch iMacs[21]. It has been used in all Intel-based Mac minis. [22]The recently released Mac OS X 10.5 Leopard contains drivers for the GMA X3100, which are used in the latest revision of the MacBook range.[23]

On Nov 1st. 2007, Apple released the updated MacBook which includes the X3100 graphics core. [24][25]

FreeBSD

FreeBSD 7.0 supports all Intel graphic chipsets, including G965/Q965/GM965/GME965/GME945. Support for G33/Q35/Q33 is also included, but disabled due to lack of testing.[26]

Linux

Intel has had a long history of producing or commissioning open source drivers for its graphics chips, with all chipsets dating back to the i810 having open 2D and 3D drivers for Linux. It is the only major graphics hardware vendor to do so: for an analysis by company see Graphics hardware and FOSS.

In August 2006, Intel added support to the open-source X.Org/XFree86 drivers for the latest 965 series that include the GMA (X)3000 core.[27] These drivers were developed for Intel by Tungsten Graphics.[28]

In May 2007, version 2.0 of the driver (xorg-video-intel) was released, which added support for the 965GM chipset. In addition, the 2.0 driver added native video mode programming support for all chipsets from i830 forward. This version added support for automatic video mode detection and selection, monitor hot plug, dynamic extended and merged desktops and per-monitor screen rotation. These features are built in to the X.Org 7.3 X server release and will eventually be supported across most of the open source X.Org video drivers.[29] Version 2.1, released in July 2007, added support for the G33, Q33 and Q35 chipsets.[30]

As is common for X.Org drivers on Linux, the license is a combination of GPL (for the Linux kernel parts) and MIT (for all other parts).[31]

intel_hal.so

The driver source contains references to a currently-unavailable binary named "intel_hal.so". It is entirely optional, and the advantages are not clear; ostensibly they are increased performance and/or additional features. References in the open source code indicate that it contains or contained (at least) Macrovision support and some minor, optional 3D optimization routines. Calls to the Macrovision code inside the binary were later removed from the 2D driver.[32][33]

Microsoft Windows

GMA 900

This IGP is capable of running Windows Vista’s Aero interface and certified as DirectX 9 compliant. However no WDDM driver has been made publicly available for this chipset. This is claimed to be due to the lack of a "hardware scheduler" in the GMA chipsets.[34]

Many owners of GMA900 hardware believed they would be able to run Aero on their systems, as early release candidates of Vista permitted XPDM drivers to run Aero. However, Intel contends that Microsoft's final specs for Aero/WDDM certification did not permit releasing a WDDM driver for GMA900 (due to issues with the hardware scheduler, as mentioned above), so when the final version of Vista was released, no WDDM driver was released.[35] The last minute pulling of OpenGL capabilities from the GMA drivers for Windows Vista leaves the large number of GMA based workstations unable to perform basic 3D hardware acceleration with OpenGL.

GMA 950

This IGP is capable of running Windows Vista's Aero interface. Drivers have shipped with Windows Vista since mid-2006 betas.

GMA X3000

T&L and Vertex Shaders 3.0 are supported by Intel's newest 15.6 drivers for Windows Vista as of September 2 2007. XP support for VS3 and T&L was introduced on August 10 2007. Intel announced in March 2007 that beta drivers would be available in June of 2007.[36] [37] On June 1st 2007 "pre-beta" (or Early Beta) drivers were released for Windows XP (but not for Vista).[38]. Beta drivers for Vista and XP were released on June 19th.[39]

Intel has released production version drivers for 32-bit and 64-bit Windows Vista that enable the Aero graphics. Intel expects to deliver DirectX 10 support in the first quarter of 2008 "if the process goes well."[40]

Modern gaming

Because many of the features of these graphics sub-systems rely on software emulation, this can lead to 3D performance issues (slow vertex shaders) and incompatibility with some games. Some games and 3D applications do not regard intel GPUs as hardware accelerated. The new GMA X3000 and X3100 will seek to remedy these problems with full hardware support for modern gaming architecture.

Intel, not oblivious to these problems, has put up a page with 'Known Issues & Solutions':

For Intel Graphics Media Acelerator Software Development concerns, questions may be made at http://softwareforums.intel.com/ISN/Community/en-US/Forums/ in the Integrated Graphics Software Development Forum.

References

  1. ^ Case, Loyd. Intel GMA950 Integrated Graphics Core, Extremetech, May 31, 2005.
  2. ^ a b c d "Product brief: The Intel 946GZ Express Chipset" (PDF). Retrieved 2007-06-28.
  3. ^ a b c d e "Intel's Next Generation Integrated Graphics Architecture – Intel® Graphics Media Accelerator X3000 and 3000" (PDF). Retrieved 2007-06-08.
  4. ^ "Intel's Next Generation Integrated Graphics Architecture - Intel® Graphics Media Accelerator X3000 and 3000 White Paper". Retrieved 2007-10-19.
  5. ^ a b c Gasior, Geoff. Intel's G965 Express chipset, Tech Report, April 5, 2007.
  6. ^ Lars-Göran Nilsson. "Fudzilla: Intel G35 graphics engine named". Retrieved 2007-05-31.
  7. ^ "Intel previews integrated DirectX 10 graphics core". Retrieved 2007-11-07.
  8. ^ "Intel abandoned G35? G45 IGP chipset specs". Retrieved 2007-11-07.
  9. ^ a b c Case, Loyd. Intel GMA950 Integrated Graphics Core, Extremetech, May 31, 2005.
  10. ^ a b c Romanchenko, Vladimir. Intel Centrino Duo: new-generation mobility, Digital Daily, January 24, 2006.
  11. ^ a b [http://download.intel.com/design/mobile/datashts/30921904.pdf Mobile Intel® 945 Express Chipset Family Datasheet], Intel, accessed July3, 2007.
  12. ^ a b Intel® 946 Express Chipset Family Datasheet, Intel, accessed June 28, 2007.
  13. ^ a b Intel® 3 Series Chipsets Datasheet, Intel, accessed June 29, 2007.
  14. ^ a b Mobile Intel® 965 Express Chipset Family Datasheet, Intel, accessed August16, 2007.
  15. ^ a b Intel® G35 Express Chipset Datasheet, Intel, accessed August16, 2007.
  16. ^ a b Intel® Graphics Media Accelerator 900, Intel, accessed June 28, 2007.
  17. ^ a b Intel® GMA 950 Graphics Product Brief, Intel, accessed June 28, 2007.
  18. ^ a b c "Intel Graphics - Built for mainstream Desktop and Mobile PC Users" (PDF). Retrieved 2007-06-08.
  19. ^ Mobile Intel® 915PM/GM/GME/GMS and 910GML/GMLE Express Chipset Datasheet, Intel, accessed June29, 2007.
  20. ^ Intel® G35 Express Chipset Product Brief, Intel, accessed August 22, 2007.
  21. ^ http://guides.macrumors.com/iMac_%28Intel%29
  22. ^ [hhttp://guides.macrumors.com/Mac_mini_%28Intel%29]
  23. ^ http://www.macrumors.com/2007/11/01/apple-updates-macbooks-to-santa-rosa-gma-x3100/
  24. ^ Apple's MacBook page (scroll down and click "Compare Specs")
  25. ^ http://www.apple.com/pr/library/2006/sep/06imac.html
  26. ^ Eric Anholt. "FreeBSD cvs-src mailing list". Retrieved 2007-07-16.
  27. ^ Intel Linux graphics web site
  28. ^ Tungsten Graphics web site
  29. ^ Free software drivers for the Intel 965GM Express Chipset
  30. ^ Eric Anholt. "X.Org mailing list: xf86-video-intel 2.1.0". Retrieved 2007-07-09.
  31. ^ Open Source Graphics Drivers from Intel — Licence
  32. ^ LKML thread about intel_hal.so
  33. ^ X.Org ML thread about intel_hal.so
  34. ^ Intel excuse for no GMA900 WDDM driver: no "HW Scheduler" no driver, Beyond3D, October 26, 2006.
  35. ^ Intel’s response to 915G WDDM requests
  36. ^ Intel G965 drivers Announce
  37. ^ G965 drivers Forum Discussion
  38. ^ Pre-Beta XP Drivers
  39. ^ [1]
  40. ^ Intel G35 chipsets will not support DirectX 10 until 2008

See also