Meet AMD’s Mike Houston

Okay, I suppose at this point we are all familiar with John Fruehe, and his behaviour on public forums. I suppose you also know about Randy ‘40%’ Allen, and Richard Huddy. And there is also Dave Baumann, of course. I’ve also mentioned Dave Hoff before, so perhaps you are familiar with him as well.

But, somewhat related to the goings-on with Dave Hoff, namely with OpenCL in general, there is Mike Houston. You see, when my GeForce 8800GTS died, and I got a Radeon 5770 replacement instead, I was working with early OpenCL. Since nVidia was rather silent about OpenCL in general, while AMD was extremely vocal about it, I expected OpenCL support to be better than nVidia’s (not that I really had complaints about nVidia at that time).

But no, I found out that AMD still had quite a few problems. You could not use the regular WHQL drivers, but only some hotfix ones, which did not always install or uninstall properly, you had to install the entire SDK just to get OpenCL support, since there was no separate OpenCL runtime available (not really something you can sell to end-users). And even if you only wanted to use OpenCL on the CPU, you still had to install some of the Radeon display driver DLLs, since they were hard-linked to the OpenCL runtime. Which is rather annoying when you want to run OpenCL on a system with an AMD CPU and a non-AMD GPU (or at least an AMD GPU that is not OpenCL-capable).

Anyway, I mentioned the OpenCL disappointment casually on Beyond3D:

I feel that currently nVidia doesn’t have its hardware in order, and ATi doesn’t have its software in order. For gaming the HD5770 is doing its job, but I am disappointed by the lack of OpenCL support. The 8800GTS did that lots better. On the other hand, DirectCompute is here now, and I wanted to use that anyway, as I use DX11 now.

As you can see, the moderators split up an entire thread for this casual remark (it was not my intention to start a new thread on this topic, since I didn’t see it worth debating. The problems were already known, as I have reported some of the problems to AMD myself, and noticed that others were being discussed on the AMD/Khronos OpenCL forums anyway, so they were known to AMD). I hate it when moderators do that without asking. By splitting up a thread, they give off the impression that the first poster wanted to discuss the topic, which draws a lot of unwanted attention. And obviously they picked the ATi-remark to split it on… not the remark I made about nVidia not having their hardware in order (they did not have any DX11 parts out yet at the time).

Mike Houston does what John Fruehe is famous for: he distorts the truth:

OpenCL runs on the 5770.

Which is true, theoretically. However, I never denied that OpenCL runs on 5770, I just found the level of support rather lacking overall (but I didn’t go into detail as it was a casual remark, not wanting to start a debate on the issue). Ofcourse the usual AMD apologists join in (probably the point of splitting up the thread in the first place: covering AMD’s back).

In the meantime, Mike Houston sends me this unsollicited private message:

“What do you mean support is lacking? The chip is fully supported by the 9.12 hotfix driver and the Stream SDK we ship…

And as for devrel, we are involved with all of the ISVs that have expressed any interest in OpenCL and work pretty actively with them. Could we do better, yes.”

Clearly I did not care for this tone at all. In fact, I do not care for unsollicited PMs anyway, especially not when they are from company employees. What am I to make of this? It basically sounds like: “We are involved with some ISVs, and we have full support, so there is no lack of support. You mean nothing to us, so just shut up”.

So I answered him, saying that he should know what type of things I am talking about, as I have reported some of the issues myself, and seen others being discussed on forums. And I wanted to leave it at that, since I never wanted to discuss the topic in the first place (if I report a bug, it is done with, from my side, right? I don’t have to argue with AMD’s employees over whether it actually is a bug or not, right? Why does AMD always treat their users as if they are idiots? Then again, they may have somewhat of a point…).

Anyway, I commented on Mike Houston’s PM in public, as I was not impressed with it at all:

Funny enough, mhouston still PMs me asking what the problems are. That’s why I think AMD devrel stinks. They pretend like they don’t even know about issues like this. I’ve seen threads on their forum about it. You know what’s broken. Don’t PM me pretending that everything is fine and dandy. I’m not an idiot.

Which apparently was enough reason for the Beyond3D staff to ban me. Yes, if you have criticism on AMD products, you are a troublemaker (does that sound familiar? People arguing against JFAMD’s Bulldozer claims would also be met by strong flaming from the AMD fanboy crowd, and would find themselves banned at times, since even the forum staff bought into JFAMD’s fairytale. Beyond3D is worse though, as AMD’s Dave Baumann used to be the site’s owner. More viral marketing?).

Anyway, since Mike Houston annoyed me with PM’s, I decided to return the favour. I kept asking him when there would be an OpenCL runtime in a regular driver release for end-users. After all, as a developer, you need to know when AMD users get OpenCL support, so you can actually release your application to them. So every month a new driver came out, with no OpenCL, I would ask the question again.

