It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
From my perspective, benchmarks of games are the ultimate test ground. Comparing FPS and render times. Card specs don't matter once you have that information with the possible exception of memory. Because those specs are all a means to an end, which is game performance and power usage. Good GPU reviews include multiple benchmarks with various features (AA, shadows,...) enabled to get a comparison relative to other GPUs.
avatar
qwixter: From my perspective, benchmarks of games are the ultimate test ground. Comparing FPS and render times. Card specs don't matter once you have that information with the possible exception of memory. Because those specs are all a means to an end, which is game performance and power usage. Good GPU reviews include multiple benchmarks with various features (AA, shadows,...) enabled to get a comparison relative to other GPUs.
Indeed especially if you take multiple benchmarking sites, comparing their numbers (preferably in different situations in-game so not all of them testing the same thing) and comparing to enthusiasts who purchase the latest cards and then test themselves with a few modern , demandning games (provided you find those that are trustworthy).
avatar
Atlantico: My basic premise is that benchmarks are an artificial construction that really only demonstrate what the benchmarker wants them to demonstrate. For instance, take the HD7970 vs GTX 680, back in the day all benchmarks declared the 680 to be a far superior GPU.
It not entirely true that "benchmarks declared the 680 to be a far superior GPU". It did beat the 7970 in most games (but lost significantly in others), and checking some 780 reviews, it also beat the 7970 in most games when the 780 was released. Which means that those who chose it over a 7970 got a slightly cheaper, slightly less power hungry, somewhat more powerful card for games at release which also proved itself a year and change later. So at least in the short run the 680 was a better choice. In the long run, both cards are long in the tooth, but the benchmark you linked to shows that about 4 years after release the 7970 holds out better. So is it worth it to pay more for a slower card at release to get a better performing card some years later? I'm not sure.

The other question is, how do you predict that? Was there anything particular that made you think that would be the case? You're talking about understanding the architecture, but what about it could help predict this?
avatar
Atlantico: My basic premise is that benchmarks are an artificial construction that really only demonstrate what the benchmarker wants them to demonstrate. For instance, take the HD7970 vs GTX 680, back in the day all benchmarks declared the 680 to be a far superior GPU.
avatar
ET3D: It not entirely true that "benchmarks declared the 680 to be a far superior GPU". It did beat the 7970 in most games (but lost significantly in others), and checking some 780 reviews, it also beat the 7970 in most games when the 780 was released. Which means that those who chose it over a 7970 got a slightly cheaper, slightly less power hungry, somewhat more powerful card for games at release which also proved itself a year and change later. So at least in the short run the 680 was a better choice. In the long run, both cards are long in the tooth, but the benchmark you linked to shows that about 4 years after release the 7970 holds out better. So is it worth it to pay more for a slower card at release to get a better performing card some years later? I'm not sure.

The other question is, how do you predict that? Was there anything particular that made you think that would be the case? You're talking about understanding the architecture, but what about it could help predict this?
The GTX 780 (released late 2013) was never in direct competition with the HD 7970 (which was released in 2012), rather in competition with the AMD 290X (released late 2013), so no question the 780 performed better than the 7970, but then again it was released a year after the 7970. The GTX 680 was the direct competitor to the 7970, which is why it makes sense to compare those two - those were the GPUs consumers had to choose between at the time.

