Inside the Xenos GPU

As previously mentioned, the 48 shaders will be able to run either vertex or pixel shader programs in any given clock cycle. To clarify, each block of 16 shader units is able to run a shader program thread. These shader units will function on a slightly higher than DX9.0c, but in order to take advantage of the technology, ATI and Microsoft will have to customize the API.

In order to get data into the shader units, textures are read from main memory. The eDRAM of the system is unable to assist with texturing. There are 16 bilinear filtered texture samplers. These units are able to read up to 16 textures per clock cycle. The scheduler will need to take great care to organize threads so that optimal use of the texture units are made. Another consideration to take into account is anisotropic filtering. In order to perform filtering at beyond bilinear levels, the texture will need to be run through the texture unit more than once (until the filtering is finished). If no filtering is required (i.e. if a shader program is simple reading stored data), the vetex fetch units can be used (either with a vertex or a pixel shader program).

In the PC space, we are seeing shifts to more and more complex pixel shaders. Large and larger textures are being used in order to supply data, and some predict that texture processing will eclipse color and z bandwidth in the not so distant future. We will have to see if the console and desktop space continue to diverge in this area.

One of the key aspects of performance for the Xbox 360 will be in how well ATI manages threads on their GPU. With the shift to the unified shader architecture, it is even more imperative to make sure that everything is running at maximum efficiency. We don't have many details on ATI's ability to context switch between vertex and pixel shader programs on hardware, but suffice it to say that ATI cannot afford to have any difficulties in managing threads on any level. As making good use of current pixel shader technology requires swapping out threads on shaders, we expect that this will go fairly well in this department. Thread management is likely one of the most difficult things ATI had to work out to make this hardware feasible.

Those who paid close attention to the amount of eDRAM (10MB) will note that this is not enough memory to store the entire framebuffer for displays larger than standard television with 4xAA enabled. Apparently, ATI will store the front buffer in the UMA area, while the back buffer resides on the eDRAM. In order to manage large displays, the hardware will need to render the back buffer in parts. This indicates that they have implemented some sort of very large grained tiling system (with 2 to 4 tiles). Usually tile based renderes have many more tiles than this, but this is a special case.

Performance of this hardware is a very difficult aspect to assess without testing the system. The potential is there for some nice gains over the current high end desktop part, but it is very difficult to know how easily software engineers will be able to functionally use the hardware before they fully understand it and have programmed for it for a while. Certainly, the learning curve won't be as steep as something like the PlayStation 2 was (DirectX is still the API), but knowing what works and what doesn't will take some time.

ATI's Modeling Engine

The adaptability of their hardware is something ATI is touting as well. Their Modeling Engine is really a name for a usage model ATI provides using their unified shaders. As each shader unit is more general purpose than current vertex and pixel shaders, ATI has built the hardware to easily allow the execution of general floating point math.

ATI's Modeling Engine concept is made practical through their vertex cache implementation. Data for general purpose floating point computations moves into the vertex cache in high volumes for processing. The implication here is that the vertex cache has enough storage space and bandwidth to accommodate all 48 shader units without starvation for an extended period of use. If the vertex cache were to be used solely for vertex data, it could be much less forgiving and still offer the same performance (considering common vertex processing loads in current and near term games). As we stated previously, pixel processing (for now) is going to be more resource intensive than vertex processing. Making it possible to fill up the shader units with data from the vertex cache (as opposed to the output of vertex shaders), and the capability of the hardware to dump shader output to main memory is what makes ATI's Modeling Engine possible.

But just pasting a name on general purpose floating point math execution doesn't make it useful. Programmers will have to take advantage of it, and ATI has offered a few ideas on different applications for which the Modeling Engine is suited. Global illumination is an intriguing suggestion, as is tone mapping. ATI also indicates that higher order surfaces could be operated on before tessellation, giving programmers the ability to more fluidly manipulate complex objects. It has even been suggested that physics processing could be done on this part. Of course, we can expect that Xbox 360 programmers will not implement physics engines on the Modeling Engine, but it could be interesting in future parts from ATI.

The Xbox 360 GPU: ATI's Xenos PlayStation 3’s GPU: The NVIDIA RSX
Comments Locked

93 Comments

