Wii U hardware discussion and investigation *rename

Status
Not open for further replies.
Do you mean your comment about the GPU? That Wii U's GPU is a mobile APU with integrated x86 CPU? Or a DX11 HSA including an ARM processor that nobody's bothered to crow about?

Yes that is the one.


How's about we just go with the developer comments that it's a tri-core Wii-like PPC CPU and DX10.1 R7 series GPU with 1GB RAM available as described to Eurogamer and later corroborated independently? Why ignore all that evidence in the belief it could be some special architecture that no-one anywhere has talked about and for which there's no evidence at all?

The reason I will not agree with that is because it is a custom GPU not off the shelf. The link you posted has holes in it about specs. Speculated specs where some where missing. Let's say it is an R7 based GPU. If, the GPU supports DX11 it supports DX 10. It doesn't mean it can't integrate newer GPU or some other technology with it. If, that were not the case why have a custom GPU at all??? The reason I listed the mobile GPU's is because of the low wattage it uses. It isn't the size though of the Wii U GPU though. So take a bit from this one and that one and to me it seems a match. It's from the same company so it doesn't seem impossible.

As far as the CPU goes I am not saying the description you are giving of the Wii U CPU isn't accurate. As far as that goes that doesn't tell the full story is my point. We do not know the method this information was obtained. Let's say if parts where taken out and put in another device to gain more info. In this case the numbers could be skewed because out of their native environment they may not perform up to the same level. I know some parts were not custom so that would not be necessary to reverse engineer it. I understand shall we say the rhyme to technology. At times it takes longer for one working part to progress to the level of another. Look at the long period of time it took for memory speeds to get close to the speed of CPU's. The technology of the Wii U CPU may not be currently used in the development environment it is best suited. It may be designed for newer tech trickling in to best suit it. The way multi-core processors function better on a Windows 8 computer vs Windows XP as it takes advantage better of the multi-tasking, multi-threading capabilities. So when there are blanks in things there is a lot of info to be told.


That was my post. I will say that that is really low down how you ban a person for not responding to you while reading a link you posted and giving that as a reason. On top of that then telling a lie on me. There is a word called integrity that you are sorely lacking.
 
Your not being serious at all bluebeard, you can't be really.

You just posted a link to Zeldainformer, a known bullshitter which makes up giant turds and posts them as articles to get their viewer base happy, did you even read the name of the article? It makes no snse.

And then you linked to an amateurish blogpost from someone who knows nothing about tech.

These things have nothing to do with objective facts, which are that the Wii U is not some special out there architecture that nobody has ever heard of and that's going to make the Wii U's innards any more than they actually are.

The Wii U has a CPU with 3 hollywood like cores, it has a 300+ GFLOP GPU with DX10 and it has 2GB of DDR3 ram, both sticks clocked at half the bandwidth of ps3 and 360 and only one available for games.
 
Thanks for the explanation. Would you care to explain us how much slower is DDR3 in comparison to GDDR3 working at the same speed? I mean, latencies on DDR3 must be HUGE and that is something that will hurt WiiU a lot in comparison with PS3 or 360.

At the same speed there is virtually no difference in latency.
http://forum.beyond3d.com/showthread.php?p=1688344#post1688344

There is a small difference in write/read bus turnaround time, which reduces data bus utilization. But there is no difference in read latency.

I shouldn't speak for Grall, but he did use the word "typically", which really makes all the difference.

As has already been pointed out, that's not what he was referring to when he used the modifier "typically." If he's going to take such a hard stance on his correctness regarding an easily verified technical detail he should try harder to actually be correct.

Nice write-up. Now, to complement that, there should be a small expose regarding the circumstances where and why you don't actually achieve maximum bus utilization.

There are 3 main factors that contribute to lower data bus utilization:
1. Refresh
2. Read-to-write and write-to-read bus turnaround.
3. Not enough read or write transactions per row activate/page open.

Refresh is unavoidable for DRAMs. In all of the various DDR flavors it requires that all banks are closed and in the precharge state for some period of time before a refresh command and that no bank be activated/opened for some period of time after a refresh command. This creates a period of idle data bus. Depending on the exact version of DDR, the speed, and the operating temperature this forced idle period eats up anywhere from 3-10% of the theoretical peak bandwidth. Because of that you can never get above 90-97% of peak for anything but a short period of time.

Bus turnaround forces idle data bus cycles for two reasons.
On read to write switching there has to be some delay to ensure that the DRAM completes the read and the postamble and that the data makes it back to the controller before the controller can put the write preamble and write data onto the bus. Otherwise you wind up with IOs on both side driving the bus, which is bad for the IOs and corrupts the data.
On write to read switching, the DRAM requires that writes can not be followed by a read for a period of time. This is the amount of time it takes for the write to make it to the array so that a following read won't conflict with it.
Add those two up and a good controller tries to keep the amount of switching between writes and reads to a minimum. Ideally it buffers up a lot of writes while servicing a lot of reads, then it switches to writes for a while while buffering up reads, and so on. It can't wait forever though, since some reads might be latency sensitive (for example, CPU reads). So it has to balance between longer bursts of all reads or all writes vs latency and keeping everything flowing that is waiting for read data or for writes to complete.

Lastly, you need to, on average, generate more than 1 read or write each time you activate a row (open a page). All currently used flavors of DDR DRAM have what is called the "four activate window." This is a rolling period of time during which you can only issue an activate (page open) for 4 banks. If you've activated 0, 1, 2, 3, you can't activate 4 until the four activate time has elapsed since 0, and then before you activate 5 the time has to have elapsed since 1, etc...
tFAW for DDR3-1600 is 40ns, or 32 clocks. DDR3 is a burst of 8 for reads or writes and those take 4 clocks each. You need to do 8 reads or writes to those 4 opened pages to fill up 32 clocks. So for each page open you have to do, on average, at least 2 accesses. Any less and you are limited by tFAW and you force idle data bus cycles. With a 64-bit (8-byte) wide bus (like a DIMM), that means 8*8*2=128 bytes worth of data. For each page open you need to access 128 bytes of data to keep the bus full. For nicely ordered streams of requests (GPU pixel/texture ops, CPU stream operations, etc) this is easier to do. For scattered requests (CPU cache fetching) it is more difficult.

So if you are doing all reads or all writes and have a nice stream of addresses you can keep the data bus busy >90-95% of the time. Start mixing writes and reads and the % drops. Use an address stream which isn't as friendly and you drop even further. Make less than optimal arbitration decisions in order to give lower latency to CPU fetches and you drop even more.
 
Love your posts BobbleHead, thanks for the insight. Had no idea there was a forced idle surrounding refresh. I always figured writes (and therefore reads, being internally destructive, so followed by writes) qualified as refresh, and that you could even the memory just by scrubbing it with reads.

Just as clarification for his post vs mine, in case it isn't totally obvious, his post is considering attainable utilization of the bus given clients that can feed it these requests. Mine was focusing more on some obstacles that can make it hard for CPUs to generate these requests even if they'd be useful for the software.

Of course we're talking about more bus activity than from the CPU given Wii U's unified memory, and a GPU running traditional graphics stuff is probably well optimized to utilize available controller bandwidth (and does its best to use large bursts of reads and writes respectively).
 
You believe that anything that can only service one request at a time can not have multiple requests in flight? That's just completely incorrect.
Ah, I see. Thank you for correcting me. Good post, keep it up! :)

Now, if only someone as technically educated about the wuu could post the actual, complete, definitive specs and capabilities of the machine. I can't believe it's still being held so firmly under wraps even post-launch. It's not only disappointing, it's also really pathetic. What's Nintendo afraid of? It's not as if the wuu would suddenly look any worse just because we actually know what's in the box, or look any better because we don't know. Ah well.

*sigh*
 
Ah, I see. Thank you for correcting me. Good post, keep it up! :)

Now, if only someone as technically educated about the wuu could post the actual, complete, definitive specs and capabilities of the machine. I can't believe it's still being held so firmly under wraps even post-launch. It's not only disappointing, it's also really pathetic. What's Nintendo afraid of? It's not as if the wuu would suddenly look any worse just because we actually know what's in the box, or look any better because we don't know. Ah well.

*sigh*

Nintemdo would never reveal the specs. It would only make them look bad. They would far prefer you to never even think about the machine specs, actually.

Apple has great specs mostly (internally) and doesnt even reveal them, mostly.

Microsoft was free with specs last time, but Sony removed clocks after some were lowered. I see a more and more manufacturer provided spec free future in store for us. It typically benefits nobody.

It is kind of alarming we still dont have Wii U GPU details, if only because it'd be terrible if we get the same level of secrecy for Durango/Orbis. Luckily so far it appears nothing of the sort.

We just have to look at the games for now, and they suggest nothing more powerful than PS3/360.
 
It is kind of alarming we still dont have Wii U GPU details, if only because it'd be terrible if we get the same level of secrecy for Durango/Orbis. Luckily so far it appears nothing of the sort.

Wii U is an announced console, Durango and Orbis have not been officially revealed, MS and Sony (I hope) will give specs just as last generations.
 
Nintemdo would never reveal the specs. It would only make them look bad. They would far prefer you to never even think about the machine specs, actually.
It'd only make them look bad to people who aren't nintendo's target audience anyway, so it wouldn't matter. Most people see tech specs as uninteresting gobbledygook, and they have no frame of reference anyway so it means nothing to them if console A has 150 gigazips and 220 mogajoules, and console B only has 40 and 136, respectively.

Apple has great specs mostly (internally) and doesnt even reveal them, mostly.
Yeah, but Nintendo isn't Apple...unfortunately for them. They sort of got fooled into thinking that they were during the Wii heyday era, but it's not really true and it never has.

It is kind of alarming we still dont have Wii U GPU details, if only because it'd be terrible if we get the same level of secrecy for Durango/Orbis. Luckily so far it appears nothing of the sort.
I think the biggest reason we still don't know wuu specs in detail is that the interest simply is very low amongst people inclined to leak this sort of stuff. Durango/orbis however will get leaked, because more people care about those consoles.

Anyways, I consider Colonial Marines as the true test for wuu, considering what gearbox has said about wuu version being the best of the lot. It's getting close to release now. If framerates and graphics details are worse compared to PS360, then we know for sure the state of wuu hardware.

...Of course, they could possibly mean that wuu *gameplay* would be the best, with the additional benefits brought by the wuublet, that's always a convenient excuse if graphics is found to fall short of other console versions.
 
It'd only make them look bad to people who aren't nintendo's target audience anyway, so it wouldn't matter. Most people see tech specs as uninteresting gobbledygook, and they have no frame of reference anyway so it means nothing to them if console A has 150 gigazips and 220 mogajoules, and console B only has 40 and 136, respectively.


Yeah, but Nintendo isn't Apple...unfortunately for them. They sort of got fooled into thinking that they were during the Wii heyday era, but it's not really true and it never has.


I think the biggest reason we still don't know wuu specs in detail is that the interest simply is very low amongst people inclined to leak this sort of stuff. Durango/orbis however will get leaked, because more people care about those consoles.

Anyways, I consider Colonial Marines as the true test for wuu, considering what gearbox has said about wuu version being the best of the lot. It's getting close to release now. If framerates and graphics details are worse compared to PS360, then we know for sure the state of wuu hardware.

...Of course, they could possibly mean that wuu *gameplay* would be the best, with the additional benefits brought by the wuublet, that's always a convenient excuse if graphics is found to fall short of other console versions.

Based on Batman: AC and ME3, it's already safe to say that Wii U can't run UE3 well. If we're going to use Aliens: CM as the definitive test, then we already know how it'll turn out. So, you can safely call the state of Wii U hardware now. Both of those games were finished long before releasing on Wii U, and if they couldn't run well on Wii U with all that time to spend just on that one version, it's obvious that another game running on the same engine won't fare better.
 
