Search This Blog

Sunday, 4 December 2022

The (Almost) Definitive AGP Article

Contents

3D Takes Centre Stage
PCI: The Limitations
Bringing AGP Into Being
The Players
The First AGP Graphics Card
The First AGP Motherboard
Implementation
Early Benchmarks
Card Controversy
AGP 2.0 aka 4x
Competition & Litigation
AGP's Legacy
Footnote
References

First AGP graphics chipset: Cirrus Logic Laguna3D-AGP (3 Feb 1997)
First card with AGP connector: Trident 3DImàge 975 (24 Mar 1997)
First AGP graphics card: ATI 3D Rage Pro
First AGP Pentium motherboard: FIC PA-2012 (2 Nov 1997)
First AGP Pentium II motherboard: FIC KL-6011 (26 Aug 1997)

The first thing to understand about AGP is that it's not exciting. In fact it's deeply, deeply boring, but it is also absolutely pivotal to the success of gaming-focused PC industry that we know today. Technically it wasn't unique or even revolutionary: it was just an extension of the existing 66MHz PCI 2.1 specification. The only difference really was that it had some enhancements designed specifically to handle textured 3D graphics and provides bandwidth exclusivity. In reality it's a bit trickier than that, of course, so let's take an in-depth look at how it came to be, as this is the slightly more interesting angle.

Note: this article is about consumer PC graphics at the 'affordable' end of the spectrum, with a focus on gaming. I'm also not getting heavily into the technical workings of AGP, as this is very well documented elsewhere. The Introducing AGP article from the September 23rd issue of PC Magazine is a good primer, while Anand Lal Shimpai's AGP Explained article goes into more technical depth. There's also the official Intel docs listed at the bottom of this page. The scope of this article is an historical perspective.

3D Takes Centre Stage

Prior to 1996, smooth 3D games on consumer PCs were only possible through some fiendishly inventive coding and a good CPU. If you wanted to play Doom, you needed a 486. Oh, you want to play Quake now? Buy a Pentium. Although out of the reach of most bedroom gamers in 1994, a Pentium-based system sporting a PCI graphics card was the nearest you could get to gaming graphics nirvana on a PC. The mainstream-focused Pentium 75 hit the market just before Christmas '94 and the following months saw hundreds of thousands of families purchasing their first IBM-compatible PC.

It was when RAM prices began to fall in 1996 that 3Dfx Interactive brought their Voodoo technology to the platform, establishing the PC as a legit gaming machine for the first time. Gamers could at last enjoy arcade-style high res, 3D, texture-mapped graphics in their PC games. But the limitations of the PCI bus were already being pushed, specifically the bandwidth between the system memory and the expansion cards themselves, such as graphics and storage. In an interview late in 1997, just after AGP came to market, John Carmack said:

"The biggest problem we have on 3Dfx right now is texture paging. Not triangle rate, not fill rate, it’s textures."

Scott Randolph, programmer of the Falcon 4.0 engine at Spectrum Holobyte, eloquently made the case for AGP at the developer conference in May 1996. He claimed that software 3D rendering typically used 80% of the CPU's processing time and filling pixels 'overwhelms' the PCI bus. The point was made that a Pentium running at 90MHz with dedicated 3D hardware outpaced one running at 166MHz using software rendering. While dedicated 3D hardware had solved this problem, it was still being held back by the system architecture itself.

PCI: The Limitations

Polygonal graphics had been used quite early in the PC's history, but it was the rise of texture mapping that had started saturating bandwidth. Devices using the PCI bus had to share bandwidth, which made it very difficult to guarantee graphics throughput. This negatively affected the speed of copying textures, for example, from main memory into the graphics RAM. By providing a dedicated connection to the system bus, AGP provided higher speed and non-shared bandwidth. The theory was that this would make it possible to keep the textures in system RAM, saving the time of transferring them over the bus and saving the cost of fast RAM on the video card. Additionally, the data and address buses were not multiplexed as on PCI, providing a further performance bump. Surprisingly, for what was high-end consumer tech at the time, one of the main motivations for AGP was cost saving. From version 1.0 of the AGP spec, published 31 Jul 1996:

"...3D rendering data structures may be effectively shifted into main memory, relieving the pressure to increase the cost of the local graphics memory ... Reducing costs by moving graphics data to main memory is the primary motivation for the A.G.P."

