Rpcs3: Heavenly Sword [BCES00078] & Resistance: Fall of Man [BCES00001] Out of video memory (VRAM) Problem

Created on 23 Jul 2019  路  19Comments  路  Source: RPCS3/rpcs3

RPCS3 v0.0.6-8411-85b1152e Alpha
Heavenly Sword [BCES00078] & Resistance: Fall of Man [BCES00001]
Out of video memory (VRAM) Problem, happens with Vulkan but works with opengl at 4k.
Using lower resolution or strict rendering will prevent the crashes as long vram is not filled up. Tested on 1080 ti & 2700X AMD with 16 gb ram.

RPCS3.log.gz

Bug RSX

Most helpful comment

I wasn't being facetious, it really does work and shows the crash very well within a few seconds. During a bug fixing investigations, it is likely to attempt reloading the scenario dozens of times, so getting crashes quickly is a good thing.

All 19 comments

Very likely fixed by https://github.com/RPCS3/rpcs3/pull/6376. Retest with the PR build.

Sadly, it didnt fix it though. Still some overflow problems.
RPCS3.log.heavenly sword.gz
RPCS3.log.fallofmen.zip

Try the DMA pull request then.

The problems still persits with the dma pr.
RPCS3.log.fallofman.dma.gz
RPCS3.log.heavenly sword.dma.zip

Tbf you are using 500% scaling which gives an effective resolution around 6400x3600 making the display output buffer alone be around 90MB and common rgba16 targets coming in at around 180MB a piece. A single shadow map would be almost half a gigabyte at that stage.
While the memory manager can be made a lot more aggressive to avoid this, the huge memory requirement is kinda expected.

well not happening on resistance 1, but still happen on heavenly sword.
I monitored vram used with afterburner, game use less than 2gb then when a kind of cinematic start up, Vram get instantly above 8gb
i had resolution scale to 200% through
but i re tested after that, with 100% res scale, i pass the PiP cinematic, but i have go from 1.5gb Vram to 7.5gb Vram instantly, and the Vram didn't free up memory after cinematic, (instead to going back to 1.5gb after cinematic, it stay at 7.5gb)
MSI Afterburner  03_03_2020 09_48_45

it happen less on 100% scale, but since every PiP cinematic, memory is not free up, little by little Vram grown, and end up crashing

@kd-11 seem like it didn't fix it , i made a video hoping it could help
normal cinematic don't increase Vram, only PiP(picture in picture) cinematics, and memory arn't freeup after
happen at 0:14 then 19:15 then at 20:55 Vram going crazy
https://www.youtube.com/watch?v=Jlqs5ABHZFc&feature=youtu.be

Definitely more severe than expected, not sure what would trigger that behaviour. Check if using 'force cpu blit' debug option coupled with write color buffers option fixes the problem.

still the same

@kd-11 i made a video where we can see more clearly
at 0:29 the "PiP" cinematic start, Vram jump high
at 0:37 the "PiP" cinematic stop, Vram stay high

when an other PiP cinematic start, Vram got high again without freeing memory at the end of the PiP.
it goes like that until the Vram got saturated, then crash with out of Vram error

i know you may be busy fixing more important stuff, but i just wanted to explain it to be more clear to understand
https://www.youtube.com/watch?v=OIursK9FGZg

@kd-11 the bug is still there, but i now have an error on the log exactely when the PiP cinematic start and bug begin

E {RSX [0x013c4bc]} RSX: Blit request denied because the destination region does not fit! E {RSX [0x083bcac]} RSX: Blit request denied because the destination region does not fit! E {RSX [0x083b684]} RSX: Blit request denied because the destination region does not fit! E {RSX [0x014ab64]} RSX: Blit request denied because the destination region does not fit! E {RSX [0x07dd944]} RSX: Blit request denied because the source region does not fit! E {RSX [0x07df744]} RSX: Blit request denied because the source region does not fit! E {RSX [0x00ed59c]} RSX: Blit request denied because the source region does not fit! E {RSX [0x07f2a90]} RSX: Blit request denied because the source region does not fit! E {RSX [0x00f4a74]} RSX: Blit request denied because the source region does not fit! E {RSX [0x07e5fb4]} RSX: Blit request denied because the source region does not fit!

I'm going to need saves for this one.

BCES00078-GAMEAUTOSAVE.zip
here my savefile

RPCS3.log
i send you most recent log also

Thanks, instant crash, very helpful.

well my save work on both custom config and default config, i don't know much why it not working, maybe because i updated the game ?

I wasn't being facetious, it really does work and shows the crash very well within a few seconds. During a bug fixing investigations, it is likely to attempt reloading the scenario dozens of times, so getting crashes quickly is a good thing.

Fixed by https://github.com/RPCS3/rpcs3/pull/8309.
The game still generates an absurd amount of images per frame so you still need decent VRAM. 720p for example consumes 3GB of VRAM during the PiP sections. The memory isn't leaked though, we're releasing the data, just not fast enough to offset the demands. After the cutscene is over, equilibrium is restored and the allocation does go down significantly to around 1.2GB. I could in theory make the allocation threshold used to detect overallocation dynamic, but it should work just fine as it is right now. There is a balancing act between being aggressive with cleanup and keeping performance good which is why I'm allowing VRAM to grow to 3GB at 720p.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

XeClutch picture XeClutch  路  3Comments

uaqlover picture uaqlover  路  3Comments

xddxd picture xddxd  路  3Comments

LokiGrants picture LokiGrants  路  3Comments

Luffykun007 picture Luffykun007  路  3Comments