Those who chose the GTX 680 got a considerably more expensive GPU that performed better in benchmarks when it was released, but is outdated today and those who bought a cheaper 7970 got a card which benchmarked worse and can still run the latest games with the latest graphics tech. Power consumption between the two is a wash basically (1 watt, according to benchmarks http://www.tomshardware.com/reviews/geforce-gtx-680-review-benchmark,3161-18.html )

So in the short run the GTX 680 seemed to perform better and *cost* considerably more, but in the long run it was matched and outperformed by the 7970.

How did I predict this? Three reasons. The 7900 line of GPUs used a completely new architecture, the GCN, so benchmarks for it were likely to perform as all benchmarks tend to do. Measure what they already know and fail to measure new tech. Benchmarks generally suck when it comes to new architecture, be it GPU or CPU. Meaning that further driver development would help considerably and push the 7970 up to and over the 5-10%-ish that the 680 had over it at launch.

Second the 3GB VRAM standard for the 7970, at the time a huge overkill of VRAM. Almost no games needed that in 2012, even at 1080p. However it doesn't take a Nostradamus to predict that games will become increasingly VRAM hungry and even though 2GB was sufficient at the time, 3GBs was prepared for the future.

Third, while the game benchmarks were sort of disappointing for the 7970 compared to the 680, the compute benchmarks were just astronomically better. Compute on the 7970 is an order of magnitude better than the 680, but not a lot of games needed that *at the time*. People were buying the 7900 line not just for gaming, but for number crunching (Bitcoin mining), because it was so damn good at it. And what was an interesting feature at launch has become an important feature, because games today can use compute on a GPU way better with OpenCL, Vulcan and DX12 and a GPU that can handle compute incredibly well - and at the same time as executing graphics - that seemed like a really good GPU for the future.

In short, new architecture, amazing compute performance and a huge amount of VRAM. All for a lower price than the 680 which was lauded at the time as the "better" card because of benchmarks. Nothing else. It just performed better at launch. Benchmarks just don't matter much, they can give an idea of performance and a point of reference, but makers of GPUs will do anything to get their GPUs to benchmark well, including tweaking the most commonly benchmarked games to perform better that they should. Perhaps knowing that most people trust numbers, surely numbers can't lie.
Post edited May 12, 2016 by Atlantico
avatar
ET3D: The other question is, how do you predict that? Was there anything particular that made you think that would be the case? You're talking about understanding the architecture, but what about it could help predict this?
Qualified guesswork, or something like that :p It generally doesn't matter now, though. You essentially get to something playable by turning on or off some extra filters.

And the architecture differences aren't really as apocryphal as it sounds, either. Or extremely different between nvidia and amd. It used to be, before everyone moved to general purpose "shader units", instead of vertex and pixel shaders.

But basically what happens is that you have a number of simple processors (simd-units) that run simple math operations over the graphics card ram. So what you're looking for is 1. bus transfer rate and bus width to the pci bus, 2. internal graphics card memory controller speed. 3. number of shader units. 4. instruction queue depth. and 5. instruction rate (i.e., clock speeds).

The problem is that these shader units are difficult to compare "objectively" from specs (Fermi shaders vs. kepler and pascal, maxwell, vs. AMD cores.. complete jumble). And that some post-filters, culling operations, and so on can be more or less efficient on cards that have comparative benchmark results.

But on desktops now you at least don't need to worry about something being cpu or gpu-bound any more, since pretty much every cpu is fast enough. Still, it's possible to crash the framerate in certain games by selecting particular filters that are inefficient, and it's possible to stall a cpu-bound routine in other ways. So one thing that would help a lot when analyzing benchmarks would be to look at what sort of effects and filters cause slowdowns, and compare that. This is something Anandtech won't do, for example, because they genuinely think that what they get from the publisher or their partners is the objective truth, and things like that.

To complicate things more, nvidia are very good at tweaking drivers to specific games, to basically collapse some routines into fewer instructions. While AMD won't do that. So often you used to see that low-end nvidia cards score well in benchmarks, in spite of having "objectively" slower hardware. But that the average framerate overall suddenly had very low points, for example. It's not as bad now, but selected benchmarks helped sell a lot of geforce cards that weren't very good for the price. Their new g-sync thing as well - it's just an admittance that they won't make cards that won't have these periodic slowdowns in complex scenes. It's just not the priority.

Anyway. So what is interesting more recently is that we are (very) slowly get more and more interesting effects put into games that rely on computation of in-scene locations. So to avoid slowdowns for effects like this, developers usually just optimize them for output via include packages that .. nvidia makes. Like physx. And then you know on beforehand that if you can force it through those include libraries, then the nvidia cards will run it well enough. And then that's generally the baseline. To move from that then usually involves adding a second toolchain. Like the hairworks stuff vs. tressfx for example. Either it's a baseline target on one card, or it's partial support on the other one. Or else that component is completely different between the two architectures.

And this is essentially decided without any marginal performance differences in mind. It's about ease of use of libraries and tools instead. And because nvidia have been very good at marketing their stuff lately, there's a draw towards using their tools. And that stops people from moving to more general purpose compute based graphics contexts.

This has lasted for a very long time now. Much longer than people less cynical than me thought. Until we end up at a point where Nvidia actually do make a chip that's super-focused on simple effects and short return time for those types of effects, like Pascal is (it's really primarily a mobile chip - they've reduced the power-draw massively without losing performance, basically, like on maxwell - super for a laptop and a 40-60w package). It's basically the same card and featureset as before, just more efficient.

Because that's what games run on. Compute effects and location based particle system effects tend to be some kind of hobby-project for programmers anyway, so if those types of effects show up, then you know that this is because some unknown and underpaid programmer managed to smuggle something into the code that runs super-efficiently on the simple logic the smx/simd-units runs on. If you've played bf3, then there are a lot of lighting and shade effects in that game that is specifically written general shader code for the game-engine with that in mind. Which... isn't typically how you do it when you rely on 3rd party tools.

So when looking at architecture now, it's really the same problem that we had several years ago: will you choose something that you know will work perfectly fine right now, and will have support for as long as that card is relevant. Or will you accept some extra tweaking and some inefficient drivers - in return for potentially getting some extra features that programmers may eventually make use of.

But until some next generation GCN on amd cards, modern cards now are literally idential. What you're really looking at when you see a 8% difference in benchmark scores is that you may or may not get 54 and a half frames per second with 16xfsaa so you need to turn something down to keep 60fps.

And the only really interesting thing that's happened lately is the apu designs. But even then the potential of that design is fairly low, and in limited and specialized applications, you would very likely prefer a traditional gpu/cpu design with just more compute units available on the card instead.

So yeah.. it's basically the same. Nvidia have some really good itx-cabinet cards now that run very smoothly on few watts (though they don't advertise that as much as the titan cards). And AMD have a few solid value cards, in that their top of the line fails to impress in the benchmarks.