At first, there was no response at all. Then I sent this:

So what is this, Mike?
I’m a paying customer and registered developer with
AMD…I’ve complained about OpenCL support before… At first you flatout deny it, which I consider a huge insult. Then when you realize I can’t be fooled by your spindoctoring nonsense, you ask what you can improve…
And two driver-updates later, my requests are still ignored…
Still no OpenCL runtimes for end-users.
I thought AMD was so big on OpenCL? That nVidia was the evil proprietary Cuda monster, and you were going to save us with open standards?
Doesn’t look like it from where I’m standing.

And you don’t even answer any mails either.
What kind of a joke is this company?

That finally got *some* reply out of him:

You’ve been heard.  Not everything may be done as quickly as we would all desire, but things are being worked on.

-Mike

Still not very friendly, but it’s a start… So I asked two specific questions regarding the binary compatibility of OpenCL applications (for when I want to release them to end-users). This time I finally got a more thorough answer, and in a friendlier tone. Perhaps it finally dawned on him that I was actually a paying customer and a registered developer, and I was basically beta-testing their OpenCL for them, and had reported some issues, which they had subsequently fixed.

Anyway, this was his reply (in blue):

I’d like two specific answers:
1) What is the eta for Catalyst WHQL end-user OpenCL support? March? April? December… 2012?

[MCH] There is a full roadmap available to ISVs under NDA that cover the role out of this and other features.  We are trying to pull in the release to be sooner rather than later.   At the moment inclusion in Catalyst is aligned with when several
vendors have plans to release and sell OpenCL apps.   I would like to see things in Catalyst before that.  We need to work on the size of the OpenCL runtime to avoid ridiculously bloating Catalyst, and also deal with ICD installation issues we are having with other vendors who are not running the Khronos ratified ICD, and then how to not stomp on each other.  This is all being worked on alongside other features.

2) How ‘final’ is the current SDK? It’s not in beta anymore, but in the newly released 2.01 SDK’s I notice that they are built
for/against 10.2 or higher drivers.
[MCH] Those should still work with 10.1 as well.  If not, we screwed something up.  But, the base drivers (and more
specifically CAL), get updates that improve stability, performance, or will enable certain features.  10.2 contained stability and performance improvements at the driver level, as will future releases.

Are there any more ‘surprises’ in store? When the beta 2.0
Stream SDK went final 2.0, suddenly OpenCL had some significant changes, requiring a rebuild of applications in
order to work with the newer runtime.
[MCH] Besides the ICD and the stabilizing of calling convention under Windows (it took a little while to get that fixed in Khronos and not all vendors are shipping a Khronos approved ICD),
what else changed that caused recompiles?  Getting calling convention agreement went pretty fast (which you reported) and we tried to be responsive quickly. 
(Things like that we can push out much faster to developers directly, which we did).  Ratification of the ICD and the platform stuff was a little late from Khronos and not all vendors have moved to the ratified ICD.

Not something I expect from beta -> final stage… that’s
something that should only happen in alpha stage.
In other words… if I were to build and release
something with today’s SDK, will it still work when end-user runtimes are released, or would I need to rebuild again?
[MCH] It should continue to work since the ICD is now supposed to be the stabilization point, so there should be ABI stability there.  The end-user runtime will be extracted from the developer releases, but the developer releases will likely remain ahead. 
However, it’s possible, of course, that bugs may happen.  We try to prevent this by running previously compiled OpenCL code against new releases to catch these issues.  For ISVs that are gearing up for releasing apps, we try to get stability and performance test cases from them, if not full apps, for inclusion
into QA so that things remain as stable as possible and to avoid performance regressions where possible.  If we don’t have the app, or at least test cases, it’s difficult to make sure an app doesn’t break.

Gee, finally a decent answer out of an AMD-employee. Why couldn’t he do that the first time, instead of acting like an arse and treating me like an idiot (he even acknowledged that I reported some bugs now)? Did he only now find out that I wasn’t bluffing? That I was an actual 5770 customer, who actually used OpenCL, and actually had reported some bugs? Or did someone higher-up in the company set him straight? And why is a roadmap for OpenCL drivers under NDA? Why aren’t you open about the way you support open standards?

Anyway, I decided to leave it at that. The damage had already been done anyway, and I decided to just go back to nVidia, once the GeForce GTX460 was launched.

For completeness however, I’d like to report that AMD finally released an OpenCL runtime for end-users with Catalyst 10.11, in November of 2010. More than half a year after this whole episode. And more than a year after nVidia’s public OpenCL support for end-users. A bit strange, considering AMD’s marketing offensive on OpenCL at the time, don’t you think (Which must be why they couldn’t disclose their driver roadmap, and the ISVs involved in AMD’s OpenCL program were also under NDA, and not allowed to comment)? Speaking of which… has anyone seen any games with physics acceleration for AMD GPUs yet?

