VRAM - Metal Gear Solid 2
#1
Hi there, these days I've been trying to emulate MGS2: Substance and have run into some horrible FPS drops for no reason. I'm pretty sure it isn't my CPU, it never goes above 40% usage, RAM is also not a problem (16GB), and GPU also doesn't seem to be the problem as it never goes above 60% usage.
While in-game, EE usually sits around 30% and GS at 50%, VU never goes above 30%. The slowdowns seem to be caused by having too many objects in view, and they happen both during real time cutscenes and while playing. At least I think that's the cause, when I change the camera to first person, it goes back to full speed, in the battle with Olga, slowdowns ocorred when I was in the middle of the scene (more objects in view), inside the tanker during the speech framerate dropped severely when looking at all those soldiers.

As everything seemed fine, I decided to check on VRAM, and that's when I noticed that FPS drop starts occurring when VRAM hits 900Mb and above, which is rather strange, because I have a 3GB of VRAM.

What's even weirder is that resolution seems to have no effect at all, running at native or at 1080P has no impact on performance, neither does FXAA, FX shader, texture filtering, 8-bit textures, MXAA, using Direct3D 11, 9 or openGL, speedhacks, frameskipping, nothing!

I seriously don't get what the problem is, I've played MGS3 at full speed with no problem (except for some cutscenes, but even then FPS never dropped below 45) without any speedhacks, and I thought that MGS3 was supposed to be more demanding than MGS2.

Is there a limit to how much VRAM can PCSX2 use?

Oh, and for the record, I know there is a PC version of MGS2, but not only does it look better on PCSX2, but I can also use my DS4 (rumble FTW). I'm also using the latest version of PCSX2 and latest GPU drivers.

Btw, I'm using gsdx32-avx-r5875, and since my CPU supports all of them (SSE3,SSE4.2 etc...), does it even make a difference which one I choose?

Also, if there is no immediate solution for the problem, should I try to get the PAL version of the game? If so, is it legal to download the same game from a different region? It's not like it's piracy since I own the game.

Specs:
Intel Core i7 4820K @ 3.7Ghz
16GB 1800Mhz (Quad-channel)
Sapphire Radeon 7970 OC Edition
Windows 7 64bit (installed on a SSD)
Reply

Sponsored links

#2
(04-30-2014, 03:38 AM)Chi Wrote: Also, if there is no immediate solution for the problem, should I try to get the PAL version of the game? If so, is it legal to download the same game from a different region? It's not like it's piracy since I own the game.

It is piracy to download a PS2 game according to UK law, where this forum currently resides, so don't even think about it or you'll lose support Tongue
Reply
#3
(04-30-2014, 03:38 AM)Chi Wrote: Also, if there is no immediate solution for the problem, should I try to get the PAL version of the game? If so, is it legal to download the same game from a different region? It's not like it's piracy since I own the game.

Specs:
Intel Core i7 4820K @ 3.7Ghz
16GB 1800Mhz (Quad-channel)
Sapphire Radeon 7970 OC Edition
Windows 7 64bit (installed on a SSD)
Use the Pal version of the game not will provide more speed.
Reply
#4
The relation between VRAM and FPS drops is not direct. I assume this is a CPU bottleneck that shows up when many objects are in view (which then need a lot of in-flight texture memory).
Try the MTVU speedhack (no EE / VU cycle hacks please) and closely watch if the FPS improve. You might want to use savestates for this to get reproducible results.
Reply
#5
(04-30-2014, 09:12 AM)rama Wrote: The relation between VRAM and FPS drops is not direct. I assume this is a CPU bottleneck that shows up when many objects are in view (which then need a lot of in-flight texture memory).
Try the MTVU speedhack (no EE / VU cycle hacks please) and closely watch if the FPS improve. You might want to use savestates for this to get reproducible results.

Interesting, I tried playing those scenes that have heavy slowdowns and disabling the MTVU speedhack improved them by +/- 5 FPS, which is already a 8% increase in speed.
And indeed, it looks like my CPU Core nº1 runs at 80% during these scenes, while the second and third cores sit at 0%. But it's not consistent, sometimes the third core will sit at 0% while nº1,2 and 4 are working at around 50%. GS is always around 80%-90% during slowdowns.
I used no EE and VU speedhacks, used savestates and tried it out in different areas.
Anyway, any idea why the MTVU hack would actually cause some FPS drop?

