RSX: Vertex input limited? *FKATCT

Hypx

Banned
http://www.avsforum.com/avs-vb/showthread.php?t=773344&page=2&pp=30
http://www.avsforum.com/avs-vb/showthread.php?t=774032&page=3&pp=30

There's this guy named joker454 who claims to be real dev who has experience at work with both the Xbox 360 and the PS3. He clearly knows something about the nature of these two systems as he's pretty competent about them and has not made any obvious errors. However, he also makes some dubious sweeping claims which may mark him as a fake. Unfortunately, my own knowledge of this subject is not nearly enough to judge him, so I'm hoping someone else can look at it themselves. Here are some statements of his that I've find interesting:

"I'm a programmer I assure you, been one for 12 years in the games industry. No, I can't say my employers name because my comments could be construed as representing their opinion, which would get me into trouble."

"That's fine, they probably have played games I've programmed on, especially if they are into sports games"

"There are *very* few instances where one would pick the PS3 gpu over the 360's because the PS3's gpu is weak compared to 360's. That's not just my opinion, ask other devs how they feel about it. Sony chose poorly when they chose the video hardware. Performance wise, the 360's video will out render the PS3's everytime if you feed it the same 3d scene. The only way to make the PS3 keep pace is to leverage its spu's to preprocess your 3d scene."

"I have a shader that needs 8 vertex inputs, Position, Normal, Color, and Texcoord1 thru Texcoord5. Assume all inputs are packed (ie, .x, .y, .z and .w are all used). Further, I need this shader to be applied to a mass of 100 enemies that are all close to the camera (and hence using their best lod) and are 5000 verticies each. Or if you prefer, imagine that it needs to be used on a 3d scene of 500,000 verts. These scenarios are quite common, and they *kill* RSX performance. If you don't believe me, just read the RSX docs, its right in there and it literally says "this kills RSX performance". The only way to accommodate these scenarios is to precull using the spu's. If you just rely on the RSX to do it for you, then you will never match the xenon's framerate, period. This isn't conjecture or opinion, its hardware design fact. Again, I encourage you to read the RSX docs as well as PS3 dev forums, I'm not the only one complaining about this."

"I'm a 360/PS3 programmer by trade, focusing on graphics and optimization. It's fairly rare that I post, but I just got off a long crunch and have been browsing the forums more than normal to unwind Incidentally most of that crunch was spent trying to get the PS3 to match the 360's frame rate. It falls short, but it hits 30fps so we're ok.

The Gran Turismo image posted above is a good shot, but its a testament to the talent of the dev crew, not just the hardware. Vertex/pixel shaders are written in HLSL and can be compiled to run on either PS3/360 although you can tweak them to suit the console. I guess my point here is that if you take that same vehicle 3d model and those same shaders that make it look all pretty, and compile/run them on the 360, it will look the same and run at a higher framerate than on the PS3. This is because the PS3's gpu isn't as good as the 360's."

"I'm assuming you also know that the PS3's vertex processing units are terrible, since each extra vertex shader input ads one cycle of delay. Likewise, you probably also know that the only way currently around this limitation on PS3 is to use the spu's to preprocess all geometry by backface culling them first on cell before feeding them to the gpu. But then you are still stuck with other PS3 gpu limitations, such as not being able to do anti aliasing with floating point render targets so you can't have MSAA and HDR simultaneously."

"The vertex pipeline doesn't matter when you have to waste one cycle per vertex input. In other words, the gpu stalls untill it can fetch all the data it needs before it can even start executing the vertex shader. Why is this important? Because next gen games needs lots of lookup maps to look nice, which means lots of u/v coordinates and other data that needs to be passed to the vertex shader, ie, lots of inputs. In RSX's case, that means gpu stalls. This is the RSX's well known achiles heel and is well documented. The only known work around at the moment is to use the cell spu's as another 'gpu', in this case a culling gpu, to limit the number of verts actually sent to the RSX. Whether or not RSX+SPU culling will help PS3 meet or exceed xenon's gpu performance isn't known at this point."

"You don't think no msaa with floating point buffers isn't a huge limitation? There are other color spaces, but they are useless to me. I don't need 8/8/8/8 int. I need 8/8/8/8 float. In RSX's case you have no choice but to use FP16 (16/16/16/16), compared to FP8 on xenon. So you are forced to move around twice the memory on RSX if you want a floating point buffer, which means less framerate. Just try it! I'll assume your a game dev. Switch your PS3 game from FP16 to an 8/8/8/8 int format and see your framerate jump. Of course, you'll have to forgo HDR on your shipping title, but you can then do msaa. Or, go back to FP16 since HDR looks so cool, but oh ya, you then have to turn off msaa. I just don't have these headaches on 360, but I have to deal with them PS3."

