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

"We're able to show the difference from what's possible today with what's possible tomorrow": Inside Epic's Unreal Engine 5

Panajev2001a

GAF's Pleasant Genius
Yes, walking through an empty corridor definitely needs 5.5 GB/s of constant streaming capacity. Lmao.
No, it needs about 3-4 GB/s you are right. Ah, curiously what the devs have already stated. So, we agree ;)? (just trolling or do you have an argument that is not a dismissive “oh just walking through an empty corridor must not require a lot of data” comment which I kind of thank you for making as it helps frame your post :LOL:?)
 
No, it needs about 3-4 GB/s you are right. Ah, curiously what the devs have already stated. So, we agree ;)? (just trolling or do you have an argument that is not a dismissive “oh just walking through an empty corridor must not require a lot of data” comment which I kind of thank you for making as it helps frame your post :LOL:?)
My argument is to use common sense and then to correctly interpret what the devs are saying. They never said DeS is constantly streaming 4 GB/s because, as common sense dictates, it's not even close to necessary.
 

Panajev2001a

GAF's Pleasant Genius
My argument is to use common sense and then to correctly interpret what the devs are saying. They never said DeS is constantly streaming 4 GB/s because, as common sense dictates, it's not even close to necessary.
Ok, so it is your guy’s feeling based on yeah the evidently lacklustre detail evident in the scene and the devs’ words (not like the world has tons of environment details, lighting and texture data to stream for decals - character and environment textures, light maps and light probe data -, etc...) .
Sure :LOL:, unless you wanted to make the novel point that they are not streaming that amount of data when the character is stationary and other similar obvious scenarios. You seem to be going through the technically correct yet not as pertinent as you may think road. At least it is not in the inflammatory “empty halls of a PS3 like game” vibe your previous post had.
 
Ok, so it is your guy’s feeling based on yeah the evidently lacklustre detail evident in the scene and the devs’ words (not like the world has tons of environment details, lighting and texture data to stream for decals - character and environment textures, light maps and light probe data -, etc...) .
Sure :LOL:, unless you wanted to make the novel point that they are not streaming that amount of data when the character is stationary and other similar obvious scenarios. You seem to be going through the technically correct yet not as pertinent as you may think road. At least it is not in the inflammatory “empty halls of a PS3 like game” vibe your previous post had.
It's not a gut feeling, it's how things work. And as I said, the devs never claimed that DeS is constantly streaming 4 GB/s.
 

onesvenus

Member
It's not a gut feeling, it's how things work. And as I said, the devs never claimed that DeS is constantly streaming 4 GB/s.
Well, obviously when you are still there's no need to stream 4GB/s worth of data. And in some other places it might not make sense either. The thing is that devs claim they are doing it somewhere. Neither you nor I know how much it's done so that's a moot point.

The keys for me are that they are doing it, that it hasn't been done before because it was not possible and that's impossible to do currently on PC
 

Shmunter

Member
The streaming pool in that demo was 768MB
7Lhjgzt.png

Although I don't think we could count how much bandwidth was used from that. Maybe it was 768MB per frame, every two frames or every second.

In the DF DeS interview with BluePoint

They say (at around the 17 minutes mark) that they are continuously streaming 3/4 GB worth of compressed data every second.


At 3/4 GB of compressed data per second as in Demon's Souls, how fast do you think your RAM pool would get filled? You could avoid the problem of transferring data from the SSD to RAM if you had a big enough pool but I can't see that as a mandatory requirement for UE5

The faster the streaming ability, the smaller the pool needs to be - aka the buffer reserve. Theoretically if the SSD was as fast as ram the pool would be 0.

With the pool being smaller, there is also effectively more usable memory available for everything else.
 
Last edited:

onesvenus

Member
The faster the streaming ability, the smaller the pool needs to be - aka the buffer reserve. Theoretically if the SSD was as fast as ram the pool would be 0.

With the pool being smaller, there is also effectively more usable memory available for everything else.
He was talking about having everything in RAM instead of streaming
 

Panajev2001a

GAF's Pleasant Genius
The faster the streaming ability, the smaller the pool needs to be - aka the buffer reserve. Theoretically if the SSD was as fast as ram the pool would be 0.

With the pool being smaller, there is also effectively more usable memory available for everything else.
Exactly, the diminishing returns would be if the SSD were faster and had lower latency than RAM, otherwise the faster it is the better (and yes it allows for smaller and smaller streaming buffers which means more RAM free for unique detail and higher resolution on demand temporary rendering buffers too, higher resolution textures, etc...).

