• 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.

Xbox Velocity Architecture - 100 GB is instantly accessible by the developer through a custom hardware decompression block

Where else are you going to store the data if you're not "putting it directly in memory"?

They are putting it directly in memory. They are using a pool of memory which stores recently used textures and other data. What the SSD allows them to do is quickly swap data in and out of this pool. Because they can do this quickly, they do not need a lot of data preloaded until it's time for it to be used. This allows them to reduce the size of the pool, not only improving performance but reducing occupancy.

Now, GPU caches that live within a cache hierarchy (Registers -> L1 -> L2 -> L3) have their data written to depending on the code running on them at the time. The control a developer has over these caches is mainly from the data structures and operations performed on those data structures (i.e:. Aligned arrays of a certain size are more cache friendly, certain types of loops are more cache friendly, adding memories barriers or grouping writes and reads, are more cache friendly). The developer can basically only hint what actually ends up in these caches, they really don't have much to go on. These caches are also very small. You cannot jump dump texture data into them, especially from an SSD. Your CPU can just dump any cache it doesn't like (usually using some sub-process to scrub cache based on age or usage) , a developer doesn't do this. You cannot put anything into the cache directly, because it always has to be loaded via RAM, programmers do not, in any way, interact with CPU caches. It just isn't something that happens. This is why I can dismiss it so easily.
 

Ascend

Member
He's PR'ing the hell out of his tech! Here is the blurb direct from Microsoft about SFS:



You still haven't explained, if the RAM is being bypassed, how GB's of data fits in KB's to MB's of GPU cache? It doesn't make sense to me but I'll continue to hope a dev will chime in and explain all in a clear way we all can understand.
To clarify... The RAM is not being bypassed all the time. If that was the case, you would have no RAM at all, but only SSD and the APU. This is clearly not the case. RAM is still needed, because the SSD is still too slow to be used as RAM for everything.

Obviously you cannot fit GBs of data into a small cache. Cache doesn't really hold "files" either. They hold snippets of data that are accessed the most, with a certain level of hierarchy.

Going back to the whole bike & car thing... Look at it this way...

You have 100 bikes.
You have 10 cars.
You want to build a house as fast as possible, and you are currently at the store to buy everything you need.
Obviously you're going to want to put as much building materials as possible in the cars, because they can reach the location faster for the house to be built.
While the 10 cars are full and busy, the bikes can also transport little things to assist the house being built.

They are putting it directly in memory. They are using a pool of memory which stores recently used textures and other data. What the SSD allows them to do is quickly swap data in and out of this pool. Because they can do this quickly, they do not need a lot of data preloaded until it's time for it to be used. This allows them to reduce the size of the pool, not only improving performance but reducing occupancy.
This is all true. And it's the exact same thing that the PS5 will do. But unless MS has been lying, they are doing something different here. And it also shows in the design of the console; the philosophy and priority is quite different.

Now, GPU caches that live within a cache hierarchy (Registers -> L1 -> L2 -> L3) have their data written to depending on the code running on them at the time. The control a developer has over these caches is mainly from the data structures and operations performed on those data structures (i.e:. Aligned arrays of a certain size are more cache friendly, certain types of loops are more cache friendly, adding memories barriers or grouping writes and reads, are more cache friendly). The developer can basically only hint what actually ends up in these caches, they really don't have much to go on.
Agreed.

These caches are also very small. You cannot jump dump texture data into them, especially from an SSD. Your CPU can just dump any cache it doesn't like (usually using some sub-process to scrub cache based on age or usage) , a developer doesn't do this.
Still true.

You cannot put anything into the cache directly, because it always has to be loaded via RAM, programmers do not, in any way, interact with CPU caches. It just isn't something that happens. This is why I can dismiss it so easily.
All was true, but I have to question the bolded part. But I think we've already had this discussion in the past. If the SSD works as a form of slower RAM, what is there to stop the data from being loaded from it into cache?
 

AgentP

Thinks mods influence posters politics. Promoted to QAnon Editor.
They are putting it directly in memory. They are using a pool of memory which stores recently used textures and other data. What the SSD allows them to do is quickly swap data in and out of this pool.

By quickly, do you mean slower than the GDDR by 100x?
 
All was true, but I have to question the bolded part. But I think we've already had this discussion in the past. If the SSD works as a form of slower RAM, what is there to stop the data from being loaded from it into cache?

Let's just say you somehow mounted the SSD as RAM. You still have no control over these caches. It's not a thing in the world of CPU / GPU caches on any architecture, period. It'd be slow anyway, your cache hierarchy would suddenly drop off a cliff, speed wise. Best to keep the RAM up to date as much as possible and let normal processes continue. SSDs allow this more than ever, and it's effective so there's no need to do anything else. Game engines being smart is where these gains will be realised.
 

sendit

Member
I have to say it...

I GODDAMNED TOLD YOU SO



For the ones that need context, start reading around Page 50 or so.
Here's a relevant quote of one of my posts.


Not sure what revelation or 'i told you so' angle you're trying to action upon here. However, this was already implied awhile ago.....


via DirectStorage api
 
300px-Something_of_a_Scientist.jpg


The thread.

I just want cliff notes for console warring.. is the 12gb/s more or less than ps5!?
 

01011001

Banned
Not sure what revelation or 'i told you so' angle you're trying to action upon here. However, this was already implied awhile ago.....


via DirectStorage api

yes but vague PR speech bullshit should never be seen as hard information.

the confirmation that it actually works like any normally thinking human being thought it would is nice to know, but PR people often try to describe things in a way that makes you think it works a certain way but in the end it doesn't...
always in a way that can be explained away of course
 
Top Bottom