While the theoretical throughput of PCI was 133MB/s, cards were realistically operating at the 50-60MB/s range, while a 60Hz texture-mapped polygons at 8 bits per pixel with mipmapping demanded 96MB/s. AGP, with its 200MB/s specification, was designed to solve this problem with room to spare. Even without AGP-specific features, an AGP slot behaved like a 66MHz PCI slot. Intel obviously decided that just creating a dedicated PCI bus for graphics (like Micron PC's Samurai chipset did) wasn't going to be enough.

Bringing AGP Into Being

The first revision of the AGP specification was completed by Intel in December 1995 and was first announced at the 1996 Windows Hardware Engineering Conference (WinHEC) in April, followed by the inaugural AGP Developers Conference during May 30-31. Presentations (which can be downloaded here) were given by a number of people involved in the technology:

  • Mike Aymar, VP and General Manager of Desktop Products Group at Intel Corporation gave an overview of the tech. The main point of his presentation seemed to be about getting arcade-quality 3D graphics onto volume PCs, so it was obviously recognised as a growth market.
  • Dean McCarron of Mercury Research talked about the history of graphics hardware on PCs, from MDA/CGA right up to software-rendered 3D and the challenges being faced by 3D hardware.  Intel's endorsement of Direct3D was very apparent during the AGP briefings, with the alliance being referred to as "great 3D".
  • Paul Richardson, Technical Evangelist at Microsoft, talked a lot about operating system support and the bandwidth limitations of PCI.
  • Jay Torborg, Director of Graphics and Multimedia at Microsoft, gave a technical run-down on DirectX and emphasised the importance of polygons/s and pixels/s rates, their importance to the performance of 3D graphics, and the role AGP would play in guaranteeing these.
  • Michael J. Allen, Jeff Lauruhn and Norman Rasmussen of Intel discussed the electrical, mechanical, and protocol aspects respectively in incredible detail. They also emphasised the increased data rate of AGP 2x, one of the key upgrades from PCI.
  • Finally, John Davies the Director of Marketing for Consumer Desktop Products at Intel gave attendees a bit of a pep talk. He promised them that, if hardware and software vendors work closely together, they could grow the 3D graphics sector by a factor of 10 by 1998, with a target of arcade-quality graphics on the PC by the 2nd half of 1997. The Accelerated Graphics Port Implementors Forum was created to aid this, so that developers and OEMs could interact, access technical resources and attend workshops.

After releasing version 1.0 of the AGP specification on 31 Jul, hardware and software developers started in earnest the race to produce the first working samples. The race was on.

The Players

Cirrus Logic not only claimed to have produced the first AGP chip to be sampled (i.e. physically sent to card manufacturers so they could integrate it in their products) with their GD5465-based Laguna3D-AGP on 3 Feb, but also the first card to be demonstrated in Microsoft's Memphis operating system - a beta release of Windows 98 running DirectX 5.0 - a month later. Part of the reason Cirrus Logic were so quick off the mark was that their existing PCI-based GD5464 chip already supported storing textures in system memory. Cards based on the new chip were available to buy on 26 Aug, also being notable as one of the earliest cards to be equipped with RAMBUS's emerging RDRAM tech. According to Mercury Research, the performance of these cards was 'glitchy' at best, which is possibly why the chipset wasn't more widely adopted as the year went on. Here's a quote from their quarterly publication Accelerating PC Graphics from Q1 of 1997:

"The 5465 was announced in early 1997, and is Cirrus’ (and quite likely the industry’s) first ... AGP component. The device extends the 5464 with the AGP port and support for system-memory textures in the AGP environment."


Trident
, the 3rd largest graphics chip manufacturer at the time, claimed to have had "the fastest mainstream 3D graphics accelerator on the market today" in their 3DImàge 975. Their efforts to make an AGP version were announced at CeBIT, held in Hannover, Germany on 28 Feb. Trident claimed it was the first chip to 'meet the basic requirements' of the technology in a press release dated 24 Mar and this means they were the first manufacturer to produce a working card with an AGP connector. Technically this was just a cosmetic change to their existing PCI design, so it doesn't take the title as the 'real' first card. Jaton, the "largest" PC expansion card manufacturers of that time, announced they would use the 975 chipset on Jun 3. The 985, a faster version supporting AGP 2x, appeared soon afterwards and was being "sampled in limited quantities" at the end of August. This card also employed RDRAM. At the time FIC's socket 7 AGP board was released at the beginning of Nov, this card and ATI's effort were apparently the only ones to support 2x mode.

3Dlabs threw their hat into the ring on 24 Mar, announcing that their GLINT Gamma chip was 'expected to be the first AGP-compliant graphics product' but, as we know, Cirrus Logic's Feb announcement puts paid to this claim. They announced their PCI Permedia 2 card in May and an AGP variant was used by FIC to benchmark their KL-6011 board at the end of Aug. Shipments of the card were officially announced on 18 Aug but Tom's Hardware cite Diamond's Fire GL 1000 Pro as "one of the first AGP cards available" so they can't be ruled out.

NVIDIA were still very much a fledgling company at the time. Following the failure of their NV1 architecture, when Direct3D made its quadratic texture mapping technology irrelevant, they were understandably nervous to go 'all in' with AGP. They did promise to release "the industry's first 3D multimedia accelerator [on] ... AGP systems" at Intel's Visual Computing Day, announcing their RIVA 128 chipset at WinHEC a month later. Although their chip was the choice of some of the first AGP cards, such as Diamond's Viper V330 and STB's Velocity 128, these were AGP 1x models so neither qualify as the first card. This moment marks the beginning of a somewhat prosperous future for the firm, however.

Rendition had built a reputation for producing impressive and innovative 3D hardware since their V1000 chipset was unleashed in 1996. The PCI card's integration of both 2D and 3D capabilities set it apart from 3Dfx's Voodoo, and earned the honour of being the first card to support Quake in hardware. Their Vérité V2200 chipset was also demonstrated at WinHEC, with review hardware appearing by 5 Aug but also limited to AGP 1x.

S3 were expected to be strong players, having dominated the consumer 2D marketplace with their Trio64 line of chipsets and holding 43% of the market in Q3 of 1997. Their Virge/GX2 chip was unconvincingly announced at WinHEC on 8 Apr and didn't see anything like the adoption rates that other manufacturers enjoyed. Like everyone else, they showed off physical hardware at Comdex that November, but they can't be ruled out either due to very early mentions.

ATI's 3D Rage Pro also lays claim to be the first AGP graphics chip to be demonstrated at 2x mode, debuting at Intel's Visual Computing day on 24 Mar, nearly a month after Cirrus Logic's product was officially released. This is backed up by the June issue of Wave Magazine, so it could be argued as the first 'legitimate' AGP graphics card based on all these factors. This was still the case in November according to Thomas Pabst of Tom's Hardware.

Matrox were in pole position to take a stranglehold on the business 3D graphics market, with their Millennium II card widely considered to be the best performer around mid '97. They seem to be the only company that showed no interest whatsoever in being 'first', which is unsurprising considering their reputation for high performance backed by rock-solid drivers. They announced the AGP variant of the Millennium II - boasting their MGA-2164W processor - in September with full optimisation for the new bus. The card was widely adopted by system integrators, many of which were demonstrated at Comdex Fall that year.

Number 9 also sunk their teeth in, not just producing cards but also producing a chip of their own. They announced sampling of their AGP-supporting Ticket To Ride chip on 15 May, which is pretty early but not early enough. Their Revolution 3D card based on this chip was officially released to retail on 25 Aug, to coincide with Intel's release of their motherboard chipset, which would have been a pretty solid shout for 'first card' were it not for ATI's efforts.

Intel developed a graphics chip in conjunction with Lockheed-Martin's Real3D division called the i740 (codenamed Auburn) in parallel with the 440LX chipset. It was intended to showcase AGP at its best and had no on-board texture memory at all. They managed to produce a prototype in time for Comdex '97 but didn't officially announce the card until February '98. It's almost as if they delayed it deliberately so that other chip makers would push the technology instead, as there were significant fears that Intel was trying to take over the 3D hardware market, as they had done with motherboard chipsets.

What of 3Dfx, I hear you ask? It's difficult to get into this subject without bringing up the whole sorry story of how things went down, but I'll try to be brief. It seems that AGP threw a bit of a spanner in the works for them in '97. Their VSA100 chip was designed to be scalable from the beginning, a feature no other graphics chip on the platform could boast. Given that their Voodoo2 chipset was announced on 3 Nov, they had obviously spent '97 developing their PCI product while everyone else was chasing AGP. Although it was compatible with the new interface, the Voodoo2's key feature was SLI (Scanline Interleave), which allowed two cards to be linked together to increase performance. With AGP being a single-slot deal, only Quantum 3D produced an AGP Voodoo2, with their eye-wateringly expensive Obsidian card, while everyone else had to use up 3x PCI slots (including the requisite 2D card) for the same thing. Although the V2 took the industry by storm with its performance when it was released, the competition was moving so rapidly that things didn't work out well for them at all. 3Dfx never took AGP seriously, even with later products, so they do not belong in this story.

Related to the downfall of 3Dfx was NEC's PowerVR chipset. Their PCX2 card was released in April '97, and their next-gen chip saw a delayed release on the PC after it was adopted by Sega for their ill-fated Dreamcast console, a contract 3Dfx lost. As such, they made no overtures towards AGP whatsoever at this stage of development. VGA stalwarts Oak, meanwhile, released an AGP version of their WARP 5 at some point during Q4, after initially releasing the accelerator at E3 in July '97 without a single mention of the emerging tech.

The First AGP Graphics Card

Identifying the very first AGP card (which was the original motivation behind this article) depends on your criteria. First you have the graphics chip itself. Once a design has been finalised, it is 'sampled' i.e. manufactured in limited quantities and sent to graphics card makers such as Diamond or STB (unless you're Matrox or ATI who made their own boards). Once evaluation hardware and drivers have been produced, these are tested, refined, and eventually made available for sale through retail channels. Some existing graphics chips could be easily adapted to AGP, although many of the first AGP cards were simply PCI models with an AGP connector. This somewhat undermined AGP's performance because, to take full advantage of the new bus, the additional features of AGP must be supported and this usually required designing a brand new chip. This made significant demands on the finances and resources of the industry's chip makers and may have actually broken a few of them.

There are a couple of key dates in identifying the first board and the first is Intel's Visual Computing Day, on 24 Mar 1997. Here, cards were announced from ATI, Cirrus Logic, S3, Trident, and 3Dlabs, and hardware was demonstrated by each. How well that hardware was working (they would have been engineering samples) is another question. If we fast forward to Mercury Research's report in November (reflecting tests performed around September), they included working boards from #9, ATI, Matrox, 3Dlabs, S3 and NVIDIA. Only ATI, S3 and 3Dlabs are common to both lists, but ATI's card was the only one capable of 2x mode.

The boring truth of the situation is that a board doesn't really exist until it's available at retail, as anything prior to this would be engineering samples or evaluation hardware. These don't really count because they are like ghosts. This brings us to key date no. 2, which was the official launch of the 440LX chipset on 25 August 1997. If we look at the press releases on or around that date, we can see that a number of cards were released simultaneously:

  • NVIDIA announced that Diamond and STB would be using their RIVA 128 chip.
  • Cirrus Logic announced volume shipping of their Laguna3D board.
  • ATI announced two different AGP incarnation of their 3D Rage Pro in the XPERT@Work and XPERT@Play boards.

These three chip makers take the joint 'first AGP card crown' officially, but no one likes a tie so ATI are announced as unofficial winners based on the fact that theirs was the only AGP 2x card. Trident are out of the running because they had only just started sampling their 3DImage985 chipset (though the 975 was the first card with a physical AGP connector), while 3Dlabs were in the process of shipping their Permedia II to board manufacturers for development at this time. Matrox didn't announce their AGP Millennium II until September.

The First AGP Motherboard

This is somewhat easier. Although VIA's AGP-capable, VP3 chipset was announced in June, the first motherboard chipset to appear was Intel's. The specs for their 440LX chipset were unveiled in Jul 1997, with motherboard details released a month later. On 26 Aug, the day Intel's chipset hardware itself was formally released, it was FIC's KL-6011 that was the first AGP board to retail, despite Intel's own AL440LX and NX440LX board being announced that month.

An interesting point to note is that Intel didn't produce a chipset for the socket 7 platform, perhaps intending to leave other CPU manufacturers such as AMD and Cyrix - who couldn't use Intel's patented slot 1 - out in the cold. Via Technologies came to save the day, with their VP3 chipset. Pre-production versions of FIC's PT-2012 motherboard, released on 2 Nov, were the first to use it.

Implementation

Remember that the primary driver behind AGP was cost-saving. The idea was supposed to be that, by storing textures in system RAM and transferring them as required into a comparatively small - but fast -cache on the graphics card, large amounts of 'expensive' video RAM weren't needed. The standard amount of video RAM on most cards was 4MB, although the type of RAM varied between EDO, SGRAM and RAMBUS. By the time AGP cards were fully developed, memory prices had dropped far enough that board manufacturers were quite happy to store textures on the card instead. AGP cards that were simply PCI cards adopting the new connector took advantage of the dedicated bus and increased frequency, but not any of the AGP-specific features such as 2x data transfers and side-band addressing.

From a software perspective, buggy drivers were an issue for a number of cards, as we'll see, and they worked in conjunction with Intel's VGARTD.VXD (virtual device driver) which enabled AGP feature support in Windows 95. This support became official as part of OEM Service Release (OSR) 2.1, which was released by Microsoft on 26 Aug '97. Note that the public version of DirectX at the time was 2.0a.

Although most cards were officially available to buy at Comdex Fall that year, some were available sooner but most were pre-release hardware.

Early Benchmarks

The earliest, publicly-available benchmarks of AGP cards I've been able to find come from FIC, in an evaluation of their KL-6011 board on 25 Aug '97. They ran tests using the DirectX-based 3D WinBench 97, under Windows 95 on a Pentium II 300MHz system. Initial results indicated that AGP performance was vastly superior to PCI, with AGP versions of the Permedia II and Rage Pro scoring 170 and 179 respectively, while a PCI Matrox Mystique scored 55.7.

Something that was common among desktop 3D cards of the time was that certain 3D features, such as fog tables, were either not implemented or were implemented badly. Such advanced features were the reserve of high-end cards such as ELSA's legendary GLoria chip. This was demonstrated by benchmark results showing the unrefined nature of AGP-based hardware and software at the time.

The Cirrus Logic and Trident offerings (both using RAMBUS memory, incidentally) barely cross the line, while ATI's card does a respectable job but is outperformed across the board by the Permedia II. ATI's card may have been the first to market, but it wasn't the most credible product at the time.

Anandtech's review of the Diamond Viper V330 (using NVIDIA's RIVA 128) at the end of September saw it outscore the Rage Pro's 191 in 3D WinBench 97 with a score of 280. Chalk one up to NVIDIA.

Here we see results of a test of high-end, 300MHz Pentium II-based systems in the 23 Sep issue of PC Magazine, again using the 3D Winmark 97 AGP graphics benchmark. They used an AST Bravo machine to compare the PCI and AGP 2x versions of the ATI 3D Rage Pro and found framerates to be 1.85fps and 18.6fps respectively, which is a jaw-dropping improvement. As you can see in the graphic above, the Dell, Gateway and Micron computers all used 3D cards based on NVIDIA's RIVA 128 chip and significantly outperformed the competition in 3D tests (except for the AGP-specific one, which the Gateway couldn't perform). The AST used ATI's Rage, while the NEC sported Number Nine's Revolution.

