• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

The great NeoGAF thread of understanding specs

Tyrax

Member
Nice. This thread should be required reading per the neogaf TOS. :)

Atleast a reference to point people towards when they claim spec superiority.
Doesn't seem to matter too much anyways since games are always best on what the developer chooses as a lead SKU, even if the other has more bits
 

ekim

Member
That makes it even worse.....
1 billion flops = 1 GFlop

Aren't flops usually done per clock? Especially since that spec sheet is talking in generalities.

No. It's floating point operations per second. But after all comparing CPUs by its flops is pretty much useless as RISC CPUs need more operations for any task than a CISC CPU.
 

Jinfash

needs 2 extra inches
I could be completely wrong though, and maybe developers will just ship the PS4 versions of multiplatform games with "HD" texture packs like they do with the PC versions of console ports. That should make a reasonable difference, but first-party games will still be the real showcases for what you can get out of 8GB of GDDR5.
Since the two systems aren't generations apart, I wonder how many factors impact 3rd parties' decision to ship deceptively identical multiplatform titles. I mean, it's easier and cheaper to do so, but can politics be involved? History has shown how far MS can go to prevent its platform from looking bad in he general public's eyes.
 
Since the two systems aren't generations apart, I wonder how many factors impact 3rd parties' decision to ship deceptively identical multiplatform titles. I mean, it's easier and cheaper to do so, but can politics be involved? History has shown how far MS can go to prevent its platform from looking bad in he general public's eyes.

I'm not sure I'd describe it as politics necessarily, but that's actually a huge issue. Still, I'd be hesitant to assume any pressure is involved in those kinds of decisions. The best developers are also the laziest, because software is one of those things where a small and seemingly innocuous change can have serious ramifications in ways you couldn't possibly anticipate, and end up creating a lot of work for someone.

When porting games this current generation I think most studios just preferred to work on the 360 first because it was the hardware with which they were most familiar. Then when the time came to port, they changed as little as they possibly could to get something up and running on PS3 which wasn't abysmally awful to play, then went out back and took turns shooting rats with a bb-gun.
 

Boss Man

Member
Since the two systems aren't generations apart, I wonder how many factors impact 3rd parties' decision to ship deceptively identical multiplatform titles. I mean, it's easier and cheaper to do so, but can politics be involved? History has shown how far MS can go to prevent its platform from looking bad in he general public's eyes.
There have been PC ports to do this, but I don't know if that's ineptitude or 'politics'. Dark Souls for instance.

edit: Actually, lol. Maybe Durante can tell us more about this particular situation.
 

BosSin

Member
Hey, this will be a good read for revising on Computer Architecture.

That's one subject I haven't focused on in years
 
Durante, you should mention the latency differences between DDR3 and GDDR5, and why GDDR5 for a PC CPU probably isn't the best thing ever.

Up to you.
 

zoku88

Member
I would assume that it's because (1) they expect much of the heavy computational workloads to shift to the GPU, (2) tools are ready and mature for x86 and (3) it's cheap (in cost, die space and power consumption) and what AMD had readily available to integrate.

How much you think (3) matters compared to (1) and (2) depends on how cynical you are ;)

They both went with SoC designs, right?

It seems like it would be pretty hard to put a good CPU and a GPU on one die right now, without serious size (and thus heat) implications.

That's probably why they went with low power CPU cores and a high-ish GPU.


It would also take more effort for AMD to make a chip. AMD already has Jaguar APUs (though, not ones with as fast GPUs, I guess? I don't really keep up with AMD's designs), so making a Jaguar APU with a newer GPU core was probably easier...
 

Buzzman

Banned
This probably sounds stupid but I've always thought that the frequency only says how many cycles the processor goes through in one second, but differing architectures change what the CPU actually does during each cycle.

Basically an exaggerated and simplified example:

CPU A: can perform 100 instructions during each cycle at a frequency of 3.2 billion cycles per second (3.2 GHz) which turns into: 320 billion instructions per second.