(04-30-2014, 05:38 AM)DESTRUIDOR Wrote: Use the Pal version of the game not will provide more speed.
Hm, I don't know if that is true. In certain areas I get around 45FPS. That is a 15FPS decrease, a 25% decrease in speed, but if this was a PAL game it would be only represent a 5FPS decrease, which is just a 16% decrease is speed. Which means that in these particular areas, a PAL game would run 9% faster -> assuming that I would also get the same FPS drop in the PAL version.
Reply
#6
(04-30-2014, 09:15 PM)Chi Wrote: Hm, I don't know if that is true. In certain areas I get around 45FPS. That is a 15FPS decrease, a 25% decrease in speed, but if this was a PAL game it would be only represent a 5FPS decrease, which is just a 16% decrease is speed. Which means that in these particular areas, a PAL game would run 9% faster -> assuming that I would also get the same FPS drop in the PAL version.
nope.
you would get 35 fps instead of 45 for NTSC. Hence the same slowdown feeling.
anyways, there's no way you can download it legally, even if you own the NTSC version. Or that would mean because you own the US version, you can go steal a UK version in a shop when you go to London for holidays Tongue2
CPU : AMD Ryzen 7 3800X
Mobo : Asus PRIME B450-PLUS
GPU : NVIDIA GeForce RTX 3070
RAM : 16 Go
Reply
#7
(04-30-2014, 03:38 AM)Chi Wrote: I seriously don't get what the problem is, I've played MGS3 at full speed with no problem (except for some cutscenes, but even then FPS never dropped below 45) without any speedhacks, and I thought that MGS3 was supposed to be more demanding than MGS2.

Thats true for the CPU but not for the GPU. MGS3 has basically all post-processing effects removed due to incompatibility making it way less GPU dependent than MGS2.

I dont think VRAM size is a problem either but more the bandwith. MGS2 uses a lot of special effects that are not rellay big in size but are rendered many times (like the rain in the tanker chapter) and require a lot of bandwith.

Try enabling "Allow 8-Bit Textures" under GSdx settings and reduce the resolution to to 2x Native. This should give a good speedup but constant 60 FPS with 3x Native or higher resolutions is almost impossible with this game.
Reply
#8
(04-30-2014, 10:43 PM)Grove4L Wrote: Thats true for the CPU but not for the GPU. MGS3 has basically all post-processing effects removed due to incompatibility making it way less GPU dependent than MGS2.

I dont think VRAM size is a problem either but more the bandwith. MGS2 uses a lot of special effects that are not rellay big in size but are rendered many times (like the rain in the tanker chapter) and require a lot of bandwith.

Try enabling "Allow 8-Bit Textures" under GSdx settings and reduce the resolution to to 2x Native. This should give a good speedup but constant 60 FPS with 3x Native or higher resolutions is almost impossible with this game.

Already tried the Allow 8-Bit Textures and native resolution, no effect.
I'm with rama here, it's probably CPU, but it looks like PCSX2 isn't using my CPU to the maximum. PCSX2, as an amazing piece of software as it is, still has lots of room for improvement. But hey, with each new version I notice amazing increases in performance. Keep up the good work!

BTW, just out of curiosity, do you devs had to reverse engineer the custom ICs on the PS2?
Reply
#9
PCSX2 uses the CPU as best as it can. You will never see 100% utilization because we sleep off cycles where we simply have to wait.
Whenever there's synchronization going on, data is still getting moved, the GPU not done drawing, we sleep the CPU instead of
aggressively doing nothing. This conserves power and generates less heat but it has the tiny detail that task manager reports these
idle cycles and people think PCSX2 is not using it all Smile
Reply
#10
(05-01-2014, 09:13 AM)rama Wrote: PCSX2 uses the CPU as best as it can. You will never see 100% utilization because we sleep off cycles where we simply have to wait.
Whenever there's synchronization going on, data is still getting moved, the GPU not done drawing, we sleep the CPU instead of
aggressively doing nothing. This conserves power and generates less heat but it has the tiny detail that task manager reports these
idle cycles and people think PCSX2 is not using it all Smile

Ah, neat trick. Already did something similar in the past (I'm an EE student).
Reply




Users browsing this thread: 1 Guest(s)