Jump to content

Some fun with VRAM testing using GTAV! I was curious about GTAV's VRAM behavior and decided to run a few tests observing only VRAM on the extreme ends. To start, I set every option to the lowest setting or off, at 1080p, and with DirectX 11. To monitor the data, I used a combination of PerfMon, Task Manager (it wasn't needed, but it helped), and GPU-Z.

 

Here's the settings with everything at low:

20190428084442_1.thumb.jpg.35a7d1ad1ad96f0b561b3cc7d8f485e2.jpg

Spoiler

=== SETTINGS ===
Display: 1920x1080 (Windowed) @ 143Hz VSync OFF
Tessellation: 0
LodScale: 0.000000
PedLodBias: 0.200000
VehicleLodBias: 0.000000
ShadowQuality: 1
ReflectionQuality: 0
ReflectionMSAA: 0
SSAO: 0
AnisotropicFiltering: 0
MSAA: 0
MSAAFragments: 0
MSAAQuality: 0
SamplingMode: 0
TextureQuality: 0
ParticleQuality: 0
WaterQuality: 0
GrassQuality: 0
ShaderQuality: 0
Shadow_SoftShadows: 0
UltraShadows_Enabled: false
Shadow_ParticleShadows: true
Shadow_Distance: 1.000000
Shadow_LongShadows: false
Shadow_SplitZStart: 0.930000
Shadow_SplitZEnd: 0.890000
Shadow_aircraftExpWeight: 0.990000
Shadow_DisableScreenSizeCheck: false
Reflection_MipBlur: true
FXAA_Enabled: false
TXAA_Enabled: false
Lighting_FogVolumes: true
Shader_SSA: false
DX_Version: 2
CityDensity: 0.000000
PedVarietyMultiplier: 0.000000
VehicleVarietyMultiplier: 0.000000
PostFX: 0
DoF: false
HdStreamingInFlight: false
MaxLodScale: 0.000000
MotionBlurStrength: 0.000000

Note that the game guessed it would use about 1GB of VRAM. After getting towards the end of the benchmark, this happens:

gtav-low-settings-vram.thumb.png.e693180b4a8d9d22949e265b37dc750e.png

 

Weird. At the end of the benchmark GTAV was using over twice the VRAM it said it would. And it was gradually climbing over the past minute. Also note that GPU-Z was reporting an additional 900MB on top of what GTAV was really taking up (which makes sense, because a lot of other things are using VRAM)

 

The next test was to crank up only the options that actually changed the VRAM estimate:

20190428130138_1.thumb.jpg.39ce9cd08e8b0f12c14f2df7be5e5b29.jpg

Spoiler

=== SETTINGS ===
Display: 1920x1080 (Windowed) @ 143Hz VSync OFF
Tessellation: 0
LodScale: 0.000000
PedLodBias: 0.200000
VehicleLodBias: 0.000000
ShadowQuality: 3
ReflectionQuality: 3
ReflectionMSAA: 8
SSAO: 2
AnisotropicFiltering: 0
MSAA: 8
MSAAFragments: 0
MSAAQuality: 0
SamplingMode: 0
TextureQuality: 2
ParticleQuality: 0
WaterQuality: 2
GrassQuality: 0
ShaderQuality: 2
Shadow_SoftShadows: 0
UltraShadows_Enabled: true
Shadow_ParticleShadows: true
Shadow_Distance: 1.000000
Shadow_LongShadows: false
Shadow_SplitZStart: 0.930000
Shadow_SplitZEnd: 0.890000
Shadow_aircraftExpWeight: 0.990000
Shadow_DisableScreenSizeCheck: false
Reflection_MipBlur: true
FXAA_Enabled: false
TXAA_Enabled: false
Lighting_FogVolumes: true
Shader_SSA: true
DX_Version: 2
CityDensity: 0.000000
PedVarietyMultiplier: 1.000000
VehicleVarietyMultiplier: 1.000000
PostFX: 3
DoF: false
HdStreamingInFlight: false
MaxLodScale: 1.000000
MotionBlurStrength: 0.000000

The game claims it'll use about 4.17GB of VRAM. So let's see how accurate that is this time.

gtav-high-vram.thumb.png.d7ecc517237f65fef8bd04e763bad28b.png

Not bad. 190 MB over estimate, 290 MB if you include "Shared GPU memory"

 

The final test was to crank everything else to max, just to see if more effects and glourious graphics would creep up VRAM usage in a way the game couldn't account for.

Spoiler

=== SETTINGS ===
Display: 1920x1080 (Windowed) @ 143Hz VSync OFF
Tessellation: 3
LodScale: 1.000000
PedLodBias: 0.200000
VehicleLodBias: 0.000000
ShadowQuality: 3
ReflectionQuality: 3
ReflectionMSAA: 8
SSAO: 2
AnisotropicFiltering: 16
MSAA: 8
MSAAFragments: 0
MSAAQuality: 0
SamplingMode: 0
TextureQuality: 2
ParticleQuality: 2
WaterQuality: 2
GrassQuality: 3
ShaderQuality: 2
Shadow_SoftShadows: 5
UltraShadows_Enabled: true
Shadow_ParticleShadows: true
Shadow_Distance: 1.000000
Shadow_LongShadows: false
Shadow_SplitZStart: 0.930000
Shadow_SplitZEnd: 0.890000
Shadow_aircraftExpWeight: 0.990000
Shadow_DisableScreenSizeCheck: false
Reflection_MipBlur: true
FXAA_Enabled: true
TXAA_Enabled: false
Lighting_FogVolumes: true
Shader_SSA: true
DX_Version: 2
CityDensity: 1.000000
PedVarietyMultiplier: 1.000000
VehicleVarietyMultiplier: 1.000000
PostFX: 3
DoF: true
HdStreamingInFlight: false
MaxLodScale: 1.000000
MotionBlurStrength: 1.000000

Before I started the test, I noticed something weird. PerfMon was already claiming that GTAV committed nearly 2GB of VRAM. I can't explain this other than the game is anicipating something, but I didn't pay attention to this with the other tests (and I'm too lazy to go back :P)

gtav-everything-max-pre-benchmark.thumb.png.8b305672c587b69537cef42af7dbda8b.png

 

Note the VRAM estimation didn't change from 4.17GB. With that in mind, let's see how it does:

gtav-everything-max.thumb.png.6611e00792ae91c75525c2c9dce8eb20.png

Nothing changed! So those extra shiny effects really don't take up more VRAM.

 

So what's the real point here? At the moment, I don't have any. You might say that at the lower end, VRAM pressure may increase or there's a "VRAM leak" somehow. But at the same time, how do I know the OS, drivers, or firmware doesn't retain data in VRAM for the application, "just in case"?

 

Background on how I'm gathering this data:

https://linustechtips.com/main/blogs/entry/1602-process-for-gathering-video-card-data-when-analyzing-application-behavior/

  1. Chunchunmaru_

    Chunchunmaru_

    I want to test it with DXVK, even though I doubt changing the API would change VRAM usage

×