CPU B: can perform 500 instructions during each cycle at a frequency of 1.6 billion cycles per second (1.6 GHz) which turns into: 800 billion instructions per second.

So even though B has a much lower clock it can still be superior to A and this is why you can't simply compare clock speeds.

Am I way off-base here? Sorry if this sounds stupid, I'm not very bright :(
 

UrbanRats

Member
Thanks for the thread.

I mean it's not like now i understand things perfectly clear, but at least it gives me a clearer picture than before.
The whole 8GB GDDR5 frenzy gave me a headache, but whatever, as long as open world games will benefit from it, i'm happy.
 

Durante

Member
This probably sounds stupid but I've always thought that the frequency only says how many cycles the processor goes through in one second, but differing architectures change what the CPU actually does during each cycle.
That's more or less what I'm trying to say in the OP. Final performance depends on many factors, and clock frequency is just one of them.
 

vall03

Member
man, this is a very informative thread. There are some stuff here that I didn't even know before. Very very useful info here, subbed!
 

QaaQer

Member
Maybe an APU section in the OP might be useful?

  • What kinds of benefits does an APU with unified memory have over traditional PC setups (separate CPU/GPU dies with 2 pools of memory)?
  • How potentially important is the fact that both the cpu and gpu are on the same die?
  • Could the Durango secret sauce have to do with APU optimizations and accelerations, and could that secret sauce eliminate any PS4 spec advantages?
  • Will APUs completely replace separte gpus and cpus in the future?


wikipedia said:
An accelerated processing unit (APU) is a processing system that includes additional processing capability designed to accelerate one or more types of computations outside of a CPU. This may include a graphics processing unit (GPU) used for general-purpose computing (GPGPU), a field-programmable gate array (FPGA), or similar specialized processing system. Variations on the usage of this term include a variation in which the APU is described as a processing device which integrates a CPU and an OpenCL compatible GPU on the same die, thus improving data transfer rates between these components while reducing power consumption by upwards of 50% with current technology over traditional architecture.[1] APUs can also include video processing and other application-specific accelerators. Examples include AMD Accelerated Processing Unit, Cell, Intel HD Graphics, and NVIDIA's Project Denver.

As a tech dilettante, I don't really understand the above paragraph. I need a car or sandwich analogy.
 

sholvaco

Neo Member
Could anyone knowledgeable enough provide average frame buffer bandwidth estimates for "typical" post processing effect laden graphical settings which are more or less guaranteed to be used in next generation console games (or current high-end PC settings)?

Using non deferred rendering, for resolution of 1920 x 1080 at 30 frames per second (Killzone Shadow Fall setup) with 4x MSAA or some form of post processing AA.
 

aeolist

Banned
Maybe an APU section in the OP might be useful?

  • What kinds of benefits does an APU with unified memory have over traditional PC setups (separate CPU/GPU dies with 2 pools of memory)?
  • How potentially important is the fact that both the cpu and gpu are on the same die?
  • Could the Durango secret sauce have to do with APU optimizations and accelerations, and could that secret sauce eliminate any PS4 spec advantages?
  • Will APUs completely replace separte gpus and cpus in the future?




As a tech dilettante, I don't really understand the above paragraph. I need a car or sandwich analogy.
You're basically referring to AMD's future plans for Heterogeneous System Architecture (HSA) which is their vision for fully integrating CPU and GPU resources into a single pool of silicon with both types of compute hardware being able to access any memory register being used by the other and software seamlessly switching between CPU and GPU cores as the workload and power envelope require it. They're still at least a year or two out from realizing the first real version of this, both in the hardware design and the software stack; this isn't going to be part of Microsoft's play.

According to all the rumors they use basically the same SoC with MS's version having some embedded DRAM for high-bandwidth GPU cache, fewer shader processors, and fewer ROPs. If this is the case there's no way they're going to be able to match the PS4 in pure computational throughput.
 

Durante