The only thing I can definitely say is wrong is the last quote, since we have a dev (Deano?) who's working on a game that gets around the problem. As for the others, I'm getting a few hints that it may be wrong or it doesn't add up, but I'm not knowledgable enough to definitely put my foot down.

Mod:
Just to make sure everyone sees this, there're as of now special rules in this thread to improve the S/N ratio. They can be found here
 
I have no idea if he's a dev, but vertex setup is definitly an issue on RSX, anyone with a 7X00 can run benchmarks and verify the cost of additional attributes.
To my mind though RSX's bigger performance issue is the shader constant patching, it can be a real performance killer.
I know of teams using SPU's to try and alleviate the worst of both problems.

As for the performance comparison, I won't comment beyond the fact that I do know of teams who have found it challenging to get assets built for Xenos running well on PS3.
 
Es tu Gabe Newell?

I would bet money that his 12 years in the gaming industry has been as a PC developer. This is very reminicent of when Valve complained about nvidia being hard to work with.

He is complaining about doing extra work to get performance to match what can be obtained on another vendors hardware. On the PC platform this sort of complaint is reasonable. Identical CPUs identical API, you want your hardware to perform very similarly without vendor specific optimizations. But in the console space... it's naive thinking.

Complaining about having to pre-cull geometry on the SPU before sending to the GPU... The fact that the Cell is good at that should be listed as a strength, but he cites it as a weakness because he does not want to spend the effort to tap that performance. I guess that is fair if you are working on a low budget project. But even he himself admit that this technique could result in performance that exceeds what is possible on Xenon.
 
Different platforms require different care, would not be surprised if ppl working on 360 and suddenly dropping their datasets onto RSX would not observe good numbers (and viceversa)
Now..I can't see how RSX, if used in the right way, should be so limited at vertex processing: in HS we easily render 2-2.5 MTriangles per frame at 30 fps without being VS limited and without making any use of CELL to speed up vertex shading and I know for sure that being more clever we could even go faster..(just using the GPU)
 
Even if he or she is a developer, that doesn’t stop them from posting false and inaccurate information. Who’s to say he isn’t jaded by his own personal feeling about Sony or it’s hardware.
 
Last edited by a moderator:
I dunno if he is a developer but he is obviously fairly knowledgable, aware of some of the internal docs, and responds to insults with examples to "prove" his points. And to clarify his own point, which he keeps repeating:

Remember, I'm not knocking the PS3 as a whole, I was knocking its gpu.

And his comments are not all negative. He feels Sony's Playstation is still a dominant brand and will seel great. He also points out issues on the MS side, specifically the CPU:

Regarding cpu, yes its totally different arguments. The 360's is a very standard setup, a bunch of cores that can all see main memory. The advantage to this is that lots of thread coded written over the years can be ported to it easily. For example, Valve (the Half Life guys) are writing an entirely threaded engine for the PC. When it's done, porting it to the 360 will be easy. How about porting it to the PS3? Nope, won't work, it's a totally different setup. The PS3's main core is basically the same, but its spu's can't see main memory. Each one has 256k that it can work with, so you need to rewrite your code to pack things into 256k chunks, feed it to the spu's to process it, then copy it all back to main memory. In other words, you've gotta rewrite your code.

Now before I get jumped on here let me briefly mention the downsides. The 360's cpu setup is painfully easy to code for. But, they really aren't all that fast. Worse yet, all three cores use the same memory controller so the three cores are not three times the power of the one core on the PS3 due to some overhead. The PS3's spu's on the other hand are monstrously fast. You need to setup your data correctly to work with them, but once thats done then yes, the 360's cpu setup is crap compared to fully working spu's. I say fully working because most current games out there barely even touch on them, it will take time to re-write everything. I haven't done spu coding....yet. I will be though in 2007 which will be pretty cool.

His own summary seems to be

I think one of you early comments sums is up. "The two consoles trade blows fairly evenly". That's part of the problem. I was expecting PS3 to offer more (especially on the gpu side of things) because it came out a year later. Instead, you could argue that they are more or less equal because one wins on video, the other on cpu. That's dissapointing to me for a box that comes out a year later and costs more.

That and difficulty tuning his code seem to have him bitter. Now I am sure a number of developers here will disagree with him, especially PS3-specific devs. And he may be a crackpot just mimicking what he hears on places like B3D and is basing a lot of his comments based on benchmarking G70 as well as the widely circulated RSX docs (and maybe access to the PS3 developer forums).

Or he could be a young developer, junior programmer, etc There are tends of thousands of devs out there, and that one may speak out over the holiday break rushing to get a game out after a long crunch is not unfathomable. I guess it is really up to other multi-platform devs who have gone through what he has, porting an Xbox 360 codebase to the PS3, to really give us an indication if he is full of it and just parroting what Xbox fans think that they think they know or he could be legit -- or legit and biased. Some developers have a bias you know! They are human too. And the bias may be as simple as, "The PS3 makes me work hard... screw that!"