Even if the SSD had a bit higher bandwidth it would still make sense if RAM had a lot lower latency as you could really minimise the streaming buffer (totally dependent on latency delta): for old examples of this seem the PS2’s GS eDRAM where the bandwidth between DRAM macros to the page buffers was a lot higher than the page buffers to Pixel Engines was (48 GB/s is the latter, the bandwidth from the DRAM to the page buffers was more than double that).
 
Well, obviously when you are still there's no need to stream 4GB/s worth of data. And in some other places it might not make sense either. The thing is that devs claim they are doing it somewhere. Neither you nor I know how much it's done so that's a moot point.

The keys for me are that they are doing it, that it hasn't been done before because it was not possible and that's impossible to do currently on PC

It's done whenever the game loads. This is mostly after death or when loading in new zones (for example after teleporting somewhere). In these instances the game pushes 4 GB/s of data, which leads to near instant loading times.
 
This is how expectations get out of control.

Sony acquired the biggest developer they could afford in the current gobbling up of development studios. Which equated to a 1.4% stake in Epic.

Epic and Sony get together to discuss ways that they can hype their new partnership, and this is the result.

Good example appeared immediately... As expected. 👇
 
Last edited:

TheGejsza

Member
PC will - as always - have best performance but this generation is kinda different. I think it might take way longer for the PC to catch up to consoles because any standards to become a standard for PC takes a good few years where with consoles it becomes a standart at the day of the console release.

I can't imagine most PC game WOULD REQUIRE certain speed-SSD in 2021, not even 2022. Maybe there will be standarized SSD speeds for PC market in 2023 but who knows.

Also PC market - especially GPU - is in totall shambles. I would like to buy RTX3080 but I can't. Even mid-range GPU's are gone. I think we will see any significant advantage in performance over console games with the release of the next 4xxx gpu series. But - again - those card will be sold out for a year or even more. And there is still the price-point - even with the release of 4xxx series the amount of people who would buy them would be marginal.

So the right question in this thread is not whether the PC is stronger or Console but when PC will get any significant advantage over Consoles - this is how we should measure the "power" of a console generation in comparison to PC. I think in this generation it might be way longer (and much more expensive) then in two previous generations. Currently PS5/XSX are having great spec for their price and the blow out of the water most PC's. But this is how it is with every start of new gen. Let's see how long it will reamin unchanged.
 

Azurro

Banned
I don't think you do understand, because RTX I/O is leveraging the GPU for the decompression. In other words it IS dedicated hardware.

From Nvidia's tech page on RTX I/O:

The PS5 has support in fixed function silicon to perform the decompression, iirc. RTX I/O leveraging compute capabilities is good, but it's not going to perform to the same level.

You also vastly overestimate how often the majority of PC gamers upgrade their PCs.PCMR people that upgrade their CPU or GPU because it offers 5 extra FPS are a tiny niche of the market.
 

onesvenus

Member
It's done whenever the game loads. This is mostly after death or when loading in new zones (for example after teleporting somewhere). In these instances the game pushes 4 GB/s of data, which leads to near instant loading times.
That's the obvious times when it's done. Do you know that's not done anywhere else? I'm sure you don't, so I'm not sure what you are arguing about. My point was that it was being done and that it's not possible to do it in any other architecture at the moment. How often it's done is another thing entirely.
 

FireFly

Member
We've already went over this. Was UE5 machine ps5 i/o? You got a quote or sources?
[The PS5] puts a vast amount of flash memory very, very close to the processor,” says Sweeney. “So much that it really fundamentally changes the trade-offs that games can make and stream in. And that’s absolutely critical to this kind of demo,” Sweeney explained.

“This is not just a whole lot of polygons and memory. It’s also a lot of polygons being loaded every frame as you walk around through the environment and this sort of detail you don’t see in the world would absolutely not be possible at any scale without these breakthroughs that Sony’s made.”


U already answered your own question. memory utterly dumpsters I/O on the PS5, they have nothing that competes with it. UE5 demo was nothing but rooms with hidden loadings in between to dump and load data.

"It's an analogue to a computer science sort of approach of virtual memory," Karis says. "The concept is that not all of the data that you want to access needs to actually be in RAM, it can be in a much larger space where some of it is off on disk. And only when you access things does it need to bring it into memory and have that stuff be actually resident."