Member
Could anyone knowledgeable enough provide average frame buffer bandwidth estimates for "typical" post processing effect laden graphical settings which are more or less guaranteed to be used in next generation console games (or current high-end PC settings)?
This is really almost impossible for anyone not developing such a game right now. It greatly depends on the type of game, the rendering techniques it uses and it could even vary massively between frames -- e.g. when a nice volumetric explosion happens you could need half of your bandwidth just for all the nice volumetric smoke and fire effects.


What kinds of benefits does an APU with unified memory have over traditional PC setups (separate CPU/GPU dies with 2 pools of memory)?
It's cheaper now, and even cheaper in the future. It's also easy to use, since as a developer you don't need to worry which memory pool you are using for a particular asset, or about moving data to/from the gpu/cpu.

How potentially important is the fact that both the cpu and gpu are on the same die?
That depends on how much integration there is between them. It doesn't seem like there's any on-chip shared storage, at least on PS4.

Could the Durango secret sauce have to do with APU optimizations and accelerations, and could that secret sauce eliminate any PS4 spec advantages?
One potential rumored advantage is actually related to directly moving data from/to the GPU/CPU. However, if the rumored specs are correct that alone does not really make up for the generally higher performance of PS4. However, such comparisons are faulty in principles -- you can't just simply trade one resource for another. It depends on what you need, or if there are alternative algorithms you can use to take advantage of such features.

Will APUs completely replace separte gpus and cpus in the future?
Maybe in the long term. For now, they mostly make sense in low- and lower mid-end hardware. High-end PC hardware is simply too powerful (in several aspects) to put on a single chip.
 
This thread is badly needed not just here but on the internet. Since the announcement of PS4 and it's apparently super 8gigs of DDR5 RAM a lot of people have been boasting about stuff that they don't know much about. DDR5 seems to be the new Cell and a lot of buzz words are coming out of it.
This thread really clears a lot of stuff up and from a dude who knows what he's talking about too ;) nice work
 

TheExodu5

Banned
Thanks for creating this thread. Very informative stuff.

Question regarding out-of-order execution. Is this simply branch prediction (whereas it executes code following a given result of a conditional branch and flushes the pipeline if incorrect), or is there more to it than that?

edit: Reading the wikipedia page it makes it sound like they're just talking about a pipeline with branch prediction.
 
Thanks for creating this thread. Very informative stuff.

Question regarding out-of-order execution. Is this simply branch prediction (whereas it executes code following a given result of a conditional branch and flushes the pipeline if incorrect), or is there more to it than that?

edit: Reading the wikipedia page it makes it sound like they're just talking about a pipeline with branch prediction.

I thought that both are differenct concepts - a superscalar CPU with dynamic scheduling is basicly a OoO concept. You fill your pipeline as efficient as possible with regards to parallelism. A VLIW architecture would do the same but the scheduling is not dynamic during runtime - the compiler does it. This is also a concept to improve in order architectures - you group everything before you run it.

Branch prediction is something different and just tries to think "ahead" in your pipeline - so you fetch/decode/execute etc. without delays in your pipeline. So you might load the code you need from that GOTO statement right after you fetched the GOTO to improve timings.

Hope I don't write too much nonsense but:


:1 x = 1
:2 y = 2
:3 z = 3
:4
:5 x = y * 50
:6 z = x * 100
:7 y = y * 25
:8 goto 100
...

:100 some code
:101

You can fill your pipeline with line 5 and 7 - they are independent so OoO could come in handy instead of waiting until line 6 is finished. Once you come to line 8 the branch prediction hopefully gets the unconditional jump and starts putting the code at line 100 into the pipeline.

Hope that helps a bit - and sorry if I made mistakes but I am not used to write that stuff in english :)
 

Momentary

Banned
Just found this off of the nvidia thread about the PS4. This is really amazing. I don't know how I missed this thread. I think I was on the way back from deployment when it got posted.

This definitely going to be a good read later on today. I hope that more people come to this thread so the can have a better understanding about how things work. I'm definitely going to use it for myself.
 

Corky

Nine out of ten orphans can't tell the difference.
I have a random question that may or may not be related to this thread but bear with me :

