Xbox One: DirectX 11.1+ AMD GPU , PS4: DirectX 11.2+ AMD GPU what's the difference?

Well, I think it mainly was something he wanted to somewhat clarify about AMD's desktop GPU's since it wasn't coming up anywhere else.

It may or may not have any relevance to the consoles. I don't know if we'll ever find out for sure whether one or both consoles have Tier 2 hardware features.

Regards,
SB

This thread was closed & he asked that it be opened back up to point out that it really is a difference. I think it might have to do with the new GPU's coming out & he can't talk about it until after they are revealed.
 
It doesn't provide "free anisotropic filtering", it just allows you to have virtualized textures with normal cost anisotropic filtering. When you're doing software virtual texturing without tiled resources, the shader has to perform anisotropic filtering manually instead of letting the hardware do it since all texture addresses need to go through an indirection map. This not only makes it more expensive, but puts practical limits on the maximum level of anisotropy that you can use. If I recall correctly this was an issue with RAGE, which had some weird mip filtering issues as well as limited AF level (4x I think?). With tiled resources the hardware does the indirection for you at the memory controller level, so the shader can sample the texture normally and the hardware does the filtering the way that it normally does. If you choose to use anisotropic filtering, then you still pay a cost proportional to the maximum number of samples.
Thanks for the explanation MJP. I wasn't aware of the issue you mention in regards to RAGE by iD.

I found some new and interesting information about Tiled Resources and Anisotropic Filtering in the Granite SDK webpage, and the improvements in both technologies.

http://graphinesoftware.com/Announcing-Granite-2.0


Hardware tiled resources offer several improvements over the shader based method available in Granite 1.8. Especially when using high-quality filtering modes such as full anisotropic trilinear filtering with a high degree of anisotropy (>= 8x) there are clear advantages. Firstly, the shader can be simplified, reducing the instruction count from around 30 to 10-15 shader instructions in the case of anisotropic filtering. Secondly, since no overlap needs to be used on tile borders cache use and compression can be improved. Finally, streaming throughput is improved by 33% as no mipmaps have to be generated for uploaded tiles"
What does that mean? Kind of more efficient and cheaper AF? No pop-up anymore when it comes to textures?

The programmers in the Tiled Resources presentation video also said:

"Of course Granite 2.0 still has full support for shader emulation on older API´s and hardware. This makes using tiled resources in multi-platform games or engines very easy. If there is hardware Granite will use it, if not it will automatically fall back to a shader based implementation."
It seems to show that there is a hardware implementation on the Xbox One because of the 32mb of eSram:smile2:and also judging by the reviews of the AMD 7790 HD Bonaire.

They also point out what can really work well when it comes to Tiled Resources. -at 29 minutes mark or so in the Tiled Resources presentation video, the middleware company Graphine mentions this about Tiled Resources-

*Minimize Latency
*Minimize Texture Cache Size
*Minimize Storage Size
*Minimize Production Overhead
*Maximize Unique Texture Data
Well, doesn't all of this sound very friendly/compatible with a small pool of eSram? :smile2: I think this is the exact reason why Microsoft have chosen the path they have. I wonder if Microsoft will ask that every Xbox One game shall be programmed using Tiled Resources.
 
Last edited by a moderator:
If we are to believe the latest DF article and both consoles are based on Sea Islands then it is safe to say that both consoles will support tier2 PRT. So much for that. Mystery solved :D
At least if MS is actually correct and Sony's HW is also based on Sea Islands
 
Sea Islands is made up of both tier 1 and tier 2. So no it doesn't mean that.
All it means is that it's not VI based.
Discussion continues :D
 
Thanks for the explanation MJP. I wasn't aware of the issue you mention in regards to RAGE by iD.

I found some new and interesting information about Tiled Resources and Anisotropic Filtering in the Granite SDK webpage, and the improvements in both technologies.

http://graphinesoftware.com/Announcing-Granite-2.0


What does that mean? Kind of more efficient and cheaper AF? No pop-up anymore when it comes to textures?

It's just elaborating on what I was saying earlier: if you implement virtual textures without tiled resources, you need to manually handle AF in the shader and so AF becomes more expensive than it would be without virtual textures. With tiled resources the hardware handles AF, and so it has the same cost as if you didn't use virtual textures.

Well, doesn't all of this sound very friendly/compatible with a small pool of eSram? :smile2: I think this is the exact reason why Microsoft have chosen the path they have.

I'm sure that having hardware PRT will help programmers to better utilize embedded RAM in a lot of cases, but I would be surprised if MS based their entire GPU design around that one feature.

I wonder if Microsoft will ask that every Xbox One game shall be programmed using Tiled Resources.

Of course not, that would be silly. Tiles resources will be useful for some things, not so much others. It would make no sense at all to mandate its use with no regard for the specifics of a game and its graphics engine.
 
I'm sure that having hardware PRT will help programmers to better utilize embedded RAM in a lot of cases, but I would be surprised if MS based their entire GPU design around that one feature.
I would think that the virtual memory system is more important.
 
It would be interesting to know if you can access embedded ram in the virtual space of the GPU with FLAT* instruction type...
 
It would be interesting to know if you can access embedded ram in the virtual space of the GPU with FLAT* instruction type...
Of course you can. And you can also access it with all other (global) memory instructions. The FLAT* instructions are only there to fuse the global memory address space with the local memory space (the 64kB in each CU, not the eSRAM). The GPU shader code doesn't have to know (and it won't know) if a specific address is mapped to DRAM or eSRAM, it's completely transparent at this level.
 
Will the other cards be DirectX 11.2 enhanced or is it just the R9 290?

amd-gpu14-presentation-21-rs.jpg
 
I dont know if this has already been discussed.. But didn't AMD say that their NEW cards were the only cards that supported DX11.2?? If so, then neither console can support this right??

Sorry if it is a stupid question
 
I dont know if this has already been discussed.. But didn't AMD say that their NEW cards were the only cards that supported DX11.2?? If so, then neither console can support this right??
All AMD GCN cards currently support DX11.2 (once windows 8.1 is out there will be a driver update)
Currently on the market there are 2 GCN variants. GCN 1.0 and GCN 1.1.
GCN 1.0 = DX11.2 tier 1.
GCN 1.1 = DX11.2 tier 2.

XB1 supports DX 11.2
PS4 at a hardware level supports DX11.2 functionality (as it's GCN based like XB1), but will not have DX11.2 drivers as it where.

We don't know which (if either) console is GCN 1.1.
 
*AHEM* Let's not waste our time with that bullshit crazy nor give them any hits.
 
I have a question about the above slide
why is the texturemap stored in memory all jumbled up (A) why isnt it stored as is like (B)
 
B has been broken into tiles and only the tiles needed to draw the current graphics are loaded into memory. These are still stored as a 2D matrix of texture data though, so they look like A in RAM. An alternative representation would be to have 32 separate small textures
 
It looks like only the lightened (vs darkened) tiles from B are pulled into memory. I'm assuming those are the only resources needed for this texture.

So instead of having to read in the entire image B, only certain tiles are moved to memory. (If I can count it looks like only 25 of 64 are need, I would think the bandwidth required to load those into memory would be reduced by a similar factor),
 
Section A represents what the GPU has loaded for its immediate needs, the other portions of the images are not needed, and space savings would be pretty hard to realize if the resident tiles had to be arranged with respect to data that is not there.

That example keeps a linear relationship from A to B. If you trace along from left to right and top to bottom, there is an order to the tiles, just a discontinuity when you hop over unused tiles.
The neat and tidy example may be just for the slide.
 
Back
Top