Page MenuHome

Arbitrary crashes showing "Not enough Video Memory.Error: EXCEPTION_ACCESS_VIOLATION"
Open, NormalPublic

Description

System Information
Operating system: Windows 10
Graphics card: AMD FirePro W4100

Blender Version
2.80, 0f5b53ba4dc, blender2.8, 2018-11-30 22:29

Short description of error
Arbitrary crashes every few seconds/minutes showing "Not enough Video Memory.Error: EXCEPTION_ACCESS_VIOLATION" where there should be enough, actually.

Exact steps for others to reproduce the error
Blender crashes when switching through the main menu tabs like Shading, Animation, Rendering and so on. The crash seems non deterministic. After opening Blender I can switch from Animation to something else and back twice or three times and the fourth time it crashes. But it's not hard to reproduce: It crashes within seconds or a minute at max when just working normally with Blender. Without doing anything in the UI it keeps working indefinitely.

The exact error message is:

GPUTexture: texture alloc failed. Not enough Video Memory.Error : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF70B82C6A1
Module : C:\Program Files\Blender Foundation\blender.exe

I have a 4k screen attached (only one!) with 10bit color depth and the card has 2Gigs of RAM - I think that should be sufficient or at least blender should not just crash.

Still I tried something else - I guess it's completely irrelevant but just to have it documented: I know that another software (Lightroom) has known issues with this graphic card when using 2D hardware accelleration in combination with the graphic drivers vertical sync configuration so I tried all available settings but it did not affect the crashing behaviour at all (as expected)

Details

Type
Bug

Event Timeline

Sebastian Parborg (zeddb) triaged this task as Incomplete priority.Fri, Dec 7, 12:30 PM

Before I assign this to the maintainer of the graphics system in blender, I would like us to try out a few things first.

  1. Update to a newer blender beta version. As you can see, your build is a few days old at this point: https://builder.blender.org/download/
  2. Update your GPU drivers (if possible) https://www.amd.com/en/support/professional-graphics/firepro/firepro-wx100-series/firepro-w4100
  3. If none of these help, I'll assign this to the maintainer.

Hi Sebastian,

thanks for your answer. I've upgraded to the newest versions of both Blender (now at 2018-12-07 13:17 Hash: c1f6ecdfabf) and the FirePro-Drivers (now at 18.Q4-Nov5).

Unfortunately the behaviour did not change - it still crashes every few clicks.

Thanks - Max

Sebastian Parborg (zeddb) raised the priority of this task from Incomplete to Normal.Fri, Dec 7, 7:14 PM

Can you run blender with --debug-gpu and perhaps try if --debug-gpu-force-workarounds fixes this?

Hi! Thanks for the suggestion - unfortunately it did not. Here are the outpouts with both options. First wirth --debug-gpu-force-workarounds:

"C:\Program Files\Blender Foundation\blender.exe" --debug-gpu-force-workarounds
Read prefs: C:\Users\Maxi\AppData\Roaming\Blender Foundation\Blender\2.80\config\userpref.blend
AL lib: (EE) UpdateDeviceParams: Failed to set 48000hz, got 96000hz instead

GPU: Bypassing workaround detection.
GPU: OpenGL indentification strings
GPU: vendor: ATI Technologies Inc.
GPU: renderer: AMD FirePro W4100
GPU: version: 4.5.13542 Core Profile Context FireGL 24.20.13026.0

found bundled python: C:\Program Files\Blender Foundation\2.80\python
GPUTexture: texture alloc failed. Not enough Video Memory.Error : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF724B2BD61
Module : C:\Program Files\Blender Foundation\blender.exe

And here with --debug-gpu (only the bottom part of the messages)

Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
GL API deprecated behavior: glLineWidth uses wide lines (parameter <width> with value '0x0') which are deprecated and do not work outside of the compatibility context
GL API deprecated behavior: glLineWidth uses wide lines (parameter <width> with value '0x0') which are deprecated and do not work outside of the compatibility context
GL API deprecated behavior: glLineWidth uses wide lines (parameter <width> with value '0x0') which are deprecated and do not work outside of the compatibility context
GL API deprecated behavior: glLineWidth uses wide lines (parameter <width> with value '0x0') which are deprecated and do not work outside of the compatibility context
Warning: Pass : s, Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
Warning: Pass : , Uniform 'grid_block' not found!
GL API performance: glDrawRangeElements uses element index type 'GL_UNSIGNED_BYTE' that is not optimal for the current hardware configuration; consider using 'GL_UNSIGNED_SHORT' instead
GL API performance: glDrawRangeElements uses element index type 'GL_UNSIGNED_BYTE' that is not optimal for the current hardware configuration; consider using 'GL_UNSIGNED_SHORT' instead
GL API deprecated behavior: glLineWidth uses wide lines (parameter <width> with value '0x0') which are deprecated and do not work outside of the compatibility context
GL API performance: glDrawRangeElements uses element index type 'GL_UNSIGNED_BYTE' that is not optimal for the current hardware configuration; consider using 'GL_UNSIGNED_SHORT' instead
GL API performance: glDrawRangeElements uses element index type 'GL_UNSIGNED_BYTE' that is not optimal for the current hardware configuration; consider using 'GL_UNSIGNED_SHORT' instead
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : d, Uniform 'viewportSize' not found!
Warning: Pass : d, Uniform 'edgeScale' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : `£>ª8e?, Uniform 'object_id' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'viewportSize' not found!
Warning: Pass : [[[纺º ººº ººº ººº ººº ººº ººº ººº l‗E», Uniform 'edgeScale' not found!
GL API deprecated behavior: glLineWidth uses wide lines (parameter <width> with value '0x0') which are deprecated and do not work outside of the compatibility context
GPUTexture: texture alloc failed. Not enough Video Memory.Error : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF724B50DE2
Module : C:\Program Files\Blender Foundation\blender.exe

I made some changes to the GPU module to track down the issue.

The GPencil is currently doing something really silly and basically is responsible of 4/5th of the memory usage (if you are in solid mode).

A full screen viewport here is 723MB of vram (2560p) so I can't imagine what it is on a 4K screen.

The new build will output what texture causes the crash and what is the current texture memory consumption (it is not very good indicator as it misses a lot of other textures, it only account for internal texture uses, not user textures). Also memory can fragment but the driver shouldn't be this dumb.

Hi Clément, thanks for the improvement. I have only the default box in the viewport - no scene imported or edited... Now the outpout looks like:

Info: Total files 0 | Changed 0 | Failed 0
Info: Copied selected objects to buffer

GPUTexture: create : TEXTURE_2D, RGBA8, w : 3174, h : 1981, d : 0, comp : 4, size : 23.99 MiB
GPUTexture: texture alloc failed. Likely not enough Video Memory.
Current texture memory usage : 23.99 MiB.
Error : EXCEPTION_ACCESS_VIOLATION
Address : 0x00007FF7598BCB31
Module : C:\Program Files\Blender Foundation\blender.exe