• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

PS4 ICE Team Programmer: ‘Surface Tiling/Detiling On The CPU Is 10-100x Faster Now’

andycapps

Member
Faster "now" compared to when? Is he saying these optimizations will make it into a future PS4 firmware update? Or a future hardware revision of the console? Or the optimizations are already there?

I believe this is referring to software SDK's available to developers. This isn't going to have an immediate impact for end users.
 

ElTorro

I wanted to dominate the living room. Then I took an ESRAM in the knee.
Nice! So tessellation is CPU bound? What portions are done by the CPU vs GPU?

I don't know, I only read some basic literature on computer graphics but don't work in that field (Dunning–Kruger ftw). And as others suggested, the tweet could refer to something else. I am pretty sure that the article's explanation is wrong, though. The author seems to refer to tile-based rendering (and his explanation seems to be borrowed from the Wikipedia article on that topic), and that is definitely not what the tweet meant.
 
PS4 is a beast.
You are such a beast Finaika. Alright. This had to be done at some point:


neuebitmap12b1j75.png

neuebitmap13lgjhe.png

neuebitmap14ccolk1w.png

neuebitmap151djg1.png
 

ElTorro

I wanted to dominate the living room. Then I took an ESRAM in the knee.
I'm quite surprised they already go as low as assembler code.

It's the benefit of a closed, fixed system architecture that "coding to the metal" becomes a more feasible thing than for software that targets a variety of platforms with much variations. For performance-criticle libraries, assembler is always an option, though, not just on consoles.
 

viveks86

Member
I don't know, I only read some basic literature on computer graphics but don't work in that field (Dunning–Kruger ftw). And as others suggested, the tweet could refer to something else. I am pretty sure that the article's explanation is wrong, though. The author seems to refer to tile-based rendering (and his explanation seems to be borrowed from the Wikipedia article on that topic), and that is definitely not what the tweet meant.

Cool. Thanks!
 

thelastword

Banned
Cool, nice improvement, there's no doubt that the PS3's SDK will see lots of improvements with time. Also, perhaps later in the gen when the OS team delivers most of the features that the fans demand they can free up part of that 2GB of GDDR5 to developers.
 

hesido

Member
I'm quite surprised they already go as low as assembler code.

I guess it still makes sense to have that as low level as possible when you are dealing with standard libraries that may be used in tight loops. I'm not sure if this is a firmware thing but it is possibly libraries used by devs, I may have missed it, tho.
 
I don't want to drag this off-topic, but MS should really set up something like the ICE Team. So far as I know they don't have anything like it, and this generation they need it more than ever.

They already do. It's called ATG (Advanced Technology Group).

It's hard to find info for an internal team, especially when they don't make themselves known too well publically, but this is just proof that they exist, and have existed since the OG Xbox days (at least 2001). http://www.imdb.com/company/co0189264/
 
So this is basically hardware-level occlusion culling? Which Naughty Dog sort of pioneered with Crash Bandicoot in 1996? Cool.

I mean it. Legitimately cool. Just surprised it took this long for Sony engineers to realize it's a fantastic performance-boosting technique and nail it down system-wide.

So did you miss where it said "faster"? It does not mean that just found it, they just optimised the performance. Also word to the wise Naughty Dog houses the ICE team.
 

FeiRR

Banned
It's the benefit of a closed, fixed system architecture that "coding to the metal" becomes a more feasible thing than for software that targets a variety of platforms with much variations. For performance-criticle libraries, assembler is always an option, though, not just on consoles.

I should have stressed the world already as in 'this early in the generation cycle'. I know quite a lot people who code in ASM but they are retro computer freaks (closed platforms as well).
 

Corto

Member
So did you miss where it said "faster"? It does not mean that just found it, they just optimised the performance. Also word to the wise Naughty Dog houses the ICE team.

Their location is the same but ICE team work is shared with all SCE studios and even 3rd parties.
 

benny_a

extra source of jiggaflops
I should have stressed the world already as in 'this early in the generation cycle'. I know quite a lot people who code in ASM but they are retro computer freaks (closed platforms as well).
I would expect that the department that creates a lot of low-level libraries for first and third-parties for the PS4 platform to actually program close to the metal.

If they wanted to do Lua they wouldn't have joined ICE.
 

Alchemy

Member
I'm quite surprised they already go as low as assembler code.

This is pretty much the reason the ICE team exists, beat the shit out of hardware and extract every last ounce of power from it. I'm sure they go straight to assembly on day one.
 

Insane Metal

Gold Member
These guys rock! Hadn't it been for them, the PS3 wouldn't have a GPU... just imagine the disaster the system would be... yikes!
 
Whatever the D3D team do, obviously the result isn't as pronounced, there's Halo 4, standing head and shoulders above anything else MS put out graphically, where as Sony had GG, SSM and ND constantly nipping at each others toes.

What's mind boggling is Corrine Yu (the lady responsible for Halo 4 looking beastly) is now working for Naughty Gods.

Game. Set. Match.
 

Alcifer

Neo Member
No. You are probably referring to tiled resources, but that is not what is meant here. That has nothing to do with the CPU. The author's article got it wrong.

Surface tiling most probably refers here to the subdivision of geometric objects into smaller geometric objects.

"Tiling" is generally a term that easily leads to confusion since it refers to very different things in different contexts. Another common confusion is the equivocation of tiled-based rendering with tiled resources.

I think this might actually be referring to something different again (so many overloaded meanings to 'tiling' in graphics programming...).

Surfaces, in the D3D meaning of the term, are an area of memory used for a texture or render target. In that case tiling and detiling would refer to changing the order of bytes in the texture to allow different patterns of access. Different address modes being faster for different operations.

A texture can be linearly addressed as a single 1D array of pixels, or it can be addressed as a tiled surface addressing all the pixels in each tile linearly. For instance a 4x4 texture can be addressed two different ways.

Code:
A B C D
E F G H
I J K L
M N O P

Linearly: ABCDEFGHIJKLMNOP
Tiled 2x2: ABEF, CDGH, IJMN, KLOP

The XBone appears to have specific hardware built into it's move engines to tile/detile surfaces as they are moved.
 

FranXico

Member
yeah I know what it is, just wasnt sure if that was indeed what was being talked about. I wasnt aware of it being an issue on the hardware. But it is always good to see an example again.

It isn't. People are wondering if there is a bug in the SDK.
 
Top Bottom