Last edited by a moderator:
Both games fall under 30fps when there are a lot of AI characters. Maybe the aliens are dumb enough to manage for the CPU...
 
Both of those games were finished long before releasing on Wii U, and if they couldn't run well on Wii U with all that time to spend just on that one version, it's obvious that another game running on the same engine won't fare better.
That's a flawed analysis though, because we don't know how much time was actually spent on porting those games to the wuu. It could have been very QnD, hackishly done. It seems to me at least there might be a higher chance that Colonial Marines will be (better) optimized for the wuu, considering the game could have been built more from the ground up for nintendo's machine.
 
That's a flawed analysis though, because we don't know how much time was actually spent on porting those games to the wuu. It could have been very QnD, hackishly done. It seems to me at least there might be a higher chance that Colonial Marines will be (better) optimized for the wuu, considering the game could have been built more from the ground up for nintendo's machine.

But if we look at it that way, then it wouldn't be fair to cast final judgement on Wii U until we see a game on an engine built for Wii U. CM is going to have started as a port any way you want to put it, and there's no way it got the same time or budget on Wii U as it did on systems where it'll sell over 5x as many copies.
 
That's a flawed analysis though, because we don't know how much time was actually spent on porting those games to the wuu. It could have been very QnD, hackishly done. It seems to me at least there might be a higher chance that Colonial Marines will be (better) optimized for the wuu, considering the game could have been built more from the ground up for nintendo's machine.

Much as I downplay the Wii U, I somewhat agree.

Another thing is, the games Wii U had to catch up on, like Arkham City and AC3, were some of this gen's best. Had those games come out on 2005 or 2006 they would have been mindblowing. Wii U had to come in when devs are already squeezing every last ounce out of PS360 and immediately port those games. Imagine asking Ubisoft to release AC3 on 360 in 2005. They likely would have struggled a lot.

On the flip side, devs have had 6+ years optimizing "this gen" consoles they can then likely apply some of that expertise to Wii U already. So maybe those cancel out, I dont know.
 
Much as I downplay the Wii U, I somewhat agree.

Another thing is, the games Wii U had to catch up on, like Arkham City and AC3, were some of this gen's best. Had those games come out on 2005 or 2006 they would have been mindblowing. Wii U had to come in when devs are already squeezing every last ounce out of PS360 and immediately port those games. Imagine asking Ubisoft to release AC3 on 360 in 2005. They likely would have struggled a lot.

On the flip side, devs have had 6+ years optimizing "this gen" consoles they can then likely apply some of that expertise to Wii U already. So maybe those cancel out, I dont know.

If we assume that developing for Wii U is pretty much exactly the same as developing for current-gen consoles and that any "optimizations" for Wii U involve sacrifice, then yes they cancel out. So, the question really is whether or not devs are already using the DSP and GPGPU, and whether devs who primarily work on console games know how to properly use them.

The consensus here seems to be that developing for Wii U should be easy since the individual parts are familiar. I still have some doubts about it being that cut-and-dry, but I guess we'll see.
 
Most of the optimizations that had a really big effect on performance on the PS3/X360 were reorganizing algorithms and data structures for heavily multithreaded execution, and make the code itself latency tolerant. Which is also why these types of optimizations have benefited both consoles at once.

This kind of optimization is already present in all multiplatform engines, and it will also be beneficial for the WiiU's architecture - as it has a multi-core CPU as well, and the memory subsystem also has considerable latency too.

The one big difference that probably has to be dealt with is the 32MB EDRAM, but all of the big multiplatform games had plenty of development time to deal with that. Also, most of the frame rate problems are associated with characters which shouldn't be dependent on video memory or rendering, and has more to do with AI code running on the CPU.
Although, the other problematic case was alpha blended particles... but that shouldn't be a problem with the EDRAM, so it might be the particle animation that causes trouble, which would mean another CPU related bottleneck.
 
Status
Not open for further replies.
Back
Top