Friday, January 04, 2008

AMD is doing what???

Originally this was going to be a comment on more specification releases by AMD into X.org. I've already gone into the potential impact that the releases could have on computational physics. I also went into a post on Mepis Lovers covering some of the information from Phoronix. Phoronix reported that AMD had announced through the driver development IRC channels on freenode that they would be opening up the specifications on how to enable hardware accelerated video playback. Useful for those of us who run or build small media boxes. I also used the Mepis Lovers post to bring up the connection between the way AMD was developing future Graphics Processors and the way Display Port had been developed.

Well, AMD kept to the their word and more information was uploaded to the AMD Documents Folder on X.org today. Two files: http://www.x.org/docs/AMD/42590_m76_rrg_1.01o.pdf and http://www.x.org/docs/AMD/43372_rs690_rrg_3.00o.pdf.

While listing the information drop on Mepis Lovers I dropped by Phoronix to catch their report on the release since they normally have side information imparted in the IRC channels. Their report had one very... very... interesting line.
There was a chance that AMD would also be releasing the "tcore" sample code today as well, but due to the holidays, this code isn't yet ready for release. AMD engineers use "tcore" internally for software work, prior to the availability of the silicon for future GPUs. Once released, this tcore code will help establish the open-source 3D support within DRM for the ATI R500 and R600 series. The tcore code should also help in 2D R600 acceleration. In addition, AMD will be open-sourcing part of their new proprietary OpenGL driver and will be in a state so that it can be patched into the existing R300+ Mesa driver.

I've bolded the important part. Now, depending on which part AMD is opening up the source code, there are a couple of different ways driver development could play out. My gut reaction is that it will probably be the 2D driver engine. As I found out myself with an RadeonHD 2600, the Mesa Driver is extremely slow.

Click on the Picture for larger size.

Yes, I had the correct resolution, but there was a visible refresh rate to everything that went on. Scrolling down a simple webpage... say, like this blog, was reminiscent of watching a mis-timed movie from the 1930's. By opening up the 2D engine AMD would have something similar to the NV driver from Nvidia. 2D drivers don't change much once they are written, and are changed mostly to add in new devices.

However, there is also the possibility that AMD could be opening up the 3D engine. My gut reaction is, not likely. Opening up the 3D engine would create direct competition for the RadeonHD and X.org Radeon drivers, which AMD doesn't want. It would suddenly make no sense to have a funding agreement with Novell. Why pay somebody else to develop software you just released?

The big question however is this... why?

Why would AMD open up a part of their new driver that existing drivers are already on their way to supporting, if not already fully supporting, in operation? I don't think I have an answer, but I may also be thinking too hard about the subject. I might be looking for a competitive advantage or technical reason... when there may not actually be one.

This might actually be a case where there is a driver code release simply because the vendor's solution is better, and they can do it. Part of the rational behind writing a completely new OpenGL driver to begin with was to leave the old legacy licensing behind as much as possible.

Or I could be completely wrong and AMD could be releasing something else entirely that would plug into the MESA driver... that isn't already available. Oh how I hate waiting.

No comments: