AMD, NVIDIA, and Developers Weigh In On GameWorks Controversy
Dputiger writes: "Since NVIDIA debuted its GameWorks libraries there's been allegations that they unfairly disadvantaged AMD users or prevented developers from optimizing code. We've taken these questions to developers themselves and asked them to weigh in on how games get optimized, why NVIDIA built this program, and whether its an attempt to harm AMD customers. 'The first thing to understand about [developer/GPU manufacturer] relations is that the process of game optimization is nuanced and complex. The reason AMD and NVIDIA are taking different positions on this topic isn't because one of them is lying, it’s because AMD genuinely tends to focus more on helping developers optimize their own engines, while NVIDIA puts more effort into performing tasks in-driver. This is a difference of degree — AMD absolutely can perform its own driver-side optimization and NVIDIA's Tony Tamasi acknowledged on the phone that there are some bugs that can only be fixed by looking at the source. ... Some of this difference in approach is cultural but much of it is driven by necessity. In 2012 (the last year before AMD's graphics revenue was rolled into the console business), AMD made about $1.4 billion off the Radeon division. For the same period, NVIDIA made more than $4.2 billion. Some of that was Tegra-related and it's a testament to AMD's hardware engineering that it competes effectively with Nvidia with a much smaller revenue share, but it also means that Team Green has far more money to spend on optimizing every aspect of the driver stack.'"
means having source code access and knowingly obfuscating code to impede your competitor?
This article is very confusing to me
2 BILLION will do fine.
Bottom line, if a game runs poorly on a graphic device AMD and NVIDIA directly get blamed. This program is merely NVIDIA's tack towards improving user perception. They know if you have a problem running software on one of their cards you will probably go buy a Radeon. The computing hardware in each card is far beyond the privy of any single developer to understand at this point. You need a glue layer and technical resources to properly expose the interfaces. The problem is when one vendor is specifically excluded from the glue layer. Both of these vendors have been cheating benchmarks by analyzing what game is attempting to access the features and then dumbing them down selectively in barely perceivable ways to artificially pump benchmark results. The problem I have with NVIDIA doing this is mostly that they typically have their own black box code (that is closed) and you have no idea how that is interacting. If it interacts poorly with your application you are just screwed. There is nothing to fix you must patch around it. Ergo, the state of the current NVIDIA drivers in Linux. =)
When opengl 1.0-1.3 (and dx5/6/7) was king, gpus were fixed function rasterizers with a short list of togglable features. These days the pixel and vertex shader extensions have become the default way to program gpus, making the rest of the api obsolete. It's time for the principal vendors to rebuild the list of assumptions of what gpus can and should be doing, design an api around that, and build hardware specific drivers accordingly.
The last thing I want is another glide vs speedy3D...err I mean amd mantle vs nvidia gameworks.
Mind you, I dislike lack of choice just as much as the next guy. But I'm not sure what exactly Nvidia is being accused of here. They make graphics cards and they make middleware that works better with their own graphics cards than their competitors'. What's the problem?
Frankly, it's time to stop blaming NVIDIA and start blaming ATi, yes everyone likes the underdog. But in this case seriously? They had 20 years to get OpenGL correct. Noone has been blocking them from writing their own drivers for Linux/Mac/Windows. Frankly I think that ATi has made a huge engineering mistake by only focusing on Win32 and by not supporting Unix from day one as a first class citizen, they've shot themselves in the foot, now they expect the industry to clean up the mess by conforming to ATi. I don't recall NVIDIA anywhere holding a shotgun to our heads and demanding we use OpenGL or else. They just made OpenGL available and importantly WORKING. OpenGL wasn't even NVIDIA's project originally, it's inherited from SGI. They've had approximately 20-25 years to implement an open spec, and they've failed to do so at every step. I've been watching the last 13 years as NVIDIA grew from a buggy hard to compile mess on Linux to the stable, fully featured driver it is now. ATi has never pulled off a competent GL implementation in all those years. Now people want to bring in conspiracy theories about NVIDIA blocking ATi from developing software? What a joke.
"Since AMD debuted its Mantle libraries there's been allegations that they unfairly disadvantaged NVIDIA users or prevented developers from optimizing code."
Get the idea?
It's time for the principal vendors to rebuild the list of assumptions of what gpus can and should be doing, design an api around that, and build hardware specific drivers accordingly.
For the most part, they've done that. In OpenGL 3.0, all the fixed-function stuff was deprecated. In 3.1, it was removed. That was a long, long time ago.
In recent times, while AMD introduced the Mantle API and Microsoft announces vague plans for DX12, both with goals of reducing CPU overhead as much as possible, OpenGL already has significant low-overhead support.
AMD supports openGL just fine, but they aren't gracefully failing sloppy programming. The Nvidia driver tends to try and make "something you probably sort of meant anyway" out of your illegal openGL instruction and AMD fails you hard with an error message. That's no reason to blame the manufacturer. The game developers deserve blame for sloppy coding and sloppy testing.
I was promised a flying car. Where is my flying car?
And Apple has followed that with its own "Metal".
I'd also add that considering the NVIDIA Binary blob works on FreeBSD, Solaris, Mac OSX, and Linux as well as Windows, that it is well engineered. The AMD/ATi driver doesnt' even work correctly on Linux, and Apple had to write their own driver for Mac OSX. There is an officially available (from nvidia.com) driver for Mac OSX for their Quadro cards. It is pretty obvious that AMD/ATi has always favored Windows/Microsoft and has put minimal effort into supporting Unix based platforms. Now they're reaping what they've sown and everyone's trying to defend them? No. You don't get to abandon a platform for years, then try to claim victimhood status for your own poor business choices. That's doesn't fly. Intel is having their first crack at this graphics stuff within the i915-current drivers. They're solid, reliable, a little lacking in features. But overall it works. My code written for Linux works on both nvidia and Intel. Not sure why the fact it breaks on AMD doesn't shout to people that AMD is the problem, but there you go.
It reminds me of some glitchy 1990s spam ladened chat program.
Sounds to me like you are using a 1990's card too, AFAIK "catalyst" is no longer supported and it's certainly not bundled with recent cards. I updated my NVIDIA driver just the other day, sure the driver is enourmous (250MB) but it installed flawlessly in the background without a reboot. I play WoT regularly at maximum detail on an i7 and have no issues other than the 200ms round trip from Oz to the US but it stays playable until that hits ~350ms. I've also been mucking around with CUDA for a few months, the developer resources are excellent and free for non-commercial use. If you really want to squeeze every last flop out of the card NVIDIA provide free resources such as the online book "CPU Gems" and the white papers that accompany some of the demo source, such as the optimised n-body example.
Stop creating new cards I can cook and egg on
My $150 GE Force 750 maxes out at just over a terraflop, significantly faster than ANY super computer that existed pre-Y2K. It uses less wattage than an old fashined light bulb, sure it can fry an egg, even scramble it with the on-card fan, but why is that a problem if it remains within its operating specs, is it that difficult to keep your eggs away from the video card. If your chickens are attracted to the heat then move the chickens outside where they belong.
In my professional opinion, I think the problem on your system is the chair to keyborad interface, it has nothing to do with NVIDIA or AMD's trully amazing technology since there is absolutely no need to fddle with default driver settings just to watch a movie. Listen to your wife and save yourself two headaches, forget about the PC drivers and just pay for the damned cable.
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
to me it sounds like again like the beginning of Internet Explorer vs. Firefox compliance to HTML standards.
Down to the detail of how it pans out:
- one company being the popular one (Microsoft, Nvidia), so everybody code to their platform (IE, drivers) and end up unknowingly produce bad that code that happen to rely on the peculiarities of this platform (the non standard assumption of Nvidia's drivers, the weird re-interpretation of HTML done by IE's engine). When there are problem, they tend to hack their own code.
- the other company being the underdog (Mozilla, AMD) making a platform (Firefox, Catalyst) that tries to follow the open standard to the letter (HTML5, OpenGL), but in the end other person's code (websites, code) behaves poorly, because it breaks standard and relies on quirks that aren't present in that platform. The users complain of problem (broken HTML rendering worse under Firefox than IE, non-compliant openGL code's performance being more degraded on AMD then Nvidia hardware).
Funnily, if past history is any indicator, on the long run AMD's approach is better and either them or one of their successor is bound to manage to bring opengl-compliance more important than driver tricks.
(the fact that AMD is dominating the current iteration of consoles, might help bring more power to them)
Interestingly the embed world might one also end up helping just like it did the browser wars (Internet Explorer was far less prevalent in embed machine like PDA/Smartphone/Tablet than on desktop and the problems with broken HTML became much more apparent, and compliance with HTML5 [sure to run on as much platforms as possible] was determinant. Also the embed eco-system mostly centered around compliant engine (like Webkit)) due to the same factors (extremely heterogeneous ecosystem hardware-wise, where Nvidia is just one player among tons of others with their Tegra platform. compliance with OpenGL ES is what is going to be determinant as the embed platforms are going to need a lingua franca to insure that porting an engine is as smooth as possible and works easily on all smartphones/tablets, no matter if they boast PowerVRs, Vivante, Lima, Adreno, etc.)
Maybe we might need something along Acid test and w3c conformancy test to exercise drivers and test game code for standard non-compliance.
(That partly exist as "piglit" - the test suite that freedesktop.org uses to test opensource mesa and gallium drivers).
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
AMD's perspective is that Mantle is less problematic:
- Mantle's spec are open.
- Also it's just a very thin layer above the bare hardware. Actual problems will mostly be confined in the actual game engine.
- Game engine code is still completely at the hand of the developer and any bug or short coming is fixable.
Whereas, regarding GameWorks:
- It's a closed-source blackbox
- It's a huge midleware, i.e.: part of the engine itself.
- The part of the engine that is GameWorks is closed and if there are any problems (like not following standard and stalling the pipeline) no way that a developer will notice and be able to fix, even as AMD are willing to help. Whereas Nivida could be fixing this by patching around the problem in the driver (as usual), because they control the stack.
So from their point of view and given their philosophies, GameWorks is really destructive, both to them and to the whole market in general (gameworks is as much problematic to ATI, as it is to Intel [even if it is a smaller player] and to the huge diverse ecosystem of 3D chips in smartphone and tablets).
Now, shift the perspective to Nvidia.
First they are the dominant player (AMD is much smaller, even if they are the only other one worth considering).
So most of the people are going to heavily optimise game to their hardware, and then maybe provide an alternate "also ran" back-end for mantle. (Just like in the old days of Glide / OpenGL / DX backends).
What does Mantle bring to the table? Better driver performance? Well... Nvidia has been into the driver optimisation business *FOR AGES*, and they are already very good at it. What is the more likely, that in case of performance problems developers are going to jump on mass to a newer API that is only available from one non-dominant PC player, and a few consoles, and completely missing on any other platform? Or that Nidia will patch around the per problem by hacking their own platform, and dev will continue to use the ?
In Nvidia's perspective and way to work, Mantle is completely irrelevant, barely registering a "blip" on the marketing-radar.
that's why there's some outcry against GameWorks, whereas the most Mantle has managed to attract is a "meh". (and will mostly be considered as yet another wanabe-API that's going to die in the mid- to long-term)
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
Developer see NVIDIA has better experience in creating great hardware than AMD, I assumed.
Nvidia PAYS for removal of features that work better on AMD
http://www.bit-tech.net/news/h...
Nvidia pays for insertion of USELESS features that work faster on their hardware
http://techreport.com/review/2...
Nvidia cripples their own middleware to disadwantage competitors
http://arstechnica.com/gaming/...
Intel did the same, but FTC put a stop to it
http://www.osnews.com/story/22...
so how exactly is that not Nvidias doing??
Nvidia is evil and plays dirty. They dont want your games to be good, they want them to be fast on Nvidia, any means necessary. They use "means to be played" program to lure developers in, pay them off and hijack their games to further nvidias goal.
For example how come Watch Dogs, a console title build from the grounds up with AMD GPU/CPU optimizations to run good on both current gen consoles, is crippled on PC when played on AMD hardware? How does this shit happen?
This is something FTC should weight in just like in Intels case.
Who logs in to gdm? Not I, said the duck.
You should look at the latest OpenGL ES specification. This is OpenGL optimized for mobile devices and gets rid of most of the old API bits while still supporting vertex, fragment and compute shaders. Anything else is just implemented using shaders.
But mantle gives you access to the hardware registers (those descriptors) while avoiding the overhead of updating the OpenGL state, then determining what has changed and hasn't, then writing those values out to hardware.
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
AMD made about $1.4 billion off the Radeon division. For the same period, NVIDIA made more than $4.2 billion. Some of that was Tegra-related and it's a testament to AMD's hardware engineering that it competes effectively with Nvidia with a much smaller revenue share, but it also means that Team Green has far more money to spend on optimizing every aspect of the driver stack.'"
While that's true for revenue, the difference in profits between AMD and NV are very close.
http://www.accountkiller.com/en/delete-slashdot-account Stop visiting Slashdot.
Wasn't MeTal a rendering API on S3 cards?
Anytime I see the word "unfair" used to describe a business practice, I laugh out loud. And then I mumble "idiots" in my best Jeremy Clarkson as I walk away.
oyun dediÃYidiÃYin Zaman tip akla Gelen AMD baÃ...Yka Ãf ¼ stÃf ¼ ne tanÃfÆ'à ± mam
http://www.akcayaktifemlak.com/