Tom's Hardware put a bunch of AGP cards to the test at the end of October, and NVIDIA's chip, yet again, came out on top by some margin. ATI's card couldn't participate at the time because of driver issues, so there is no direct comparison at this point. The Permedia II put in a respectable showing though, particularly in OpenGL tests, while Number Nine's card languished behind. A more extensive round-up came at the beginning of November.

Mercury Research's Q4 review (Nov '97) of 3D accelerators told a similar story, using the more recent 3D WinBench 98 suite (featuring DirectX 5) and a 300MHz-based Pentium II system. Although they tested 28 cards, only 6 were AGP capable.

As you can see, the RIVA 128 tops the results again by a decent margin, but not a million miles away from the Rage Pro. Clearly the benchmark wasn't optimised for AGP, as the scores from each respective PCI equivalent (not shown) were faster, but by a negligible margin.

One factor Mercury struggled with in particular was drivers. This was particularly apparent with the 3Dlabs offering from Diamond, where the AGP card scored lower (317) than the PCI offering (352).

Performance was predicted to improve dramatically over time as drivers improved, but this is where we get into the first mention of controversy. In their Q4 report, Mercury explained that some vendors were expressing concern that competitors' drivers were, perhaps, 'too good'. This was allegedly achieved by sacrificing compatibility and accuracy for speed, with the conclusion that:

"The atypical performance of the “good” drivers raises the suspicion that something unusual is taking place."

This is something we'll come back to.

Once he had got all the drivers he needed, Thomas Pabst ran another group test of 3D cards in November. The results are reproduced here:

Yet again, NVIDIA's RIVA 128 is still dominating the scores, as it is used by the top 3 cards. Also observe no discernible difference between the AGP and PCI models, which again show that the test is not AGP-optimised. We do see that the inclusion of ATI's Rage Pro puts it ahead of the Diamond Fire GL (powered by the Permedia II), but some way behind the leaders.

The coup de gråce comes in the form of PC Magazine's insanely detailed group test of graphics cards at the beginning of December. Like we didn't know it already, NVIDIA takes the crown (again), and the same patterns as before are repeated.

I feel kinda sorry for Trident, S3 and Oak with their pathetic offerings tacked onto the end of the 'proper' results table. While ATI seem very much to have been the first to get a card to market, there is no doubt that NVIDIA won the battle of whose card was best quite early on. I think 3Dlabs should also get a shout for their early success and stable offering in the development of the Permedia II, although they're not around anymore to celebrate it.

Card Controversy

But there's a problem. Remember what Mercury Research said about something 'unusual' taking place? In Feb of '98, Tom's Hardware reported on this mystery, with some very intriguing findings. Notice how every benchmark I've shared has been in the same program: 3D WinBench. It seems that ATI had optimised their drivers to perform outstandingly well in this high-profile and widely-used test suite in an attempt to mask the hardware's deficiencies in real world applications such as games. 

AGP 2.0 aka 4x and the Pro Variant

One potentially confusing aspect of AGP is the naming convention. While there were only 3 versions (1.0, 2.0 and 3.0) released - before it was superseded by PCIe - each of these represented a doubling of the bandwidth (2x, 4x, 8x). Graphics cards and motherboards were usually advertised based on which speed they supported, rather than the version. Remember that AGP 1.0 represented both 1x and 2x speeds, while AGP 2.0 represents 4x speed, hence the confusion. Each time the spec changed, so did the voltage, so new cards couldn't be used in old slots and vice versa, although there was such a thing as a 'universal' slot. This has been expertly documented elsewhere.

Development of AGP 4x was announced at Intel's Visual Computing Day and was expected to be added to the official spec by the end of the year, but wasn't officially published until May '98. Not long after this, specification for AGP Pro was released, which was an extension of standard AGP intended for workstations, providing up to four times (110W) more power for industrial applications. It was also adopted by Apple in their Power Mac G4 range, albeit not until October 1999. They added an additional power connector to their boards to support their Apple Desktop Connector (ADC) monitors via a single cable.

New AGP cards are still available today, although they are somewhat utilitarian.

Competition & Litigation