What does the future hold with regards to gpus and cpus being 'separate entities' ? It feels that gpus are taking over more and more of the 'tasks' that cpus used to do ( ugh my ignorance really shines through but hopefully it makes some sense ) will either replace the other in the foreseeable future? Or rather will we say X years from now have consoles/pcs/whatever that are comprised of only one 'chip' ?
 

Hazaro

relies on auto-aim
Great post which could probably use a few more eyeballs now.
Probably worth mentioning that 'Transistor count' is 'stuff' and can't be directly connected to power.

Anandtech also has a pretty simple to understand technical writeup as well.
http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4
I have a random question that may or may not be related to this thread but bear with me :

What does the future hold with regards to gpus and cpus being 'separate entities' ? It feels that gpus are taking over more and more of the 'tasks' that cpus used to do ( ugh my ignorance really shines through but hopefully it makes some sense ) will either replace the other in the foreseeable future? Or rather will we say X years from now have consoles/pcs/whatever that are comprised of only one 'chip' ?
Would you stick Titan to a CPU?

Too much heat. Integrated will scale great to certain points, but there will always be a want for something better.
 

Amir0x

Banned
Great post which could probably use a few more eyeballs now.
Probably worth mentioning that 'Transistor count' is 'stuff' and can't be directly connected to power.

Thanks for bumping this. I forgot this topic exists, and there are a few technical terms I'm having trouble understanding between Xbox One and PS4, so I'll re-read this topic and try to connect the dots.
 
Looking through this thread, I see that there was a lot of concern about the performance of the CPU in the new consoles, based on comparisons of FLOPS and clockspeeds and so forth. I think, however, that there may be a more useful way of thinking about CPU performance (which is, don't think about it).

First, forget about CPUs and GPUs. What really matters is the total performance of the system on different workloads. Workloads can generally (if you're willing to make a gross oversimplification) be classified as one of two types, either "embarrassingly" parallel floating-point, or branch-heavy integer."Embarrassingly" parallel floating-point workloads are the sort that GPUs are well suited for, and you can measure performance on them in FLOPS (if you like mostly meaningless synthetic numbers). Examples of these in games would be things like graphics and physics. Branch heavy integer workloads are what CPUs are typically good at. Examples from games would be things like AI and basic gameplay logic. Integer performance is typically measured in MIPS (again, a highly meaningless synthetic number) but people don't talk about it much any more, since FLOPS are way sexier.

So, looking at the numbers for the PS3 and the PS4, we see that the PS3 has roughly 356 GFLOPS total performance on floating-point workloads (176 from the RSX and 180 from the CELL) and 6400 MIPS on integer workloads. In comparison, the PS4 has about 1900 GLOPS total performance on floating-point workloads (1800 from the GPU, 100 from the CPU) and 25600 MIPS on integer workloads.

That means that by these arbitrary synthetic measurements, the PS4 is roughly 5x as fast as the PS3 on floating-point workloads, and 4x as fast on integer workloads. That is to say, despite the "weak" CPU in the PS4, the gains over the PS3 on both traditionally GPU friendly tasks and CPU friendly tasks are very close.

It's also important to note that for various reasons these synthetic numbers dramatically under-represent the performance gain of the PS4 over the PS3 when running real code. Specifically, the performance of the PS4 on integer workloads will be dramatically better in comparison to the PS3 than these numbers would indicate. That's because these calculations were done assuming an IPC (instructions per cycle) of 2 for both the Cell's PPE and the Jaguar cores in the PS4. This is fair for synthetic numbers, since both are dual-issue, but in real life the much, much stronger front-end on the Jaguar will give it a significant edge in IPC.

tl;dr the PS4 CPU is fine, since the Jaguar cores in the PS4 kick the snot out of the PS3's one measly PPE, and anything you would do on the SPEs you'll now be doing on the GPU.
 

Gusy

Member
I was strolling through Gafville like I usually do, and I found this gem. A little voice in my head said to me ¨BUMP ME¨.. So, here we are.

Wonderful OP! Should be a great reminder with all of the technical debates going on.

By the way Durante, when do you get your next cold? ;)

Cheers!
 
Top Bottom