Interesting thread and his candid, yet calm tone, actually allowed for some real discussion. How accurate it is, I don't think we will known until the PS4/Xbox3 is out :p
 
Different platforms require different care, would not be surprised if ppl working on 360 and suddenly dropping their datasets onto RSX would not observe good numbers (and viceversa)
Now..I can't see how RSX, if used in the right way, should be so limited at vertex processing: in HS we easily render 2-2.5 MTriangles per frame at 30 fps without being VS limited and without making any use of CELL to speed up vertex shading and I know for sure that being more clever we could even go faster..(just using the GPU)

Thanks Marco. I think your first statement is probably the best assessment. While not quite as radical, a developer moving SPE code to Xenon or an x86 chip would probably be in for a world of hurt, especially if it was something significantly parallel (e.g. 4 or 5 SPEs).

I will track down more info on him or her.

Are we sure we want to do that :???:

What, are we going to start hunting down ERP, nAo, DeanoC, Faf, Panajav, MrWibble, Fran, Cal, and so forth? So we want to stake out Dave B, geo, Vysex, Hupf, Uttar, and so forth and go through their email and such to make sure their connections are accurate?

If he is fake his own words will end up nailing him. If he is legit such an open search--just the stuff you brought up--could get him canned.

People complain all the time that we cannot get insider info--even if it is stressed out frustration--and yet when it disagrees with what we want to hear we try to ruin them. Good way to chase off the devs we have here.

Sorry, I think the cybersnooping comment should be deleted, but that is just me.
 
I guess my point here is that if you take that same vehicle 3d model and those same shaders that make it look all pretty, and compile/run them on the 360, it will look the same and run at a higher framerate than on the PS3. This is because the PS3's gpu isn't as good as the 360's."

Isn´t this impossible to do? I mean the two GPU´s are by nature radical different so anything made for one GPU would rarely benefit from the advantages of the others. Or is the RSX really so weak that "common" shader code would run like shit compare to the Xenos?
 
I'm with Acert; do we judge the message or the messenger around here? Whether or not this poster is in the industry... and he certainly seems to be IMO... I think his points should just be deconstucted as any other posters points would be.

There seems to be this strange mythos on the Internet that if a 'developer' says something, it somehow takes on the force of natural law. But we have many a dev here, do we not? And they disagree on points all the time.

For me it's as simple as this: he makes a point in terms of the 360 GPU being 'ahead' of the PS3 GPU in several respects. Hey, I think we've had the discussion here enough times to know, yeah in many ways it is. But at the same time he treats the GPU as both the beggining and end of the graphics subsystem, where we know in PS3 the Cell is set to play an ever larger role as tme goes on. And in this regard, he admits to never having touched the SPEs, but acknowledging their power and looking forward to the opportunity.

Anyway... well I'm an AVS member myself but I've been too emotionally involved there of late to respond in that thread right now; I'm trying to scale back and detach myself from the BD/HD DVD war presently underway there, which is so much more over the top than even any gaming forum you've ever seen.

But maybe I'll link him to this thread here and he can acquit himself directly among a more appropriate grouping of individuals. Certainly I think some good conversation could arise from it, though again, probably not anything we haven't covered before. :cool:

@Nerve Damage: After update 3, you are seriously out of control.
 
Isn´t this impossible to do? I mean the two GPU´s are by nature radical different so anything made for one GPU would rarely benefit from the advantages of the others. Or is the RSX really so weak that "common" shader code would run like shit compare to the Xenos?

He notes the use of HLSL and the specific issues he has had were vertex related and the use of floating point blending format performance and compatibility with MSAA (i.e. their engine was designed to do HDR with a floating point render target and using a colorspace solution like NOA32 was out of the question at that point in development).

As nAo and ERP noted, going from one to the other can pose some problems. An example, the assumption has been Xenos has better dynamic branching performance for pixel shaders (due to a smaller batch size), so game code built on the 360 ported over may need to rework this because it may not (or it may!) not run very well "as is" very well. There are examples on both sides of the fence.
 
Anyway... well I'm an AVS member myself but I've been too emotionally involved there of late to respond in that thread right now; I'm trying to scale back and detach myself from the BD/HD DVD war presently underway there, which is so much more over the top than even any gaming forum you've ever seen.

You got sucked in soooooo easily!!! Sucker!!! :p
 
:LOL:

Anyhow, I found many post by this guy (with the same residing area and screen name) asking some of the simplest questions on how to hook up his tivo to his TV. Or what’s the difference between optical audio cables and coax digital audio cable. To me even a guy with his background can figure that out by himself.