In other words, Unreal Engine 5 should eliminate the need for LODs (or multiple 'level of detail' versions of assets, 3D models manually made to varying degrees of complexity depending on how close the player is to the asset). Not only should it ensure that assets are always seen at maximum possible fidelity in every situation, it could save countless hours of developers' time. The tech goes far beyond backface culling (which detects which polygons are facing away from a viewer, and doesn't draw them, saving on processing power).

"It's in the form of textures," Karis explains. "It's actually like, what are the texels of that texture that are actually landing on pixels in your view? So it's in the frustum. It's stuff that you're actually seeing that's front-facing, it's stuff that's not occluded by something else. It's a very accurate algorithm
, because when you're asking for it, it's requesting it. But because it's in that sort of paradigm, that means that as soon as you request it, we need to get that data in very quickly – there needs to be a very low latency between the ask and the receive or otherwise, you're going to see really bad pop-in."

 

Kenpachii

Member
The streaming pool in that demo was 768MB
7Lhjgzt.png

Although I don't think we could count how much bandwidth was used from that. Maybe it was 768MB per frame, every two frames or every second.

In the DF DeS interview with BluePoint

They say (at around the 17 minutes mark) that they are continuously streaming 3/4 GB worth of compressed data every second.


At 3/4 GB of compressed data per second as in Demon's Souls, how fast do you think your RAM pool would get filled? You could avoid the problem of transferring data from the SSD to RAM if you had a big enough pool but I can't see that as a mandatory requirement for UE5


Everything is limited by its memory pool u got to work with.

U can stream in 3-4gb of data per second, but where does this data go? when 16gb of memory is fully used in the screen u are looking at? it can't be stored ( so its high unlikely this is happening ). u can't drop the information that is visible in the screen etc. So what u do is you reserve memory that swaps this with the main game but that will result in a drop in quality as only half of the memory most likely will be used. The consoles have isssue's with this because they only got 1 memory pool that limits this. The SSD can't replace memory it can only fill the memory up and that's about it.

So how do you avoid having loading screens on the PS5? you reserve half of the memory and load and swap data in on the fly by simple having tiny delay mechanics in the game to make this happen that allows you to break the game world up. But that will absolutely lower the quality as most of your memory as i stated a second ago will be lost. So how to you make sure that u can use all your memory and not lose the quality, u make a EU5 demo where u walk through long delay cracks, slow walks, let the engine load stuff in and out without problems while your face one way etc and there is that ( or massively simplify the data by having only the same stuff in the screen ). And if the data u stream in is of such high texture level like the EU5 demo showcased it will just kill the verity of textures on the screen like u also see because the v-ram pool is limited. This is also why high quality textures like 8k aren't particular useful on the PS5 to aim for in real games.

This is also why people complain about the demo that its not a real game which means less memory again will be available and less performance will be available when u actually start to push out tons of extra stuff that needs to be dealt with. Which makes the tech demo nothing but a exactly that a tech demo.

So how will PC deal with this scenario?

Let's say the real scenario of 10gb of v-ram will be addressed for this streaming solution as more things happen. On PC u already got higher v-ram cards that can have overhead on the GPU to deal with the swapping, this often happens. a 4gb gpu can push that cod warzone to 4gb usage max on a 1080ti the usage is 10+gb. why? faster swapping data as the memory pool is exactly that faster.

[The PS5] puts a vast amount of flash memory very, very close to the processor,” says Sweeney. “So much that it really fundamentally changes the trade-offs that games can make and stream in. And that’s absolutely critical to this kind of demo,” Sweeney explained.

“This is not just a whole lot of polygons and memory. It’s also a lot of polygons being loaded every frame as you walk around through the environment and this sort of detail you don’t see in the world would absolutely not be possible at any scale without these breakthroughs that Sony’s made.”




"It's an analogue to a computer science sort of approach of virtual memory," Karis says. "The concept is that not all of the data that you want to access needs to actually be in RAM, it can be in a much larger space where some of it is off on disk. And only when you access things does it need to bring it into memory and have that stuff be actually resident."

In other words, Unreal Engine 5 should eliminate the need for LODs (or multiple 'level of detail' versions of assets, 3D models manually made to varying degrees of complexity depending on how close the player is to the asset). Not only should it ensure that assets are always seen at maximum possible fidelity in every situation, it could save countless hours of developers' time. The tech goes far beyond backface culling (which detects which polygons are facing away from a viewer, and doesn't draw them, saving on processing power).

