[Bug 39472] New: World of Warships 0.4.x/0.5.x client runs out of GL memory after many consecutive games

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Oct 18 13:56:16 CDT 2015


https://bugs.winehq.org/show_bug.cgi?id=39472

            Bug ID: 39472
           Summary: World of Warships 0.4.x/0.5.x client runs out of GL
                    memory after many consecutive games
           Product: Wine
           Version: 1.7.53
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: directx-d3d
          Assignee: wine-bugs at winehq.org
          Reporter: focht at gmx.net
      Distribution: ---

Hello folks,

by having a large number of consecutive games within same session, the client
will eventually run out of GL memory.
Not sure if this is a Wine bug or a bug in the game engine itself.

It doesn't matter if ARB or GLSL shader backend (default), CSMT or non-CSMT
(default) is used.
Plain Wine and Wine-Staging (for CSMT).

The leak is around 50-70 MB per game so it takes 20-30 games until it becomes
apparent.
When that happens you get strange effects due to failing GL calls.

Console output at the exact point:

--- snip ---
...
0028:err:d3d_texture:texture2d_prepare_texture >>>>>>>>>>>>>>>>>
GL_OUT_OF_MEMORY (0x505) from glTexImage2D @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/texture.c
/ 1000
0028:err:d3d_texture:wined3d_texture_bind >>>>>>>>>>>>>>>>> GL_OUT_OF_MEMORY
(0x505) from glGenTextures @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/texture.c
/ 199
0028:err:d3d_texture:texture2d_prepare_texture >>>>>>>>>>>>>>>>>
GL_OUT_OF_MEMORY (0x505) from glTexImage2D @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/texture.c
/ 1000
0028:err:d3d_surface:wined3d_surface_upload_data >>>>>>>>>>>>>>>>>
GL_INVALID_VALUE (0x501) from glTexSubImage2D @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/surface.c
/ 1732
0028:err:d3d_draw:draw_strided_fast >>>>>>>>>>>>>>>>>
GL_INVALID_FRAMEBUFFER_OPERATION (0x506) from glDrawArrays @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/drawprim.c
/ 91
005a:trace:seh:__regs_MSVCRT__setjmp3 buf=0x2cc5da20 ebx=351af2d0 esi=2f6c5150
edi=351af2a0 ebp=0ea7e928 esp=0ea7e914 eip=00d65da3 frame=0ea7ea48
0028:err:d3d_surface:surface_blt_fbo >>>>>>>>>>>>>>>>>
GL_INVALID_FRAMEBUFFER_OPERATION (0x506) from glReadBuffer() @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/surface.c
/ 1078
0028:err:d3d_draw:draw_strided_fast >>>>>>>>>>>>>>>>>
GL_INVALID_FRAMEBUFFER_OPERATION (0x506) from glDrawArrays @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/drawprim.c
/ 91
0028:err:d3d_texture:texture2d_prepare_texture >>>>>>>>>>>>>>>>>
GL_OUT_OF_MEMORY (0x505) from glTexImage2D @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/texture.c
/ 1000
0028:err:d3d_shader:shader_arb_select >>>>>>>>>>>>>>>>>
GL_INVALID_FRAMEBUFFER_OPERATION (0x506) from
glBindProgramARB(GL_FRAGMENT_PROGRAM_ARB, priv->current_fprogram_id); @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/arb_program_shader.c
/ 4692
0028:err:d3d_draw:draw_strided_fast >>>>>>>>>>>>>>>>>
GL_INVALID_FRAMEBUFFER_OPERATION (0x506) from glDrawArrays @
/home/focht/projects/wine/wine.repo/staging-src/dlls/wined3d-csmt/../wined3d/drawprim.c
/ 91
--- snip ---

I continuously monitor the GPU memory usage using 'nvidia−smi' tool from
another terminal:

--- snip ---
$ watch -n2 nvidia-smi
...

Fri Oct 16 18:26:51 2015       
+------------------------------------------------------+                       
| NVIDIA-SMI 352.41     Driver Version: 352.41         |                       
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 850M    Off  | 0000:01:00.0     Off |                  N/A |
| N/A   50C    P8    N/A /  N/A |   1385MiB /  2047MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      4151    G   /usr/libexec/Xorg                               49MiB |
|    0      4485    G   ...mes\World_of_Warships\worldofwarships.exe  1325MiB |
+-----------------------------------------------------------------------------+

--- snip ---

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list