Slashdot Mirror


Crossplatform Titles Shortchanging PlayStation 2's Performance?

Thanks to GamerFeed for their new story noting that Sony Europe's research, using their 'performance analyzer', on the latest PS2 games. According to the piece: "The secret (or not so secret) way to unleash the PS2's power is to use its vector units (VUs)... of course, the games that used the VUs fared much better, and the game that scored highest did indeed use the VUs the most." An previous AnandTech analysis of the PS2's hardware explains a little further: "The power of the two VUs exists in the proper use of them as serial counterparts in handling the T&L calculations necessary during 3D rendering, but with the PS2 being... dramatically different from what most developers had seen in the past, getting the most out of the host CPU was quite difficult." The original article, in UK magazine PSM, concludes by pointing out: "A lot of the games that don't really use vector units are ports from other systems."

18 of 82 comments (clear)

  1. The same can probably be said for the rest by Dark+Nexus · · Score: 2, Interesting

    While there don't seem to be any studies to back this up for the other consoles, I doubt that many cross-platform games found on the X-Box or GameCube have any optimization for those particular platforms.

    Really, I doubt the PS2 is the only console who's power isn't being fully used.

    --
    Dark Nexus
    "Sanity is calming, but madness is more interesting."
    1. Re:The same can probably be said for the rest by Neon+Spiral+Injector · · Score: 2, Interesting

      I think more what you'll find is the developers will take advantage of the features of one system, then port the game to the others, just leaving out things that don't directly translate, rather than trying to find ways to impliment them differently.

      I really noticed this with Grandia II. It looked great on the Dreamcast. But when the PS2 version came out. It really did appear that the developers did what I said above. Anything they couldn't quickly port, was just removed.

      Of course all the GCN ports now are getting cheesy GBA tie-ins. But that isn't taking advantage of what the system offers in my opinion, it is just offering a gimic.

  2. This is one of the reasons for Linux kit by Kris_J · · Score: 3, Interesting

    Sony is heavily promting development of software that uses the VUs through their Linux development community. I bought the kit a while back, but I don't really have the right skill set to play with them. I'd love to see if, say, a Distributed.Net client could be optimised for them.

  3. The problem is the compilers by QuantumG · · Score: 3, Insightful
    Writing code for the Playstation 2's vector units is not exactly easy. There are no C compilers for the VU (Codeplay went out of business last year) so that means you have to sit down and write asm. Usually a game company will write some T&L code to go on the VU and then never touch it again, doing most the work on MIPS core. The VU can be used for a heck of a lot more than that. Unfortunately no-one can afford to do large amounts of programming on the VU because VU-asm programmers are hard to come by and the software they produce is impossible to maintain.

    What would be perfect is a compiler that could take ordinary C code and turn it into MIPS+VU0+VU1 code automatically, taking the best advantage of all the machine's resources. Unfortunately this pretty much exists in the realm of science fiction.

    --
    How we know is more important than what we know.
    1. Re:The problem is the compilers by Robmonster · · Score: 2, Insightful

      VU-asm programmers are hard to come by and the software they produce is impossible to maintain

      Why is the code they produce so hard to maintain? Is there something particular about the languege used that leads to sloppy code?

      --
      I have no sig yet I must scream.
    2. Re:The problem is the compilers by hibiki_r · · Score: 3, Insightful

      Assemblers are really, really low level, 1 asm instruction is typically equivalent to 1 machine code instruction, as opposed to the 3-25 of machine code the typical line of C code is like. Adding the extra complexity of specifying which registry each piece of data goes to and the lack of high level constructs makes assembly code inherently harder to maintain.

      Also, there's the issue of the VUs being vector-based processors, which the typical asm-monkey or game programmer probably has little experience with. Add that to having 2 vector units available at the same time (parallel programming?), and ou get a machine that most 'mortal' game programmers don't get even close to being able to code for properly.

      On the other hand, I've heard from people that had to work both on PCs and PS2s that they'd rather handle the PS2s assembler than having to suffer through writing video code that works properly on the myriad of video cards avaliable today, most of which have enough little quirks.Most changes in the 3d engine code have to be tested on at least 8 computers with 8 video cards just to make sure that the latest change hasn't just made any of the test setups crash due to some bing in the directx drivers for that card.

    3. Re:The problem is the compilers by bluGill · · Score: 3, Insightful

      Not sloppy code, but hard to maintain. ASM does not allow for a lot of nice things that structured langauges allow for. You end up with a lot of lines that move from one seemingly random memory location to a different one, change bits seemingly randomly, and place the result in a different location. It is very hard to see what is going on for all the irrelavant things that happen.

      What makes it harder is nobody in their right mind would write in assembly unless performance is critical and no better algorythm is known, so assembly programers activly prefer hard to understand code that is fast over easier to understand code. That bit manipulation code above may silently depend on a side effect of an operation several instructions ago.

      Read the story of Mel. While no assembly programer intentionally writes code that hard to understand without documentation, they all look for tricks like Mel would use because they should never be called unless the C compiler can't optimise good enough. No matter how much they document things (and correctly documenting your code is hard) it is by nature hard to understand.

      Modern processors often have weird things going on too that you need to remeber. Delay slots, multipul pipelins to fill, and so on. A good programer (or more likely compiler) tune to take advantage of all this, but by nature is creates code that isn't liner.

      Now the VU units can't be programed in C (appearently?), so they don't nessicarly have to use all the tricks in assembly to make it go fast. However even still by nature assembly is hard to understand.

  4. mice by Hythlodaeus · · Score: 3, Insightful

    Forget vector units... I'd like to see multiplatform FPS's make proper use of MICE on PC ports. "Enter the Matrix", "Deus Ex 2" - I'm talking to you.

    --
    For great justice.
  5. Not an attempt at trolling... by orthancstone · · Score: 4, Interesting

    Perhaps this is a sign to Sony that the next console should be less complicated with its graphics. The Xbox is probably easy enough consider its DirectX basis and the Gamecube architecture uses one graphics chip rather than a convoluted parallized two chip system.

    While the PS 2 may have a powerful, robust graphics core because of this design, as has been pointed out: Does every company have the time to make use of the specifics, or are they going to do the least amount of work possible when porting to make a game playable and not horrendous looking?

    If cross-platform gaming continues to become a huge trend, it would be in Sony's best interest to try and simplify some parts of its graphics to make the best parts of it more accessible to developers that perhaps don't have all the time they need to port the game as well as they should.

    In the meantime, though, Sony has a large amount of exclusive content...so they shouldn't be too worried about whether or not they are getting optimization for cross-platform games. People are sure to still buy them but they most likely will definitely pay attention to kick ass exclusive games for being even better.

    (PS-If that sounded like complete crap, eh, oh well :/ )

    1. Re:Not an attempt at trolling... by brotherscrim · · Score: 2, Interesting

      Of course at the moment they've only just announced that their console can maybe swing 60fps at about 800x600 or less. Hello, Sony, the early 90's called, they want their framerates back.

      Of course, that framerate and resolution is already twice what 95% of all televisions in the US is capable of doing...

  6. Focus more on the software than the platform by trajano · · Score: 2, Insightful

    A lot of games or programs on any platform including the PC do not take full advantage of the platform. The best way to take advantage of the platform is to code in assembly.

    However, this is not really the best use of time for people. Developing in higher programming language in a cross-platform way will end up with better SDKs for the game company.

    Here's the priority list I would run my game company.

    Focus more on developing good games first. The principal task of a game publisher should be to get his game sold not necessarilly selling the console.

    Make it easy for your developers. Choose the platform where it is easiest to program your game in so you can get to market quicker. If your game is good enough, people will buy the console to play your game.

    Expand your audience. You can port your games to other platforms at this point. This exercise will promote code abstraction and re-use within your development group.

    This is where you start grouping your programmers into the "just-do-it" crowd and "do-it-properly" crowd. They both have their uses.

    The "just-do-it" crowd will make you reach your market first. Don't put too much of into this effort. Its going to be too frustrating and boring for most of them, shove them into new development ideas.

    The "do-it-properly" crowd will tend to make things slower, but should know how to group and make things better for the code base. They should be promoting code re-use and proper abstractions to help porting to other platforms easier. Don't put too much of them into new development otherwise you'll have conflict with the "just-do-it" crowd.

    Learn from your successes. Focus on this one first, as its more positive to your employees. Expand your libraries. Promote code re-use. Think of the sequel.

    Learn from your mistakes. Prevent problems in future projects by learning from them and removing the people that don't.

    --
    Archie - CIO-for-hire :-)
  7. VU Useage == Good Game by MBCook · · Score: 4, Insightful
    It's the magic formula to success! No wonder the XBox is terrible, it has no VUs! OK, in all seriousness the VUs don't magicaly make games better, that is a result of the reason, not the cause.

    This makes perfect sense. The developers who use the VU are the ones that take the time. Quick and dirty ports wouldn't use it, but if you take the time to optomize for the VU and such, then chances are you'll take the time to optomize other things. You'll make the sound work well, get rid of the logic glitches, adjust the diffuculty so people don't get stuck because you left out some clues to where the key is hidden, etc. The publishers and developers that take time to make great games spend some of that time one the VUs.

    So, indirectly, it makes perfect sense that VUs make a good judge of quality. Now if only other publishers would stop making so much shovelware. The PS2 (and other consoles too, but especially the PS2) has a LOT of great games. But for every great game the PS2 has, it has TONS of shovelware. Unfortunatly, often the shovelware gets great marketing (Finding Nemo, The Matrix: Reloaded, BMX-XXX) and great games (Amplitude, Ico, etc) don't get nearly as much and so they don't do nearly as well, because a large number of games are bought by parents who don't know what games are worth money, or what aren't worth their weight in dust.

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
  8. You're exactly right by Rakthar · · Score: 2, Informative

    The more eclectic you make your system, the more you limit who will spend the time maximizing its performance. If you remember the Dreamcast, they decided to go with a PowerVR type tile based architecture. It caused problems with ports and some of them required quite some rewriting before they would work properly. End result? Limited third party support, and part of why the console did so poorly.

    The PS2 is the 800 lb gorilla so of course it's not going to miss out on any ports. That being said, when Sony chose to get cute with their architecture, they also chose to limit the amount of people that would maximize its power. Was it worth the (hypothetical) 5-10% speed increase in highly specialized apps if non-optimized code runs 20% slower? I'd say no, but for that answer you'd have to ask Sony.

  9. Performance Analyzer presentation by antime · · Score: 4, Interesting
    I'm not sure it's this the article is referring to, but here's lecture slides on the performance analyzer from the Game Developer's Conference 2003 that includes some case studies.

    For more info, look at the other docs on SCEA's R&D site and SCEE Technology Group's site.

  10. Re:Um? by unclethursday · · Score: 3, Insightful
    Oh yes. I have Max Payne 2 for my Xbox (we got it for free from Rockstar, but have to review it for GAF as my 'payment'), and it is one good looking game, in most respects (character models could still use some work).

    The PS2 version, by comparrison, is utter crap looking. Horrid, washed out textures, the overall blandness of the entire thing.

    Still, the PC version, with the correct PC graphics specs (which I don't have), blows the Xbox version away in graphics as well, especially since PC version of the game can support much higher resolutions than the Xbox version.

    I'm not saying games can't look awesome on the PS2, like it may sound like from my OP, really. Zone of the Enders the 2nd Runner is one gorgeous (and fluid moving) game, as is Final Fantasy X. But those are PS2 exclusive titles.

    But, we all know that when most games get ported from the PS2 to other systems that they suffer from 'PS2 Port Syndrome'; where the developers do a quick and dirty port, without offering buyers on the GC or Xbox the graphical abilities these consoles have over the PS2.

    UbiSoft showed that even with the limitations the PS2 has compared to the Xbox and GC, that you can still make a great looking game (Splinter Cell) and have it on all the consoles. In fact, IIRC, UbiSoft actually re-wrote all the rendering abilities for each console to be console specific, so that it would look good on all of them.

    So, while Sony Europe may be right that games could look better on the PS2, blaming 'ports from other systems' is simply laughable (again, 9 out of 10 go to the others from the Ps2, not the other way around). Besdies, with a few exceptions, Sony published games don't look all that hot on the PS2, either.

  11. Relative power of machines by GreatDrok · · Score: 4, Informative

    I get asked all the time which machine is most powerful. It is easy to answer that it is the Xbox because it has a 733Mhz processor and NVidia GPU but in reality that is missing the point. When Sony designed the PS2 they were a couple of years earlier than the Xbox so clock speeds were lower, the 300Mhz MIPS RISC processor was very fast for the time, much faster than any available Intel chip, they were still being used in SGI workstations for example and those are beefy pieces of kit. The problem for Sony was to increase the grunt while being limited by clock speed and the best solution is to introduce parallel processing. The VUs are no different to SSE and SSE2 that Intel introduced in the PIII and P4 line but you don't hear people throwing stones at Intel for doing that.

    The problem Sony has is convincing programmers to look beyond the capabilities of the basic MIPS processor and getting them to use the VUs but just as it is difficult to really make SSE kick arse it is difficult to get VUs working well. I used to program massively parallel computers (look up MasPar) for a living and they were hard, one of the reasons the company eventually failed in fact. However, the techniques used to program that beast are the same as used to write code on the VUs and SSE. I have seen applications that increased in speed by a factor of 20 (not 20%, 20x!) through the use of SSE on Pentium chips so when Sony gets annoyed that people are not using the VUs and so making the PS2 look like it isn't very powerful, well, you can see their point.

    As for the relative power of the PS2 versus the other hardware, have a look at Gran Tourismo 4, or Killzone and reconsider your position if you blindly believe that power is all about clock speed and DirectX.

    --
    "I have the attention span of a strobe lit goldfish, please get to the point quickly!"
    1. Re:Relative power of machines by Naffer · · Score: 2, Insightful

      Yea, have a look at Gran Turismo 4, and then scrub the jaggies out of your eyes with a rough sponge. Yes, the game looks better then previous PS2 games. I own a PS2, and will be buying GT4, but it really isn't all that incredible. It's not just the 300Mhz RISC processor that slows down the PS2, but the lack of RAM as well. Sure there are great methods for swaping textures using the PS2s quick bus speeds, but why bother? Sure, some developers will always spend the time to dig through the spec sheets and program for the extra VUs, but at what cost?

      Consider this: How much quicker and more complete could a game be released if the developers didn't have to spend countless hours coding ASM for sony's extra units. What if they had enough RAM for a full scene, and didn't need to do creative swaping? What if all the energy poured into making a game run decent on the PS2 could be put into the game itself. Sure, there are techniques to be used that make the PS2 a formidable system, but techniques take time, and time as they say, is money. I for one, hope Sony does a U-turn and sticks with a single chip or CPU+VPU setup next time.

  12. Developers don't port the game by obsid1an · · Score: 2, Informative

    Usually, a 3rd party is responsible for porting games. Unless it is a big development company or part of a bigger publisher, it just isn't feasible or worth it for one company to port the game to all platforms. Another company which only does porting is usually responsible for the port.