Is Nvidia unfairly pushing developers not to optimize their games for AMD hardware? That's the allegation made this weekend in a story by Forbes contributor Jason Evangelho. The story quotes Robert Hallock, technical communications lead for PC graphics at AMD. Hallock uses some pretty strong words to talk about GameWorks, Nvidia's programming toolkit and developer relations package:
Gameworks represents a clear and present threat to gamers by deliberately crippling performance on AMD products (40% of the market) to widen the margin in favor of NVIDIA products. . . . Participation in the Gameworks program often precludes the developer from accepting AMD suggestions that would improve performance directly in the game code—the most desirable form of optimization.
Hallock also alleges that "code obfuscation" stemming from GameWorks integration prevents AMD from adequately optimizing its drivers for some games. "[T]he characteristics of the game are hidden behind many layers of circuitous and non-obvious routines," he explains, adding that Nvidia has removed "all public Direct3D code samples from their site in favor of a 'contact us for licensing' page."
Ubisoft's Watch Dogs, which comes out today, is cited as a particularly stark example of unequal optimization. "It's evident that Watch Dogs is optimized for Nvidia hardware," Evangelho writes in his story, "but it's staggering just how un-optimized it is on AMD hardware." Evangelho also links an older article by ExtremeTech. That article made a similar observation about Batman: Arkham Origins, and it similarly pinned the blame on GameWorks.
We've seen in our own testing how AMD graphics cards can underperform in some GameWorks-enabled games, including Batman: Arkham Origins and Assassin's Creed IV: Black Flag, so Evangelho likely isn't wrong there. For whatever reason, some GameWorks titles do seem to run poorly on Radeons.
Curiously, however, Evangelho's story includes no statement from Nvidia—nor does it indicate that Nvidia was asked to comment. The story also makes some odd claims. It asserts, for example, that AMD's Mantle API "doesn't require" AMD graphics hardware to function and "will work equally well on Nvidia cards." (AMD told me at GDC that, with DirectX 12 now on the horizon, we're "probably not going to see" Mantle on Nvidia hardware.) Evangelho cites Mantle's purported vendor-agnosticism as evidence that AMD "clearly waves a banner of open-source development and ideals."
We've asked Nvidia to comment, and we're currently awaiting a response from the company. For what it's worth, though, a former Nvidia software engineer, John McDonald, sounded off on Twitter yesterday about this story. He wrote:
It is extremely frustrating to see an article criticizing work you did at a former employer and not being able to comment that the person who you are quoting from was just completely full of unsubstantiated [expletive]. Thanks, Forbes. . . . [A]nd while I never did, and certainly do not now, speak for nvidia, let me say that in the six years I was in devtech I *never*, not a single time, asked a developer to deny title access to AMD or to remove things that were beneficial to AMD.
Perhaps that's a hint of the response we'll receive from Nvidia. In any case, we'll update this story as soon as we hear back.