Exact stuff I didn't know until about 6months ag. Everyone has to learn at somepoint. Not everyone is born "1337".........A/V is so damn confusing. Trust me, it'll have you hating life quickly......
 
But maybe I'll link him to this thread here and he can acquit himself directly among a more appropriate grouping of individuals. Certainly I think some good conversation could arise from it, though again, probably not anything we haven't covered before. :cool:

We could always use some more devs here, and a multi-platform dev who is looking at issues from the porting process could be valuable representation of the market we don't get much from. We tend to look at things from the absolute extremes/best case scenarios, etc -- because lets be realistic, we all want the best games totally tapping the potential of a platform, and hence with the slew of titles we tend to get really worked up for the cream of the crop -- but the industry strongly relies on the guys doing the grunt work pushing out titles to appeal to a wide audiance. Many of us may loath EA (sorry devs!) but they are a huge part of the industry, and knowing how the next gen consoles impact their development processes is a valuable source of information.

Of course he could be making things up, in which case it would be a public service to show that, but he seems legit enough.

But I think a mod should really clean up the witch hunt and certain comments about where the same name has been found on the net. People can find all kinds of interesting things about me on other forums, but posting them here as a personal insult / hunt me down is waaay out of bounds. And if he is a developer he should be made to feel at home and welcome to share, discuss, and debate his point of view, even if it is wrong. :p
 
But I think a mod should really clean up the witch hunt and certain comments about where the same name has been found on the net. People can find all kinds of interesting things about me on other forums, but posting them here as a personal insult / hunt me down is waaay out of bounds. And if he is a developer he should be made to feel at home and welcome to share, discuss, and debate his point of view, even if it is wrong. :p

Done it already. :oops:
 
Anyhow, I found many post by this guy (with the same residing area and screen name) asking some of the simplest questions on how to hook up his tivo to his TV. Or what’s the difference between optical audio cables and coax digital audio cable. To me even a guy with his background can figure that out by himself.

Hahaha I have some of the most stupid posts on the net. It is how you learn. If I don't know something I go somewhere and ask :smile: And I try not to presume to know anything because then people skip stuff you need to know. Heck, 2 years ago I changed the HSF on my NV40 and when I turned my PC on poooof! Big plume of smoke. Oh, and that was after like 4 hours of trying to figure out how to undo some little silly screws... and after cutting a wire I didn't need to cut. You would think I was a total newb, less the fact I have been doing upgrades and mods on PCs for nearly 20 years. And buying my first digital camera (2 years ago), LCD (last year), and MP3 (4 months ago) were experiences full of ignorance, yet most would consider me above average in techn savvy. As I should seeing as I spent 5 years in customer care and management in a small IT company and made almost all our technical purchasing decisions. Some skills and knowledge migrate well, others not so. Btw, I don't own a TV (all gaming is monitor based) so I couldn't tell you the difference between an optical and coax cable... but I could tell you a world of things about a DVI and VGA. I was say the joker guy shows some restraint and qualifies his experience (e.g. little experience in PS3 online and recent updates). Typically an online know it all tries to prove they know everything about anything and really don't know anything about everything!
 
I'm with Acert; do we judge the message or the messenger around here? Whether or not this poster is in the industry... and he certainly seems to be IMO... I think his points should just be deconstucted as any other posters points would be.

............

@Nerve Damage: After update 3, you are seriously out of control.


I second that 100%

This is a new low for this forum IMHO, just a sad attack on some very good information.
 
A lot of wrong techinfo, not worth reading.That guy has no idea of what he's talking about

Yeah, like the name of the other CPU he was comparing :p And he totally misses the boat by a mile wide and mide deep on backwards compatibility too. And I think that is just common sense IMO. Cell meet Cell2. Happy times. If anyone is going to have a problem it is MS. They had a hard enough time going from a Pentium3 to a PPC and all the associated differences (ISA, endian, general architecture) and that even with the frequency improvements it was/is a mess. Moving to an AMD chip (some sort of fusion? or a lot of K8Ls with some HTT3.0 buses to specialized chips) or to Intel (maybe something derived from their crazy 32 die/128 thread monster) would cause all kinds of issues. First is the threading of the tricore Xenon, but MS could end up in a situation where the CPU cores could be negligably faster, if not slower in some situations, than Xenon. If the "power race" is in many more cores, emulation could be a problem.

Conversely, the problems some may be having with Cell now will pay off with Cell2. People will have 5-6 years experience, robust librarys, and solid middleware to hit the ground running. For your parallelized code that performs nearly linear with additional SPEs you now could have an additional 20-50 SPEs to toss at the problem. Sony's strength may not be software, but they have created a bonafide platform with Cell. I expect 1st gen PS4 games to hit the road running, and running fast--as well as good BC to boot!
 
Back
Top