"It's in the form of textures," Karis explains. "It's actually like, what are the texels of that texture that are actually landing on pixels in your view? So it's in the frustum. It's stuff that you're actually seeing that's front-facing, it's stuff that's not occluded by something else. It's a very accurate algorithm
, because when you're asking for it, it's requesting it. But because it's in that sort of paradigm, that means that as soon as you request it, we need to get that data in very quickly – there needs to be a very low latency between the ask and the receive or otherwise, you're going to see really bad pop-in."


I wouldn't call SSD memory modules ms latency very low let alone that it also needs to be compressed and decompressed while we are at it which also adds time. I would call NS very low. That's the problem with those people, can they stop talking in simplistic manners and actually come to the chase when it comes to what is actually needed. Just give a example and numbers and people can work it out from there. But they never do. It's almost like they purposely don't wanna share those numbers. man i loved carmack talks back in the day dude was at least real about stuff.

Anyway even besides that, pc has memory and a lot of it that features very low latency so what's his point?

Also how would he stream data non stop into the memory and deload non stop while they are at it even in the same enviroment u sit in? that would heavily tank the v-ram pool on what u can push on the screen at all time. I guess fog the games are going to make a return.
 
Last edited:

Panajev2001a

GAF's Pleasant Genius
U can stream in 3-4gb of data per second, but where does this data go? when 16gb of memory is fully used in the screen u are looking at? it can't be stored ( so its high unlikely this is happening ). u can't drop the information that is visible in the screen etc. So what u do is you reserve memory that swaps this with the main game but that will result in a drop in quality as only half of the memory most likely will be used. The consoles have isssue's with this because they only got 1 memory pool that limits this. The SSD can't replace memory it can only fill the memory up and that's about it.
Streaming at X GB/s does not mean you move GB’s of data in and out per frame or so, the speed you can deliver uncompressed data to the unified main RAM pool determines how much to use as buffer for data you will need next (Cerny’s next Y seconds worth of data that is streamed in advance). The smaller this buffer is, after the initial load, the more RAM you can dedicate to describe the scene CPU and GPU can process for the current visible frame or the next one up.

SSD I/O speeds also determine how fast you can allow your character to move in the environment (although increasing the streaming buffer and adding some choke points in the game can help the balance between data consumers and producers to be maintained).

The PC’s that have been upgraded with enough resources can take a longer initial load to get the same quality assets plus a much much larger streaming buffer (you can buy more RAM and GPU’s with more VRAM... 32 GB of main RAM and 10+ GB of VRAM give you a lot of streaming buffer data... at a price). This works albeit, until you have a similar HW and SW stack as on consoles, you can construct highly dynamic scenarios where you cannot as easily preload data in RAM as it might depend more on user actions and wildly change based on those (to a point, surely you could build a PC with 64 GB of main RAM and 16+ GB of VRAM, but not sure how many games will target that setup and relevant it is given how few people will have such PC’s for a good long while).
 
Last edited:

FireFly

Member
I wouldn't call SSD memory modules ms latency very low let alone that it also needs to be compressed and decompressed while we are at it which also adds time. I would call NS very low. That's the problem with those people, can they stop talking in simplistic manners and actually come to the chase when it comes to what is actually needed. Just give a example and numbers and people can work it out from there. But they never do. It's almost like they purposely don't wanna share those numbers. man i loved carmack talks back in the day dude was at least real about stuff.

Anyway even besides that, pc has memory and a lot of it that features very low latency so what's his point?
His point is about the time taken to get the data from the storage device to the video memory.

"Systems integration and whole-system performance. Bringing in data from high-bandwidth storage into video memory in its native format with hardware decompression is very efficient. The software and hardware stack go to great lengths to minimize latency and maximize the bandwidth that's actually accessible by games.

Those PC numbers are theoretical and are from drive into kernel memory. From there, it's a slow and circuitous journey through software decompression to GPU driver swizzling into video memory where you can eventually use it. The PS5 path for this is several times more efficient. And then there's latency. On PC, there's a lot of layering and overhead. Then you have the issue of getting compressed textures into video memory requires reading into RAM, software decompressing, then calling into a GPU driver to transfer and swizzle them, with numerous kernel transitions throughout.

Intel's work on non-volatile NVDIMMs is very exciting and may get PC data transfer on a better track over the coming years."



The fact that this bottleneck exists is why the DirectStorage API was introduced in the first place.
 
Top Bottom