The 64-bit extensions used by AMD and Intel Corp. are virtually identical and should not present any major software incompatibility problems, according to a report from market research firm In-Stat/MDR released Monday. But one small difference between the two architectures provides a glimpse of how the two companies manage to produce compatible products without formal interaction.
Rather than congenial conferences among executives separated by rounds of golf, the vital task of making sure software based on the x86 instruction set works on both Intel and AMD systems comes down to engineers, technical documentation and chip testing.
Longtime rivals Sun and Microsoft showed the IT industry last week that past rhetoric is not necessarily indicative of future actions, with their decision to bury the hatchet in favor of increased cooperation. However, the recent announcement of Intel's decision to release a 64-bit x86 processor a year after AMD brought such a chip to market proves that the two hardware rivals still look upon each other with a reproachful silence.
After a thorough examination, only two instructions were discovered in a forthcoming version of the AMD64 architecture that did not appear in Intel's Extended Memory 64 Technology (EM64T), said Tom Halfhill, senior editor with the Microprocessor Report, in San Jose, California. In-Stat/MDR publishes the Microprocessor Report.
AMD64 uses two instructions that improve fast-context switching, or multitasking between applications, among other things, Halfhill said.
When a user switches between two applications, the operating system stores data temporarily in certain areas of the processor. That information is reloaded when the user switches back to the original application. This switching occurs dozens of times per second and is largely transparent to the user, Halfhill said.
The two instructions allow data to be stored or loaded in groups rather than as individual data points, Halfhill said. They improve performance to a slight degree, but not by any factor that a typical user would notice, he said.
Any incompatibility issues that arose could probably be handled by a software patch, Halfhill said. In any case, the installed base of AMD64 applications is in its infancy, and most developers can work around the issue, he said.
These instructions are not present in currently available AMD64 chips but will appear in later versions, said Kevin McGrath, an AMD fellow. They were added at the request of certain software developers whose applications could benefit from the instructions in specific cases, he said.
An Intel spokesman declined to comment on specific instructions within Intel's EM64T architecture because the company has yet to launch chips based on the architecture.
The absence of the two instructions in Intel's architecture demonstrates how the two rival companies go to great lengths to ensure compatibility between their products without a formal process for sharing architectural advances and modifications.
Coming in from the cold war
Intel and AMD have an extensive cross-licensing agreement that allows either company access to patented technologies, such as the x86 instruction set that Intel patented more than 20 years ago and that both companies use to run their processors. This agreement has been in place since 1976 despite the intense rivalry that has developed between the two companies.
"It's kind of like the Cold War. Relations between AMD and Intel are probably as frosty as they ever were between the U.S. and Soviet Union," Halfhill said.
However, both companies have a vested interest in making sure their products are compatible. Analysts and sources close to the companies have said that Microsoft Corp. was not interested in developing two versions of Windows for x86 64-bit extensions technology. Because Microsoft was already publically committed to AMD's version of the technology, Intel had to follow suit.
AMD published volumes of technical documentation several years ago, after announcing its plans for the AMD64 architecture, to allow software developers to develop compatible applications. Intel probably designed its extensions technology by combing through AMD's manuals and figuring out which instructions were used to produce the technology, Halfhill said.
AMD has been doing this with Intel chips since the cross-licensing agreement was first signed, Halfhill said. But for once, Intel was put in the position of having to painstakingly comb through another company's developer manuals in order to produce a compatible product, he said.
"Although AMD has in the past introduced some innovations to the x86 architecture ... this is the first time AMD has truly steered the direction of the world's most important microprocessor architecture, which Intel invented in 1978 and has closely guarded for 26 years," Halfhill wrote in his report.
There is no formal cooperation between the two companies on matters such as this, and in fact they rarely talk at the executive level, Halfhill said. Engineers from both companies attend technical trade shows and conferences, and these compatibility issues have a way of ironing themselves out despite the tension between the two companies, he said.
"Compatibility is king," McGrath said. The two companies read each others' specifications and technical manuals thoroughly and spend hours testing each other's chips to ensure that the products are compatible.
But even though Intel's Santa Clara, California, headquarters is just miles from AMD's Sunnyvale, California, headquarters, and their businesses depend on producing compatible products, the two companies have no formal procedure for sharing architectural advances as they are introduced, both companies confirmed.