• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

NVIDIA Responds to GTX 970 Memory Allocation 'Bug' Controversy

btarunr

Editor & Senior Moderator
Staff member
Joined
Oct 9, 2007
Messages
47,670 (7.43/day)
Location
Dublin, Ireland
System Name RBMK-1000
Processor AMD Ryzen 7 5700G
Motherboard Gigabyte B550 AORUS Elite V2
Cooling DeepCool Gammax L240 V2
Memory 2x 16GB DDR4-3200
Video Card(s) Galax RTX 4070 Ti EX
Storage Samsung 990 1TB
Display(s) BenQ 1440p 60 Hz 27-inch
Case Corsair Carbide 100R
Audio Device(s) ASUS SupremeFX S1220A
Power Supply Cooler Master MWE Gold 650W
Mouse ASUS ROG Strix Impact
Keyboard Gamdias Hermes E2
Software Windows 11 Pro
The GeForce GTX 970 memory allocation bug discovery, made towards last Friday, wrecked some NVIDIA engineers' weekends, who composed a response to what they tell is a non-issue. A bug was discovered in the way GeForce GTX 970 was allocating its 4 GB of video memory, giving some power-users the impression that the GPU isn't addressing the last 700-500 MB of its memory. NVIDIA, in its response, explained that the GPU is fully capable of addressing its 4 GB, but does so in an unusual way. Without further ado, the statement.

The GeForce GTX 970 is equipped with 4GB of dedicated graphics memory. However the 970 has a different configuration of SMs than the 980, and fewer crossbar resources to the memory system. To optimally manage memory traffic in this configuration, we segment graphics memory into a 3.5GB section and a 0.5GB section. The GPU has higher priority access to the 3.5GB section. When a game needs less than 3.5GB of video memory per draw command then it will only access the first partition, and 3rd party applications that measure memory usage will report 3.5GB of memory in use on GTX 970, but may report more for GTX 980 if there is more memory used by other commands. When a game requires more than 3.5GB of memory then we use both segments.

Continued
We understand there have been some questions about how the GTX 970 will perform when it accesses the 0.5GB memory segment. The best way to test that is to look at game performance. Compare a GTX 980 to a 970 on a game that uses less than 3.5GB. Then turn up the settings so the game needs more than 3.5GB and compare 980 and 970 performance again.

Here's an example of some performance data:

<table class="tputbl hilight" cellspacing="0" cellpadding="3">
<caption>
GTX 970 vs. GTX 980 Memory-Intensive Performance Data
</caption>
<tr>
<th scope="col">&nbsp;</th>
<th scope="col">GeForce <br />
GTX 980</th>
<th scope="col">GeForce <br />
GTX 970</th>
</tr>
<tr>
<th scope="row">Shadow of Mordor</th>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr class="alt">
<th scope="row"><3.5GB setting = 2688x1512 Very High</th>
<td align="right">72 fps</td>
<td align="right">60 fps</td>
</tr>
<tr>
<th scope="row">>3.5GB setting = 3456x1944</th>
<td align="right">55fps (-24%)</td>
<td align="right">45fps (-25%)</td>
</tr>
<tr class="alt">
<th scope="row">Battlefield 4</th>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr>
<th scope="row"><3.5GB setting = 3840x2160 2xMSAA</th>
<td align="right">36 fps</td>
<td align="right">30 fps</td>
</tr>
<tr class="alt">
<th scope="row">>3.5GB setting = 3840x2160 135% res</th>
<td align="right">19fps (-47%)</td>
<td align="right">15fps (-50%)</td>
</tr>
<tr>
<th scope="row">Call of Duty: Advanced Warfare</th>
<td align="right"></td>
<td align="right"></td>
</tr>
<tr class="alt">
<th scope="row"><3.5GB setting = 3840x2160 FSMAA T2x, Supersampling off</th>
<td align="right">82 fps</td>
<td align="right">71 fps</td>
</tr>
<tr class="alt">
<th scope="row"><3.5GB setting = >3.5GB setting = 3840x2160 FSMAA T2x, Supersampling on</th>
<td align="right">48fps (-41%)</td>
<td align="right">40fps (-44%)</td>
</tr>
</table>