Eventually we're going to see something else, of course. And it will be compute based with predictable process diagrams, without any doubt. So that's where the improvement has to happen, with compute performance on some high-level language (read: OpenCL).

But the kind of differences I listed on top of the post, that would have been the difference between the Witcher 2 running in 60 or 30 fps with a specific set of effects turned on a while back, or what might be interesting to laptop gamers deciding between a 40w and a 120w package --- this is completely insignificant on desktop cards now, because it affects a lower treshold of 80 vs. 70 fps with everything including ray-bans turned on. You're in reality talking about buying a super-charged monster-card that spends twice as many watts to run 16 instead of 8 x full-screen anti-aliasing (or basically supersampling the same inaccurate pixel in the texture 90 times - it's a complete waste of processing power. And if you bought a water-cooling unit to cool it down that cost as much as the card - the colour in the tubes better be really good).

So when you shop for cards now, try to look for a target you're looking for, and then buy the cheapest card that achieves that. And then keep it for the next 10 years.
I'll wait for the Nvidia 1080p.
avatar
Atlantico: The GTX 780 (released late 2013) was never in direct competition with the HD 7970
You misunderstood. What I said was that when the 780 was released, the 680 was still competitive with the 7970. The newly released Gigahertz Edition was faster, but the 680 beat the original in most games.

As for price, the 680 was $500 while the 7970 was $550.

I didn't bother reading past these problems with your post, sorry for that.

