Slashdot Mirror


PS3 Linux Performs Real Time Ray Tracing

fistfullast33l writes "A video posted on You Tube shows three PS3s networked together to perform Real Time Ray Tracing. Keep in mind that PS3 Linux runs in a hypervisor, so the RSX graphics chip is not being used at all. Even more impressive, PS3 Fanboy is reporting that Linux also limits the number of SPEs to 6 at once, so not all the horsepower on each of the PS3s is being utilized. According to the You Tube Summary, IBM Cell SDK 2.0 is being used for the IBM Interactive Ray-tracer (iRT). This apparently was done by the same team that presented a tech demo at GDC 2007 of a Linux PS3 rendering a 3 million polygon scene in real time at 1080p resolution."

12 of 135 comments (clear)

  1. Linux doesn't limit the SPEs by Anonymous Coward · · Score: 5, Informative

    PS3 Fanboy is reporting that Linux also limits the number of SPEs to 6 at once

    That is incorrect - Linux does not limit the SPEs - Out of the 8 available SPEs, the PS3 hardware disables 1 and one is reserved for the hypervisor leaving 6 for Linux running atop the hypervisor.

  2. Wrong by swissmonkey · · Score: 3, Informative

    The Linux PS3 never rendered a 3 million polygons scene in real-time, it decomposed the scenes into batchs that were dispatched to blades to do the rendering and the result brought back to the PS3.
    It's written clearly in the article, please read it before you post about it.

    1. Re:Wrong by prionic6 · · Score: 2, Informative

      I made the same mistake as you: I only read the older article that is linked last, so I thought the submitter did not notice that the rendering was done by a blade farm. But that Article is talking about an older project of the same group. The youtube video linked here is about a scene that is renderes in realtime by 3 network-linked PS3s. Just to clarify :)

  3. seven available SPEs; one used for DRM by maynard · · Score: 2, Informative

    The reason only six are available to the OS is that one us used by the hypervisor for DRM purposes and the eighth is disabled for chip yield purposes. Raytracing is very parallelizable task, so it's not surprising that eighteen SPEs working in parallel could perform realtime raytracing.

    One point: there's yet another SIMD engine on that chip... people forget about VMX (altivec). It's bolted onto the PPC PPU core as well.

  4. Re:Limits by Osty · · Score: 2, Informative

    This looks interesting at first but the arbitrary limitations placed on the PS3 seems to be a show stopper. I mean why pay $600 for a "performance" machine that isn't even given the chance to live up to its specs?

    Those "arbitrary" limitations aren't so arbitrary. Sony intentionally limited PS3 Linux in order to prevent competition from homebrew games. Sony's taking a big dollar loss per console sold, and their bread-and-butter to make that up is game licensing fees. If PS3 Linux had access to the full power of the PS3, the homebrew scene instantly becomes a major threat to Sony's cash flow.

    Interestingly, Microsoft's XNA is going the complete opposite direction. They do have some arbitrary restrictions (access to Xbox Live, difficulties in sharing your games), but those are in place for technical reasons rather than business -- XNA is still very young, and Microsoft wanted to get it out there so people could play with it even though they hadn't had a chance to sort out security issues with some features. XNA game packaging and Xbox Live access are coming.

  5. Graphics applications by fistfullast33l · · Score: 4, Informative

    Umm, let's take a look at what you're saying there...

    know there's been some limited applications of realtime raytracing in gaming. IIRC your temple in Black & White had some in the ceiling

    Umm, I think you have Radiosity confused with ray tracing.

    I don't think this is very exciting, however. It's not like it has gaming applications; you need three PS3s to get it done. Wake me up when one PS3 can do realtime raytracing in-game.

    Then you must not know much about computer graphics. I doubt you could have done this with the PS2 or the XBox. The fact that a next gen machine can do this is very interesting, especially in a distributed fashion over the network. Distributed computing really is the future, and may someday take place inside game consoles as well. IF you have a spare processor and your buddy doesn't, is it efficient for him to borrow your CPU time? This is definitely a discussion that is occurring in normal computing space, let alone console gaming.

    Not to mention, this isn't being done with the Sony SDK. This is done using free tools available via the internet. A college student could build this for a research project if they wished. This is proving that Sony allowing people access to Linux on the machine really is working. It counters the argument of XBLA's framework being the best thing ever. In fact, they could release this code as part of the GPL for free and it wouldn't be encombered by any Microsoft system or Sony system whatsoever.

    1. Re:Graphics applications by Anonymous Coward · · Score: 4, Informative

      Actually, he probably knows more than you. If you truly knew much about ray-tracing, you would understand why phrases like "real-time raytracing" are a big yawn for anyone with some experience. Ray-tracing can be arbitrarily scaled in complexity (given proper constraints). Heck, there was a game for the Atari Jaguar that claimed to do "real-time raytracing". If I gave you a scene of a thousand diffuse-shaded spheres, I could raytrace that in realtime on a PS2. If I gave you a scene of a thousand semi-transclucent marbles contained in a glass vase on a glass table in a hall of mirrors, I don't care how many PS3s you throw at it, it won't be able to raytrace something that looks good in realtime. If you limit the number of ray bounces and ray transmissions for the Cell to finish it in "realtime", it will look like ass. So "real-time raytracing" is just some amorphous term that sounds cool, but is meaningless as a performance metric. I was using a 3D package in 1992 that did "realtime interactive raytracing" on a machine with 1/100th the CPU power of a PS3. Sometimes it was realtime, sometimes it wasn't. It is all dependent on the scene complexity. Plus, you can get to photorealism (the ultimate goal, right) much more efficiently than via ray-tracing so what's the point?

    2. Re:Graphics applications by Darkfred · · Score: 2, Informative

      As an actual Games Programmer, in Graphics engines, I have to agree with you. The other thing to note is that ray tracing is by no means a speed benchmark as it is very implementation and scene specific. We had real time raytracing of in the demo scene 10 years ago and earlier. On a system 1/1000 or less the power of the PS3. And it would be a simple matter to whip up a similar pc demo. You'd just have to tweak the settings controlling density of rays for antialiasing and reflection calculations, it probably wouldn't be distinguishable.

      --
      ----- 70% of all statistics are completely made up.
  6. Re:Limits by Abcd1234 · · Score: 2, Informative

    Sony intentionally limited PS3 Linux in order to prevent competition from homebrew games

    I don't buy that for one second. There is no way homebrew will provide any amount of competition to professional publishing houses, with their multi-million-dollar budgets and professional artists, composers, and so forth. Hell, just look at the Linux/Windows open-source game market... oh, right, there isn't one (aside from the odd exception, like Tux Racer or Frozen Bubble).

    The only reasons I can think of to lock down the PS3 are:

    a) Piracy. A fully unlocked PS3 may make it possible to run pirated software on the machine.
    b) It serves as an alternative to their rather expensive professional development kits, cutting into a source of revenue.

    Personally, I suspect the former.

  7. Re:Polygon? by The+boojum · · Score: 3, Informative

    Certainly not "free" exactly. But in general, as long as you're using a good acceleration structure and can hold everything in-core, performance is roughly O(lg N) in the number of polygons. So the speed hit going from 50k to 100k polygons would be roughly equivalent to that of going from 100k to 200k. That's where the scalability of ray tracing comes in. There's still going to be quite a difference between one big polygon and 100k of them.

    You'll also find that most ray tracers exhibit the same performance variation between facing a wall and facing a full landscape. It may not be as dramatic due to the relatively high constant of proportionality for a software ray tracer vs. a GPU but it's still there. A large part of that is probably just cache performance -- you'll have a lot more cache hits facing the wall.

    Reflection-wise, you've got the right idea -- there will be a decent speed hit for them. But you've got it backwards. Doing a good job of computing color bleed effects require a ray tracer which supports global illumination and that can take astronomically more rays to compute than a decent implementation of basic specular reflections. You probably need at least 100 rays/pixel or more to even have a prayer of not having any excessively noisy image. Ray tracing is a point-sampling technique which means that any time you have any sort fuzzy/soft kinds of effect like ambient occlusion, glossy reflections, soft shadows or color bleed from indirect illumination.

  8. Correction by Anonymous Coward · · Score: 1, Informative

    Linux has, afaik, access to as many SPEs as the games... that is 6. The reasons aren't related to
    linux support at all but to the PS3 design:

      - One SPE is unuseable because Sony uses chips with only 7 good SPEs to improve yields
      - One SPE is reserved by the HyperVisor for its own use, possibly DRM related
      - The 6 remaining ones are useable by the operating system, wether it's the Game OS or
          Linux, there is no difference in that area.

  9. Re:Some thoughts by nickthecook · · Score: 2, Informative

    Linux does not use it for its own benefit - the extra SPE is not usable by linux to enforce what Sony calls "O/S security". E.g. ensuring that linux cannot access the PS3's partition on the hd.

    I would hardly say this benefits linux.

    In either case, the important thing to note is that the SPE is not being used to perform raytracing.