On GTX 980, Shadows of Mordor drops about 24% on GTX 980 and 25% on GTX 970, a 1% difference. On Battlefield 4, the drop is 47% on GTX 980 and 50% on GTX 970, a 3% difference. On CoD: AW, the drop is 41% on GTX 980 and 44% on GTX 970, a 3% difference. As you can see, there is very little change in the performance of the GTX 970 relative to GTX 980 on these games when it is using the 0.5GB segment.

View at TechPowerUp Main Site
 
Last edited:
They really should have gone the other way around with this whole story. The 970 is still a hell of a card. If they would have said that it only has 3.5GB, it would be all fine now.
They could have just „leaked” how to enable the last 0.5GB and enthusiast would all try it and argue and debate about it on every tech forums if it’s worth it or not because of the performance hit (which is about 2-3fps?)

There would be no drama now then.
 
I don't see what the big deal is. :confused: The 970 still performs within spitting distance of the 980, for a lot less $. All of those have their panties twisted over some non-standard memory configuration need to go back and read the 970 reviews again. This discovery does not suddenly make the 970 slower than it was a month ago. Besides, if you wanted higher performance, you'd have to open up your wallet, there's no way around this, especially with GM200 on the horizon.
 
On NVIDIA's own forums NVIDIA has stated more information will be forthcoming and that this explanation was to let everyone understand 'how' the memory allocation works.
 
They really should have gone the other way around with this whole story. The 970 is still a hell of a card. If they would have said that it only has 3.5GB, it would be all fine now.
They could have just „leaked” how to enable the last 0.5GB and enthusiast would all try it and argue and debate about it on every tech forums if it’s worth it or not because of the performance hit (which is about 2-3fps?)

There would be no drama now then.

Fps is ok, u got sttuter when using all memory.
 
Fps is ok, u got sttuter when using all memory.
Yes, but it really depends on the actual scenario and the engine in question. If it's allocated as texture memory for example, most modern engines would just draw the frame without waiting for the texture to be streamed. But yes, you would get stutter if it's a frame buffer, a surface or compute memory, etc... it can be bad I agree.
 
Cranking up settings is imo not the way it should be tested, because you change conditions. Make textures occupy more memory at same resolutions...
 
Nvidia is a competent company. They're likely prioritizing latency sensitive tasks to the 3.5GB segment and keeping lower priority memory in the 0.5GB segment. I mean, their logic is solid, the only time you'll really notice any degradation is when a single frame requires MORE than the entirety of the 3.5GB segment for a single frame, because the software has to work out some extra overhead with virtual addressing.

The likelihood of any game needing more than 3.5GB for a single frame is pretty low for where most people game. Nvidia has to make some tradeoffs in their architecture to achieve their massive efficiency gains over Kepler, tying the processors addressing capabilities to SMs is one of those tradeoffs. If anything, I think it was a smart tradeoff, it's taken this long for people to even notice there was a compromise made at all.

I think at the end of the day people are going to say, well this is one hell of a card still for 95% of gamers out there, and the other 5% that want to squeeze every single performance percentage out of 4k and multimonitor setups are just gonna throw down cash on a GTX 980(s) or 290X(s).
 
Cranking up settings is imo not the way it should be tested, because you change conditions. Make textures occupy more memory at same resolutions...

How exactly do we do that?
 
How exactly do we do that?

Seriously, I agree, the graphics API and driver are handling all the memory allocations and I'm sure Nvidia is handling in such a way that this handicapped scenario is minimized. I would imagine the only way to expose it is to brute force the memory capacity as in Nvidia's examples.
 
you guys are talking like its not both the 970-980. they clearly show both suffer the same performance loss when going over 3.5gb and is as much half in the games shown.

its not fair to people that have bought 2 or more for high res and multiple monitors. what would really make everyone happy again is if they could magically make vram stack in sli.
 