I also feel that I understand now why the 7970 fares better with newer games. That's mainly because of AMD keeping the high end architecture largely unchanged (with the exception of the Fury). Devs tend to optimise for the latest gen, and AMD is still selling GCN 1.1 and even GCN 1.0 cards (and GCN 1.1 and 1.0 have only minor differences), while NVIDIA switched to Maxwell for by early 2015, and Maxwell and Kepler are significantly different. So naturally GCN has been getting more attention than Kepler.
I read an ad recently where you can sign a contract with a phone company to issue you a new smart phone every 2 years in exchange for returning the former and paying beforehand, saving some money at the end. I think Nvidia and AMD should offer something like this (assuming they can take advantage of old cards). This way people wouldn't need to worry about being futureproof since it's technically better to rely on newer technlogy so that companies don't need to offer support for old technlogy unecessarily long, instead allocating resources to R&D. It would probably simplify drivers optimizations since fewer models would need to be taken into account. Of course, that would make it easier for them to control the product rather than giving the customers options.
avatar
Nirth: I read an ad recently where you can sign a contract with a phone company to issue you a new smart phone every 2 years in exchange for returning the former and paying beforehand, saving some money at the end. I think Nvidia and AMD should offer something like this (assuming they can take advantage of old cards). This way people wouldn't need to worry about being futureproof since it's technically better to rely on newer technlogy so that companies don't need to offer support for old technlogy unecessarily long, instead allocating resources to R&D. It would probably simplify drivers optimizations since fewer models would need to be taken into account. Of course, that would make it easier for them to control the product rather than giving the customers options.
If such a thing became popular, it'd be quite the disaster for anyone not using the manufacturer's own (proprietary, limited platform support) drivers.
avatar
Atlantico: The GTX 780 (released late 2013) was never in direct competition with the HD 7970
avatar
ET3D: You misunderstood.
That's ok, I didn't bother reading past that, sorry for that. Have fun with those benchmarks!
Some people just can't handle facts. :)

(And I was looking forward to writing my anti-NVIDIA rant from a dev perspective, but Atlantico unfortunately gave up the moment the facts conflicted with his illusion of reality.)
avatar
ET3D: Some people just can't handle facts. :)

(And I was looking forward to writing my anti-NVIDIA rant from a dev perspective, but Atlantico unfortunately gave up the moment the facts conflicted with his illusion of reality.)
lol. Write it down anyway! :D
avatar
nipsen: lol. Write it down anyway! :D
Okay, I'll make it short. I'm not a game dev, haven't been for years, but I work with GPU's. I think that my experience is best summed by this slide. AMD's side is like 'you can basically do what you want, but there are ways to get more performance if appropriate'. NVIDIA's side is 'for this, do this; for that, do that'. And that reflects my experience. Let me use an analogy:

AMD is that nice, pretty woman that you want your parents to meet. She's not the most exciting, but you'll have an enjoyable time with her, you can trust her, and she will occasionally surprise you.

NVIDIA is that hot woman that can show you an amazing time, but only if you do exactly what she says. If she doesn't like something you've done, she'd be a total bitch.

In practice this means that AMD cards are a lot more lenient, and you'll likely get decent performance doing things naively. NVIDIA cards are more likely to show errors if you don't do things 'the right way' and could be much slower than AMD, but if you do things right, it could be faster than AMD. Plus NVIDIA really prefers you to do things via their own libraries instead of supporting standards.

That's the short of it, nothing specific, but I'll finish with another of these slides just to show how knowing features can and can't help decide on a card: here. Kepler does look rather shitty, but GCN vs. Maxwell 2, that's a toss-up in terms of features, it depends on what a developer will choose to use. And Skylake beats them both hands down.
avatar
ET3D: ...
*nods* seems like a good summary from my hobby-dev perspective too. I don't know, do you think we're actually going to see the platforms gravitate towards compute performance soon in terms of, say, more complex stream processors in higher numbers - more potentially wasted circuits, but easier to apply to general in-house engines. Or do you see things moving towards special pre-made library solutions?

It's kind of difficult because people I know who develop on their own, and don't have a studio, and so on, they keep wishing for more pre-made library functions, and think UE4 is the best thing they've ever seen. While.. kind of counter-intuitively, I guess, people I've talked to in larger studios tend to want more general hardware and specialisation options that don't need to be shoehorned into foundation software.

I mean, from my perspective, programming graphics context logic in a high-level language seems.. obvious as a goal. But what that means to some is calling library functions to polish objects, or somehow magically reducing complex scenes with .. libraries that they then imagine can predict the future. So they typically end up with a less complex design, that they then determine is the "best the hardware can do", etc. ..how do you see this up around the bend..?
Well, that was quick. PC Gamer already has a review of the GTX 1080.

From their games tests:
- On average 30-40% faster than the Titan X/980 Ti
- On par or faster than GTX 980 SLI

Add-on:
Ars Technica review
Tom's Hardware review
Post edited May 18, 2016 by mistermumbles