AGP was intended as an open standard from the beginning. Intel believed, and stated numerous times, that a "reciprocal royalty-free license" would be the only way to foster rapid development of the platform. It became apparent through a 2001 court case, Intel Corporation v. VIA Technologies, Inc., that Intel probably only wanted this openness on Intel-based systems. Without wanting to get into it too much (again), Intel's competitors had been using their CPU socket designs since the '70s. Intel brought an end to this with the introduction of the Pentium II's slot 1 in summer '97, leaving the likes of AMD, Cyrix and IDT with socket 7 (I'm ignoring socket 8). It wasn't until 28 May '98 that AMD officially introduced their competing CPU, the K6-2. In order to support higher clock speeds, AGP and other technical improvements, AMD relied on 3rd parties such as SIS, ALi and VIA to design and fabricate motherboard chipsets for their new CPU, as they didn't make chipsets themselves. By extending the socket 7 specification, the 'Super 7' platform was born.

Intel didn't appear to intentionally obstruct these companies from making AGP work with their competitor's CPUs, but it's possible they didn't expect it to happen. They weren't far wrong, as AGP was plagued with reliability issues on Super 7 until the Althon's slot A platform was introduced. Taking VIA to court was the first evidence that Intel's open licensing of AGP was disingenuous, claiming that only the "baseline" features of AGP were licensed as such. In particular they argued that the new 'fast write' feature was excluded from the license, in an attempt to at least stifle performance on 3rd party motherboards. Unfortunately for them, the court rejected their semantic argument and dismissed the case. 

AGP's Legacy

There really isn't much more to say about it all. What took place in 1997 was AGP almost single-handedly setting the 3D gaming graphics industry on its path to the success that we recognise today. Prior to that, there were disparate efforts by many competing parties (led largely by 3Dfx), a bunch of proprietary APIs and a general headache for games developers and users alike. With Windows 98, Microsoft's DirectX platform began to be taken more seriously. Efforts from graphics card manufacturers unified the PC gaming platform with Windows, instead of DOS, becoming the dominant gaming operating system. Say what you like about Intel and Microsoft's dominance of the platform - their efforts in bringing arcade-quality games to the PC were a resounding success, especially considering how hard it had been, historically, to establish new hardware standards (*cough* EISA *cough* MCA *cough* VLB).

Although there were a total of 38 competitors vying for a piece of the 3D pie in 1998, we know how many chipset makers came out the other side: two. ATI were eventually acquired by AMD in 2006 and nVidia hired pretty much every 3D graphics expert in the industry, most of them coming from SGI's OpenGL dev team.

Footnote

If you have enjoyed reading this, please consider buying me a coffee via Ko-Fi. I try my best to make sure that everything I write is historically accurate by citing primary sources (over 100 in this article) and weaving together some kind of story from everything, but if you do think I've got something wrong, please comment below with a source and I'll be really happy to make corrections. I really enjoy writing about this stuff and it can be really time consuming! Also, I promise to give 20% of every donation to the Internet Archive, without which this article (and others I've written) wouldn't be possible. Thanks for reading :)

References

1996
28 Mar: Intel to roll out new 3D technology. Source: c|net
2 Apr: Intel runs graphics faster for cheaper. Source: c|net
9 May: ATI Joins AGP Implementors Forum. Source: ATI
30 May: Intel host AGP Developers Conference. Source: CaseText
30 May: PDFs from the AGP Developers Conference. Source: AGP Developers Forum
Jul: Avoid the traffic jam. Source: CGW
31 Jul: AGP 1.0 specification released by Intel. Source: Intel (PDF)

1997
3 Feb: Cirrus Logic samples industry's first AGP 3D graphics controller. Source: Cirrus Logic
28 Feb: At CeBIT '97 Trident showcases AGP technologies. Source: Trident
24 Mar: Trident's 3DImàge 975 now supports Intel's AGP. Source: Trident
24 Mar: 3Dlabs reveal GLINT Gamma chipset. Source: 3Dlabs
24 Mar: Leading graphics chip companies announce AGP-Enabled products. Source: Intel
24 Mar: 3D Rage Pro first chip to demonstrate support for AGP 2x. Source: ATI
24 Mar: NVIDIA announce first AGP card. Source: NVIDIA
24 Mar: Intel outlines 3-D graphics plan: Source: InfoWorld
31 Mar: Intel AGP spec to speed up graphics. Source: InfoWorld
Apr: PCI version of nVidia's RIVA 128 is released. Source: IEEE Computer Society
8 Apr: S3 announce ViRGE/GX at WinHEC. Source: S3
8 Apr: NVIDIA and SGS-Thomson announce RIVA 128. Source: NVIDIA
13 May: Matrox Millennium II "shatters all previously held Graphics Winmark records". Source: Matrox
15 May: Number Nine unveils "Ticket To Ride"
18 May: Permedia 2 announced. Source: 3Dlabs
2 Jun: VIA, not Intel, to be first with AGP Chip Set. Source: InfoWorld
19 Jun: Company perspective - ATI. Source: Wave Report
19 Jun: Product brief for Warp 5. Source: Oak
Jun: Developers begin receiving samples of Intel's i740 graphics chipset. Source: Gamasutra
Jul: Version 1 of 440LX chipset specification released. Source: Intel 440LX Datasheet (PDF)
1 Aug: Chipset guide - Via VP3. Source: Anandtech
Aug: Specifications for Intel's AL440LX motherboard. Source: Intel (PDF)
Aug: Specifications for Intel's NX440LX motherboard. Source: Intel (PDF)
5 Aug: Review of the Rendition Vérité V2200 Source: Anandtech
11 Aug: AGP and on-chip cache will speed graphics performance. Source: InfoWorld
11 Aug: Rendition's V2200 top in 3D benchmarks. Source: Rendition
11 Aug: Accelerating PC Graphics '97 Published. Source: Mercury Research
16 Aug: Intel AL440LX motherboard (266MHz). Source: spec.org
25 Aug: ATI's 3D RAGE PRO chips announced. Source: ATI
25 Aug: Intel Introduces 440LX AGPset. Source: Intel
25 Aug: FIC KL-6011 benchmarking report. Source: FIC
25 Aug: Jaton to use Trident 3DImàge 985 chip. Source: Jaton
26 Aug: Trident sampling limited quantities of 3DImage985. Source: Trident
26 Aug: Cirrus Logic ships Laguna3D-AGP card. Source: Cirrus Logic
26 Aug: FIC first to release 440LX board with the KL-6011. Source: ZDNet
27 Aug: Chaintech release the 6LTM. Source: ZDNet
28 Aug: 3DLabs' Permedia 2 announced, with AGP support. Source: EE Times
2 Sep: OEMs cautious about releasing 440LX boards. Source: SCMP
12 Sep: Matrox announce Millennium II AGP. Source: Matrox
14 Sep: Review of the Diamond Viper 330. Source: Anandtech
23 Sep: Review of 300MHz Pentium II systems. Source: PC Mag
28 Sep: AGP explained at Anandtech
28 Sep: AGP performance explained at Anandtech
Oct: Specifications for RIVA 128 chip released. Source: Thompson SGS (PDF)
21 Oct: Review of the STB RIVA 128. Source: Anandtech
27 Oct: Group test of AGP graphics cards. Source: Tom's Hardware
28 Oct: Review of Pentium II boards with Intel's 440LX chipset. Source: Tom's Hardware
29 Oct: Review of FIC's PA-2012, with the RIVA 128. Link: Tom's Hardware
2 Nov: FIC officially release the PA-2012, the first AGP-capable socket 7 board. Source: Tom's Hardware
3 Nov: 3Dfx interactive announces the revolutionary Voodoo2 graphics chipset. Source: 3Dfx
6 Nov: STB's Velocity 128 dominates reviews. Source: STB
9 Nov: 3D accelerator card reviews. Source: Tom's Hardware
17 Nov: Quantum3D announces support for new Voodoo2 chipset. Source: Quantum 3D
18 Nov: Matrox Millennium II AGP achieves wide-spread acceptance with top SIs. Source: Matrox
20 Nov: Intel show prototype i740 at Comdex Fall. Source: ZDNet
25 Nov: Interview with John Carmack. Source: Boot Magazine Archives
2 Dec: Graphics accelerators. Source: PC Mag
8 Dec: Intel aiming for business desktop systems with i740. Source: InfoWorld

1998
Jan: Version 2 of 440LX chipset specification released. Source: Intel 440LX Datasheet (PDF)
12 Feb: Intel announce i740 graphics chipset. Source: Intel
12 Feb: Intel enter 3D graphics market to stiff competition. Source: Computer Business Review
14 Feb: 3D Winbench 98 - Only a misleading benchmark? Source: Tom's Hardware
23 Apr: Maximising AGP Performance 2.1. Source: Intel
10 Mar: Review of Real3D Starfighter graphics card. Source: Anandtech
17 Mar: Test results of the most popular video accelerators. Source: IXBT Labs
24 Mar: Voodoo2 dominates independent 3D PC accelerator tests. Source: 3Dfx
4 May: Version 2.0 of AGP spec released. Source: archived at University of California (PDF) and Intel
28 May: AMD introduce K6-2 processor at E3. Source: AMD
25 Jul: < $99 2D/3D accelerators square off. Source: coolcomputing
Aug: AGP Pro 1.0 specs published. Source: Intel
2 Sep: Voodoo2 Accelerator Review. Source: Tom's Hardware
8 Sep: 3Dfx wins best PC hardware award. Source: 3Dfx

1999
Apr: AGP Pro version 1.1 specs. Source: Intel
Aug: AGP Pro version 1.1a specs. Source: Intel

2000
22 Nov: AGP 8x announced. Source: Eurogamer

2001
20 Mar: Intel Corp. v. VIA Technologies, Inc. Source: Casetext (Nov 2001, Feb 2003)

2002
Sep: Version 3.0 of AGP spec released. Source: Intel (PDF)

Which version of Windows 95 Supports AGP? at Computer Hope
How to Determine the Version of Windows 95/98/Me in Use at Microsoft
The Story of the 3dfx Voodoo 1 at Fabian Sanglard's Site
AGP Implementors Forum archives from 19971999 and 2002
AGP Overview at Intel from 1998 and 2002
AGP Tutorial at Intel
AGP Design Guide 1.0 at Intel
AGP Design Guide 1.5 at Intel
AL440LX Motherboard at Intel
82440LX Overview at Intel
Community at Iceteks
i740 Information Site at Intel
Intel i740 Specifications at retronn.de (PDF)
Coming Soon Magazine
AGP Compatibility for Sticklers at Playtool
Technology Evolution at AMD

1997 Press Release Archives
Rendition - STB - Cirrus Logic - NVIDIA - Matrox - 3Dlabs - Trident - PowerVR - 3Dfx - S3 - #9 - ATI - Oak - Intel - AMD

1998 Press Release Archives
3Dfx

History

1/1/23: Added 'first card with AGP connector' details. Thanks to yjfy on Twitter.
4/12/22: Initial version published.

Benchmark Programs for Older Systems



When I say older I mean pre-Pentium. Some will work on an XT or AT, but not all. While all programs should execute fine, the actual measurements taken will vary in usefulness, depending on the speed of the machine.

All these programs are best run under a clean boot in DOS. The only exception to this is when running tests on a drive controller, which may not perform at full speed without its driver. While many of these benchmarks are well-known and easily-obtainable, some are a little more obscure. A bunch of them (highlighted with a *) came from the BENCH_XT compilation, made available by user Ekb on Vogons and can be downloaded from here. I also used High Treason's benchmark pack (programs designated ^), which is here and includes some of the better-known tools to get you started. I have provided links for them individually where possible.

I have categorised each test into CPU & RAM, graphics and hard drive, though some programs cover all three categories. Where this is the case, I've put them in multiple categories and explained their functionality.


CPU & RAM

TOPBENCH 0.38^

Duration: <10s
The Oldskool PC Benchmark, written by Jim Leonard, is intended for live performance tweaking of a system. As the program runs, it measures the speed of the computer and provides a match to a similarly-performing system in its database. This is most useful for virtual systems such as DOSBox, so that you can adjust the emulator's performance to match a particular PC e.g. a 486DX2/66. It's also a great way to check that your real system is performing at a level expected of it. The score provided for the system is influenced by CPU, RAM and graphics performance with some 3D code tests. You can even send your results to Jim for inclusion in a future release.

Landmark System Speed Test 6.0^

Duration: <10s
I run this with the /B option to skip the splash screen at the beginning, which requires a keypress otherwise. This is from 1993 and tests pure computational speed i.e. CPU, FPU and CPU-to-video memory transfers. It attempts to displays a measurement of the actual CPU frequency, plus a live readout of the 'effective performance' of the CPU and FPU by comparing it to an AT system (i.e. a 286 equipped with a 287). I initially thought this program was useful for identifying the actual CPU frequency, but it thought my DX2 was running at 220.330MHz. Not very accurate, then. Because it's live, you can test the effect of a turbo button, for example. Scores from this version can't be compared to previous versions, however, as the metric was changed.

Norton System Information 8.0^

Duration: <10s
The 'CPU Speed' benchmark aspect of this program identifies the type and speed of the CPU and provides a measurement on its 'computing index' score. This is, unfortunately, not a particularly useful or intensive test of speed (at least according to Jim Leonard, whose amusing analysis can be read here), but could be useful if you're using the same motherboard with different CPUs.

MAXSPEED

Duration: <10s
The readme for this wasn't distributed with the version I have, but can be found here. Not that there's much to read - it simply describes the program as freeware and that it is 'extremely accurate' at measuring the actual speed of the CPU. Apparently this differs from the speed the CPU is rated for but I would say is more interesting than useful. It was written by MAXUM computers and can be found in the MAXSPEED folder on the linked shareware CD, or the BENCH_XT compilation.

Chips & Technologies MIPS

Duration: ~25s
I used to have a little program that actually gave you the millions of instructions per second score for a CPU and it was handy when testing the performance improvement when I overclocked my AMD 486DX4/100 to 120MHz back in the day. This is not that program, and it does not measure MIPS, despite the name. What it does do is more useful than most, as it measures a variety of performance indicators. The only downside of this is that there seems to be a bug whereby any CPU faster than a 50MHz 486 causes most of the results to be unreadable. There is a good description of the program here.

Memory Speed 3.1

Duration: <10s
These is a freeware program by Dietmar Meschede and is dated 1996. There is not much more info on it except that it performs write, read and move tests within RAM to provide a measurements in megabytes per second. This is done using chunks of data that vary in size from 1KB to 2MB resulting in 9 separate measurements. There are quite a few measurements taken, but I take only the first result for each operation. It also has a complementary Video Speed program, described below. It can be found within SPEED300.ZIP on the linked shareware CD, or the BENCH_XT compilation.

CABT*

Duration: <10s
Also known simply as Benchmark, this was written by Robert Stanton in 1992 and is intended specifically as a non-synthetic benchmark, as in it runs an actual program and measures how well that program runs. It measures the 'number crunching ability' of your computer, according to the utility's splash page, so only a change in the CPU will affect the score. This is another program that requires an FPU and the result is given in seconds. It also provides a 'performance index', comparing the result to some other well-known CPUs. I can't find a download link for this program, so it's best to get it from the BENCH_XT compilation mentioned earlier.

VIDSPEED 3.2*

Duration: <10s
As you can tell from the name, this tool is mostly used for measuring video performance, but it also tests RAM transfers. I don't know if it's related to the program of the same name with version 3.1, but they seem to differ significantly. Running the program without options provides a help screen but for this purpose I use the command VIDSPEED *. The program can be found in VIDSPD32.ZIP in the linked ISO, or the BENCH_XT compilation.

CACHECHK 4.0

Duration: ~50s
Written by Ray Van Tassle in 1996, this program is apparently postcard-ware. I don't know if Ray still lives at the address in the readme, but I feel like I need to send a postcard either way now because I've run this so many times. It performs memory access timing tests and is useful for all things cache-related. It will tell you how many caches you have, how large they are, and how fast they are, so it's useful for diagnosing issues. It's also particularly useful for situations where you are changing the cache in some way e.g. upgrading the CPU to one with more L1 cache, or upgrading the L2 cache on the motherboard, or changing the timing settings in the BIOS.

System Speed Test 4.78^

Duration: ~3m45s (with 512KB of L2 cache)
Aka Speedsys, this is possibly the most-recognisable, best known and most popular benchmark tool because it does so damn much and it's freeware. It was written by Vladimir Afanasiev and the list of features in the readme is very long indeed. I use this program for the CPU speed index and the cache and RAM transfer speed measurements (and the other tests, described below). There is an archive of previous versions here and the old homepage is here.

Navrátil Software System Information 0.60.45*

Duration: <10s
This is mostly useful as a system detection tool, but also has some rudimentary benchmark capabilities, providing a CPU and FPU score in dhrystones and whetstones. It also charts this score in comparison to other common CPUs and can provide CPUID info, amongst lots of other info.

CPU Identification Utility 1.23

Duration: <10s
CPUCHK was written by Jan Steunebrink and has had a somewhat long development arc; this version was released in February 2013, and version 1.0 released in December 1997. Most of the information this tool can provide comes from a CPU's CPUID register. Sadly a number of the CPUs I tested either do not support this feature, or CPUCHK was unable to read it. Programs like AIDA or NSSI can be tried as an alternative and there are online databases that can be used to cross-reference chip markings and photos. 1.26 is the latest version.

Graphics


Landmark 6.0^

Duration: <10s
The video performance aspect of this program measures RAM to VRAM transfers in characters per millisecond, so it's a text-based test rather than graphics-based, but provides an accurate measurement of bus transfers to the video card.

3D Benchmark VGA 1.0^

Duration: ~20s
Aka Superscape, this is a public domain utility created by New Dimension International and released in September 1990. It is based on their commercial SUPERSCAPE 'alternate reality' environment. An interactive version can be downloaded or run here, while the readme can be found here. It measures the FPS a system is capable of by rendering a 3D scene, and is influenced by the CPU type & speed, the cache, the video card bus width and the 'efficiency' of that card.

PC Player Benchmark 1.0^

Duration: ~30s
This utility is by Markus Oberrauter of German magazine PC Player (not to be confused with the English magazine of the same name), which was released for free on their cover CDs in late 1996. It works in a similar way to Superscape in that it renders a 3D scene and presents an FPS score at the end. It runs at a resolution of 640x480 by default but is usually run with the /VGAMODE switch for slower systems. It can be found in the CBENCH folder of the December 1997 Cover CD linked above, or the BENCH_XT compilation.

Doom 1.9^

Duration: ~90s
The benchmark mode of Doom is run with the command DOOM -TIMEDEMO DEMO3 (other demos are available), which renders a demo that is 2134 frames long. A framerate figure is reached by multiplying the frames by 35, then dividing the result by the realtics score. This score is heavily influenced by the speed of the CPU, RAM and graphics card.

Chris's 3D Bench

Duration: ~30s
Sadly this program's original web page has not been archived so it's difficult to find out more about it, but the first reference I can find to it is from 1998. It runs a 3D, environment-mapped routine (not dissimilar to the DirectX cube test) to give a result in FPS. It is affected by CPU, FPU memory and video speed and requires an FPU to run. This suggests the program is from a time post-486, when all desktop CPUs had an integrated floating point unit. There are separate executables for VGA and SVGA modes, though I only use the former.

Video Speed 3.1

Duration: <10s
This program, which comes with the Memory Speed utility (above), runs tests that measure the speed of transfers from main memory to video memory over 8-, 16- and 32-bit bus widths, producing scores in MB/s and FPS, the latter being the only score I recorded. As with Memory Speed, it can be found within SPEED300.ZIP on the linked shareware CD, or the BENCH_XT compilation.

VGAFPS 1.46*

Duration: <10s
I can find no info on this program at all, and it doesn't come with a readme, but it appears to transfer data from CPU registers into video memory, providing a measurement in KB/s and an equivalent 'frame rate'. Run the command VGAFPS to output the result to the screen, though you might need to run it multiple times to get a proper result as it can be inconsistent. Can't find an individual download anywhere so find it in the BENCH_XT compilation.

VESATEST

Duration: <10s
A program written by Vogons user RayeR aka Martin Rehak and requires an FPU. It identifies the VESA VBE version of the graphics card and the resolutions available, plus the amount of video memory (VRAM) available. It then measures transfers between the LFB (linear frame buffer) and VRAM, providing an FPS score, plus a measurement of the transfer speed in MB/s. It can also measure the current refresh rate.

VMax256 1.11*

Duration: ~20s
This program from 1996 appears to be by a Russian only known as Nomagic. It tests the throughput of different video modes in 8-, 16- and 32-bits. You can measure from 320x200 up to the max resolution of your card, but I just stuck to basic VGA. The results are provided for each bit width and are in FPS (in brackets). It can also test the RAM speed but I discarded this result. I use the command VMAX256 /x400 /x480 /x600 /x768 /x1024 /c200


VIDSPEED 3.2*

Duration: ~15s
Measures read and write speeds for video RAM and normal RAM in KB/s at 4-, 16- and 256-colour modes (CGA, EGA and VGA). Running the program without options provides a help screen but I usually use the command VIDSPEED A J L which tests CGA, EGA and VGA. Other modes are available. The program can be found in VIDSPD32.ZIP in the linked ISO, or the BENCH_XT compilation.

3DSPACE 1.2*

Duration: ~40s
There's no documentation for this but it renders a texture-mapped, 3D environment not unlike Wolfenstein 3D, but more brown. At the end it provides a percentage score of how 'ideal' your computer is, where 100% is the 'most ideal'. A table of comparable results is provided at the end of the benchmark. This is another one I can't find a direct link for, so find it in the BENCH_XT compilation.

Morph 3D*

Duration: ~30s
Written by Cory Sharp, this tiny program written in assembler renders some nice 3D shapes with rotation and zoom effects and provides a FPS score at the end. It runs indefinitely so I just quit it after 30s, though this an arbitrary amount. Get it from the BENCH_XT compilation.

Wolfenstein 3D*

Duration: ~20s
Yes, although the benchmark feature of Doom is widely known, Wolf 3D (specifically the WOLF_286.EXE version linked above, or the BENCH_XT compilation) also has such a feature if you run it with the TIMEDEMO option. The results given are much the same as with Doom (ticks and frames), except it calculates the FPS for you.

System Speed Test 4.78^

Duration: <10s
Speedsys can provides a VESA memory transfer measurement in KB/s. If that's the only measurement you want, you can just cancel further tests as soon as the program loads.

Hard Disk


Norton System Information 8.0

Duration: <10s
Aka Sysinfo, this program has a few useful benchmarks and can measure drive performance. It's worth mentioning that, if you have a caching controller or something SCSI, you will get a message saying that the results will not be accurate. This is because the controller blocks the 'drive seek' test, so it comes out as zero usually. It does measure the data transfer rate in KB/s either way. It also provides a 'Disk Index' metric, but I don't know how useful that is yet.

QDI Mark

Duration: <10s
This tool was included with drivers for QDI hard disk controllers and measures data transfer rate (KB/s) along with the average and track-to-track seek times.

Core Disk Performance Test 2.7*

Duration: <10s
This is an older tool from 1986 and provides hard disk information plus the usual performance measurements. It also provides a 'performance index' for fun. Obtainable from the BENCH_XT compilation.

Disk Meter 1.3*

Duration: <10s
By Procom Technology from 1989, this gives more extensive performance info. Rather than a basic transfer rate, it can measure random, sequential and buffered measurements in KB/s, plus average, maximum and track-to-track seek values in milliseconds. My testing has shown this program to be unreliable on faster disk subsystems, as the variance for the buffered transfer rate measurement can vary by 50% or more.

4 Speed 1.0*

Duration: <25s
This rather fancy program, by Dustbowl Designs from 1993, draws a live graph on screen as it measures the transfer rate of the disk. This makes it much easier to show the performance quirks of cached disks, for example, as an average will only give one figure, while the graph shows the point at which performance drops off. The graph can be saved as a PCX for later analysis and be represented as a line- or scatter-graph. Find it in the 4SPD100.ZIP file on the linked ISO, or the BENCH_XT compilation.

System Speed Test 4.78

Duration: ~15m (2GB drive)
Speedsys has the most extensive set of hard drive tests, with a short or long test suite available. I always use the 'short' test, which takes bloody ages anyway so I'm disinclined to do the long one. It does provides geometry info, access time, plus min/max/avg values for verify speed, linear read speed and buffered read speed. For some drives it can even show the RPM. It also provides a 'speed index' for the storage subsystem. There does appear to be an issue that I've noticed with the linear read speed test (the yellow line), which can appear to get near the end but never complete. It's safe to press escape to end the test and still keep the readings up to that point.

History


1/1/23: First version