Seriously, I agree, the graphics API and driver are handling all the memory allocations and I'm sure Nvidia is handling in such a way that this handicapped scenario is minimized. I would imagine the only way to expose it is to brute force the memory capacity as in Nvidia's examples.

There example of CoD doesn't mention quality. The only one that does it SoM with less than 3.5GB. CoD:AW At 4k VHQ your already suppose to be at 4GB. BF4 at 4k VHQ uses 2.3GB. Details are lacking.

CoD:AW can allocate 3.2GB of memory usage on a 980 at 1080p VHQ according to GameGPU. Testing at 1440p would have been more convincing provide they show a detail rundown. Not that they need to convince me but not being forth coming is whats got them here.
 
Last edited:
There example of CoD doesn't mention quality. The only one that does it SoM with less than 3.5GB. CoD:AW At 4k VHQ your already suppose to be at 4GB. BF4 at 4k VHQ uses 2.3GB. Details are lacking.

CoD:AW can allocate 3.2GB of memory usage on a 980 at 1080p VHQ according to GameGPU. Testing at 1440p would have been more convincing provide they show a detail rundown. Not that they need to convince me but not being forth coming is whats got them here.

I agree, more thorough testing is required, I was just mainly getting at their initial reasoning and simple example made sense to me. I think this will all blow over and people will go, "Ah, yeah, that's hardly a big deal in the big picture, GTX 970 is still a killer deal."
 
NVidia start offering price cuts or rebates on GTX 970 that should make everybody happy
 
These numbers look ok ... but my experience with a 2GB card is that FPS drops only when the game needs significantly more memory than you have . The first thing that happens is actually stuttering . Usually when I play a game that saturates the framebuffer , with say 2.1gb , fps is almost not affected ... but stutters like crazy . When I try to play a game like Shadow of Mordor in Ultra , fps plumets to the low 20 , from about 60 on high ... .
To think that I was actually waiting on a double framebuffer variant of the 970 to upgrade my 2gb 770 . The only reason I whant to upgrade is that I made the mistake of getting a 2gb card instead of 4gb one . The performance is enough for my needs , but the stuttering is not something I can live with . Some more in-depth tests would be nice , I know stuttering can be subjective , but there must be a way to test that aspect of the performance .
 
NVidia start offering price cuts or rebates on GTX 970 that should make everybody happy

More testing needs to be done before that.

If this is indeed the result of this card's problem, then no amount of price cuts or rebates can make up for it and a recall SHOULD be made for cards showing this.
 
I don't think they'll do that, because that would mean the most succesful chip would become the biggest flop...
 
The price will likely drop a bit anyway once AMD actually have a new product to sell, the current fire sale of products in a market already flooded with cheap ex-miners clearly doesn't make much difference.

The card will already be 6+ months old by then too.
 
The issue is only a big deal because it was hidden and can cause issues. The solution should have been just at the beginning to advertise the card as a 3.5gb card and the last .5gb that can cause the issues to be locked out or prioritized for basics that would have just been a nice bonus for people. When you hide a fact from people it tends to make people mad and make things bigger than they might be. Not everyone will be effected by this and many (if not most) who bought the card probably would not care when looking at the card to buy a 3.5gb card versus a 4gb card at the price point and performance shown. Its the people who bought the card specifically for tasks that use that extra .5gb (Like a 4K, surround, or some serious texture packs at high resolutions and FPS) that might see this issue come to play and might have changed their mind about the purchase.

Making this out to be no big deal is how you end up with this type of issue as a continued thing to deal with. Voicing issues and opinions is how you end up with better products that is great for everyone and drives things forward.
 
Ha! There were a lot of armchair engineers on here yapping about this and that. /rekt

Just because you can Google doesn't mean you have any idea what you are talking about.
 
Ha! There were a lot of armchair engineers on here yapping about this and that. /rekt

Just because you can Google doesn't mean you have any idea what you are talking about.

A voice of reason! :toast:
 
Back
Top