This entry was posted in Hardware news, OpenCL, Software development, Software news. Bookmark the permalink.

12 Responses to Meet AMD’s Mike Houston

  1. Bonzai says:

    That sure doesn’t sound like Mike answering you. It’s almost as if someone else was requested to respond to you with a bit more knowledge, tact, and understanding. I’ve seen that happen alot with many upper management dbags. But who knows. Honestly, AMD’s software/drivers have been pretty bad for quite sometime. Even now, I’m not very sure. I try my hardest to convince my friends to least consider nVidia due to software being superior (After picking up a 580gtx, I REALLY haven’t regretted a thing due to the interface just being so easy to use) in functionality, design, and stability.

    I really tried to use AMD, REALLY tried. But after the 5870 Grey Screen of death bullshit, I’ve never wanted to look back at them. Worst money I’ve ever spent with regrets. I wish I could comment more about OpenCl, I’m not a programmer though. I just get the idea that the CUDA program is far superior than AMD’s. nVidia has physics through OpenCL or it’s own physxs, just up to the developer. I’d rather see physics done through OpenCL just because everyone can enjoy it. Alas, that is not how it works to convince people to buy products.

    Keep it up Scali! I use to read Beyond3D but I stopped because they never really updated much in reviews, just more or less a forum about technology and coding, which is cool! I learned alot of things, 3d technology really just because I’m a junkie engine and tech junkie. But it seemed like the website was kinda going to pot. Never would get updated (at the time I would visit) much. And that is a stupid reason to ban someone. Political gesture, pussy move. People get mad when it’s thrown in their face that their shit stinks. Damage control I guess.

    • Scali says:

      Well, the first OpenGL-based game in years, Rage, showed AMD’s driver quality once again.
      And I suppose there’s more truth in this than you thought: “I wish I could comment more about OpenCl, I’m not a programmer though.”
      Yes, you’d basically have to be a programmer yourself to get into contact with OpenCL. There aren’t any major applications out with OpenCL support (or any kind of AMD GPGPU support for that matter).
      I’m not sure if people actually know about CUDA, but PhysX is powered by it, and I’m sure that plenty of people with an nVidia card have actually played games with GPU PhysX. Aside from that, Adobe has CUDA acceleration in PhotoShop and Premiere. Those are two very popular applications, so I’m quite sure that many people with an nVidia card have used CUDA with this in practice.

      How much longer do we have to wait until OpenCL takes off and becomes an alternative to CUDA?

      • Bonzai says:

        Yeah, because I hear so much push for CUDA by nVidia that OpenCL isn’t even used if nVidia gets with the programmers of the software. I mean, Fermi 1.0 was a CUDA CPU all on its own. Crazy piece of technology but wasn’t something that was really designed for Gamers. At least to my knowledge. One of the reasons it ran so damn hot was because it was layered with tech that was designed for other uses than just games.

        Nice pioneering, but odd choice. I would think they would have built Fermi for Quadra or something along those lines (Which they did do, just they sold that video card as if it was designed for gaming as well). But I like where CUDE is going and if OpenCL can do the same thing, then why isn’t there support for it? Physx is GREAT, but can’t OpenCL do something similiar? Same thing with special effects.

      • Scali says:

        Well, CUDA is much older than Fermi. It was introduced with the GeForce 8800 series. And yes, even those ancient cards can do PhysX and OpenCL. AMD’s competing products from that era can not. You need at least a Radeon 4000-series to get OpenCL.
        In theory you could do physics acceleration with OpenCL… the problem is: someone has to actually develop it. The Ageia people (who made the PhysX PPU) were smart enough to buy NovodeX, which was a relatively popular physics library, especially on consoles, and then added support for their PPU. Then nVidia was so smart to buy Ageia out and adapt it for their GPUs. The advantage is that the physics library itself was already quite mature, and was reasonably popular with developers.
        AMD missed out there. And Intel bought the only other major physics library: Havok. So AMD has options left. They can’t adapt a popular physics library, and apparently they don’t have the in-house development capacity to write it from scratch either. But even if someone eventually comes up with a physics library with OpenCL acceleration (such as Bullet?), there is still the problem that it is not a popular choice with developers. So I don’t see OpenCL physics in games anytime soon.

        I’m also not sure if we should view Fermi as a CUDA processor only. That’s what a lot of people thought… But firstly, CUDA also powers DirectCompute, which is part of DirectX 11. And we see that Fermi generally beats AMD’s GPUs quite easily in DirectCompute-tasks in games.
        And secondly, Fermi also does graphics really well. It is still the fastest GPU on the market, and especially with tessellation, there is no comparison.
        So I think it is very much designed for games, even more so than AMD’s offerings. Fermi is DX11 done right.

        The main reason why it ran hot is because TSMC had problems with manufacturing. After some tweaks, nVidia came up with the GTX580, which is still very much Fermi, but gives you even more performance, with less heat. Even the smaller cards (GTX460/560) still have nearly all of Fermi’s features, including the great tessellation performance and very good CUDA/OpenCL support.

      • k1net1cs says:

        The thing is that even Nvidia has started to support OpenCL.
        Aside from some folding or BOINC projects, I have a hard time finding OpenCL implementations anywhere else.

      • Scali says:

        nVidia has always supported OpenCL. They were the first to have official OpenCL drivers out, yes even before AMD. Which I covered in a blog at the time: http://scalibq.wordpress.com/2009/10/03/amd-seriously-needs-to-work-on-their-pr/
        Since AMD was marketing their OpenCL support… even though they didn’t have it! While nVidia did…

      • k1net1cs says:

        That made me cringe a bit.
        That company really have sunk so low, drowning in their own fictitious sub-pixel triangles.

      • Scali says:

        Yea, how’s that for irony? AMD was promoting OpenCL and Bullet in the press as their ‘open standard solution to physics’… But in the meantime Erwin Coumans, the lead developer of Bullet, says he is developing the OpenCL port on nVidia hardware.

  2. Bonzai says:

    oh yeah thats right! Folding! Pretty big the last few years. Then theres the BIT COIN crap that AMD’s video cards seem to be doing real well with.

  3. NewImprovedJDWII says:

    Even though i agree on some points(Everything in this article) i really don’t agree with having issues with playing games or watching HD movies Amd is very good in this respect with all the games I’ve played and i owned them for the last 2 years. I’d say Nvidia has the upper hand on drivers then Amd and their usually the first to support a new game or a needed update for a game. But to be honest i had nvidia video cards as well and i love them and their OK at Price/Performance not as good as Amd but close but their power usage is outrages for their mid-range cards vs Amd’s. And i really like Amd’s settings for videos and such they offer more then Nvidia’s settings and benchmarks agree Amd has the upper hand on visual quality on videos and i can tell it even looks better on just normal things such as text and pictures using a Amd over Nvidia and the both look MUCH better then Intel graphics like WOW better. I can’t tell much when it comes to games though.

    As for the OpenCL support on AMD i can care less but i’m not a developer so why should i care i’m more likely to use 3 monitors at once then use Cuda or OpenCL or physx and let me tell you something i’m not going to use 3 monitors any time soon!
    As for Mike Houston he sounds a lot like that JF-AMD guy who is not nice to Amd fans or anyone else online for that matter. You treated me with more respect when i was disagreeing with you a while back then jf-amd did when i was agreeing with him. Awkward!

    • Scali says:

      I’d say that generally AMD’s drivers are okay for games… since most games are Direct3D-based. But well, have you tried Rage when it came out?
      I tried it on my Radeon 5770. Game just crashed with the latest WHQL drivers. Then AMD released a special beta driver: ‘Rage Performance driver’. So I installed that. It fixed the crash, but performance? No. The game ran at less than 1 FPS, completely unplayable.
      Then AMD released *another* beta driver, which they called ‘preview 2′. I’m not sure what it was supposed to do, but it didn’t fix the horrible performance for my 5770 at least.
      Then *yet another* beta driver was released, ‘preview 3′, and I could *finally* play Rage properly on the 5770. Mind you, it still wasn’t perfect: you’d still see the occasional weird colours flashing on some textures (black, white, red, blue, I’ve seen it all).

      And on my GTX460? No sweat at all. It ran just fine with the WHQL drivers I had installed, which were released months before Rage (in August). Yes, nVidia had some beta drivers out which allegedly improved performance in Rage, but I never even bothered to install them, as the game ran fine anyway.

      Another driver annoyance is with an old box of mine with a Radeon X1900XTX. AMD only offers a ‘legacy’ driver for it, which is rarely updated… And it is broken: it doesn’t install the OpenGL components. So I cannot use any OpenGL applications on that machine whatsoever. Besides, why is such a card so poorly supported? I have a GeForce 7600GT from the same era, and nVidia’s latest drivers still support those. So you still get all the latest features and fixes for that card.

  4. NEWIMPROVEDJDWII says:

    Well i can’t say much about Rage but old ATI drivers SUCK so badly that’s why i got Nvidia in the first place.

    But toms did do a article on rage performance

    http://www.tomshardware.com/reviews/rage-pc-performance,3057-7.html

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s