View All Comments

  • tipoo - Wednesday, August 6, 2014 - link

    That was such bullshit. RSX was worth under 200Gflops, Cell about the same and much harder to extract that much from, Xenos was over 200, Xenon was around 100. Nothing was near the terraflop range except in marketing bullspeak.
  • LanceVance - Saturday, June 25, 2005 - link

    #59

    "Does every xbox game needs to be playable? No."
    "How many of you still play your old games? Market research shows not a lot."

    Backwards compatibility is a feature. It's just like any other feature on a mass market consumer product. Some people value it and others don't.

    You clearly don't value that and won't consider it when making consumer decisions.

    Other people clearly DO value that and you are trying to persuade them not to. That's none of your business. If people value a specific feature they have every right to consider it in their buying behaviors.

    Sorry, I know this post has now gone way off topic from the original article of technical analysis. Beautiful article; but any open forum on such a political topic is doomed to degenerate into this.
  • knitecrow - Saturday, June 25, 2005 - link

    software emulation is difficult and takes a lot of man power to get right.

    The main advantage for microsoft was that they didn't have to stuck with poor business and engineering design choices of the past.

    Does every xbox game needs to be playable? No. I don't care for games like "big rigs"
    I abviously want halo to work, but also the lesser known good titles on xbox ... like Panzer Dargoon Orta, Kingdom Under Fire, Otogi 1 & 2 and so on.

    How many of you still play your old games? Market research shows not a lot.I have an 80+ games library for the xbox. I don't mind.
  • BenSkywalker - Saturday, June 25, 2005 - link

    milomnderbnder21-

    They are flipping consumers off. Sony and Nintendo at this point are both adding costs to their consoles to incorporate hardware to make certain that their systems have full compatability with the prior generation. MS has decided that you and I are not good enough to offer that same assurance. They have decided to save themselves a couple of dollars and render useless all of their games they can't get running on their new platform so they can save a few dollars. They will take a shot at software hacks- if they don't work we are out of luck. They are also stopping production of current gen XBox hardware. I have about thirty games for my XB currently, what do I do with them if my XB dies and they aren't supported by XB360(which there is no assurance they will)? I keep my legacy hardware around, back to my 2600, and my games.
  • Olaf van der Spek - Saturday, June 25, 2005 - link

    > Compared to the built in 5X CAV DVD drive in the Xbox, the hard drive offered much faster performance. With the Xbox 360, the performance demands on the hard drive are lessened, the console now ships with a 12X CAV DVD-DL drive.

    Aren't all read-only DVD drives dual-layer?
  • Starglider - Saturday, June 25, 2005 - link

    I'm a game programmer and I take issue with the statement on page 4 that BSP collision detection benefits from branch prediction. It doesn't; it's one of the rare types of code where the branches are effectively impossible to predict. The algorithm /does/ benefit heavily from speculative execution, but as I understand it neither the XBox360 or the PS3 are capable of this. As such this is one area where PC style processors have an advantage; neither console is going to beat a modern PC at SuperPi.
  • devilzblood - Friday, June 24, 2005 - link

    altho this is my first post at anandtech, i have been reading ur articles from the geforce 3 launch.
    newayz.....im posting here coz im wondering if neone knos this.....what degrees do Anand and Derek hold?? they seem to be such a bank of information, i never thought it was humanly possible to know so much about computers..needless to say im impressed by u people..and all i would like to say about the article is that it was an informative and enjoying read
  • milomnderbnder21 - Friday, June 24, 2005 - link

    #46

    MS is by no means "flipping off it's supporters" with regards to backwards compatibility. They have flat out stated that it is there goal that EVERY Xbox game be compatible on the 360, but they simply cannot guarentee it. In any case, look for a majority of them to be so. And if they can't get everything working, I'm not going to miss outlaw golf on my 360...
  • MDme - Friday, June 24, 2005 - link

    #50

    Sony WILL support 1080p. They are supporting it so that they can BRAG about it. It's all about the hype, even if they only have 1 game supporting it, they will BRAG about it. heck, if you really think about it, if sony played a video (H.264) at 1080p then ran the game at 720p they will still claim, WE HAVE SUPPORT FOR 1080p. It's all marketing. Even X360 can claim this.
  • finbarqs - Friday, June 24, 2005 - link

    bla bla bla, which one is better?

Log in

Don't have an account? Sign up now