Opened 7 years ago

Closed 7 years ago

#1440 closed defect (not a bug)

glBlitFramebuffer out of memory with large volume model

Reported by: bhargav.saligram@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Volume Data Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-18.0.0-x86_64-i386-64bit
ChimeraX Version: 0.8 (2018-11-10)
Description
(Describe the actions that caused this problem to occur here)

Log:
UCSF ChimeraX version: 0.8 (2018-11-10)  
How to cite UCSF ChimeraX  

> help help:user

Developer warnings in user commands index:

  * didn't expect href to be to tools/sequenceviewer.html on line 245

  

> open 2bbv

Summary of feedback from opening 2bbv fetched from pdb  
---  
notes | Fetching compressed mmCIF 2bbv from
http://files.rcsb.org/download/2bbv.cif  
Fetching CCD CA from http://ligand-expo.rcsb.org/reports/C/CA/CA.cif  
Fetching CCD HOH from http://ligand-expo.rcsb.org/reports/H/HOH/HOH.cif  
  
2bbv title:  
The refined three-dimensional structure of an insect virus At 2.8 angstroms
resolution [more info...]  
  
Chain information for 2bbv #1  
---  
Chain | Description  
A B C | protein (black beetle virus capsid protein)  
D E F | protein (black beetle virus capsid protein)  
N | RNA (5'-R(*up*CP*up*up*ap*up*ap*up*CP*U)-3')  
  
2bbv mmCIF Assemblies  
---  
1| complete icosahedral assembly  
2| icosahedral asymmetric unit  
3| icosahedral pentamer  
4| icosahedral 23 hexamer  
5| icosahedral asymmetric unit, std point frame  
6| crystal asymmetric unit, crystal frame  
  
  

> lighting full

> style /b stick

Changed 2382 atom styles  

Expected one of 'atoms', 'bonds', 'cartoons', 'models', 'pbonds',
'pseudobonds', 'ribbons', or 'surfaces' or a keyword  

> hide /c

> show /c

> ribbon /c

> ribbon /c

> ribbon /c

> ribbon /c

> hide /c

> show /c

> hide /c

> select up

22 atoms, 24 bonds selected  

> color red

Expected a collection of one of 'All', 'atoms', 'bonds', 'cartoons',
'pseudobonds', 'ribbons', or 'surfaces' or a keyword  

> color sel red

> select clear

> surface #1

> style solvent sphere

Changed 208 atom styles  

> style ~solvent stick

Changed 7609 atom styles  

> sym #1

2bbv mmCIF Assemblies  
---  
1| complete icosahedral assembly| 60 copies of chains A-F,N  
2| icosahedral asymmetric unit| 1 copy of chains A-F,N  
3| icosahedral pentamer| 5 copies of chains A-F,N  
4| icosahedral 23 hexamer| 6 copies of chains A-F,N  
5| icosahedral asymmetric unit, std point frame| 1 copy of chains A-F,N  
6| crystal asymmetric unit, crystal frame| 5 copies of chains A-F,N  
  

> sym #1

2bbv mmCIF Assemblies  
---  
1| complete icosahedral assembly| 60 copies of chains A-F,N  
2| icosahedral asymmetric unit| 1 copy of chains A-F,N  
3| icosahedral pentamer| 5 copies of chains A-F,N  
4| icosahedral 23 hexamer| 6 copies of chains A-F,N  
5| icosahedral asymmetric unit, std point frame| 1 copy of chains A-F,N  
6| crystal asymmetric unit, crystal frame| 5 copies of chains A-F,N  
  

> select #1.9

125 atoms selected  

> ~select #1.9

Nothing selected  

> select #1.8

2406 atoms selected  

> ~select #1.8

Nothing selected  

> select #1.7

125 atoms selected  

> ~select #1.7

Nothing selected  

> select #1.6

2311 atoms selected  

> ~select #1.6

Nothing selected  

> style solvent sphere

Changed 208 atom styles  

> style ~solvent stick

Changed 7609 atom styles  

> style solvent sphere

Changed 208 atom styles  

> style ~solvent stick

Changed 7609 atom styles  

> style solvent sphere

Changed 208 atom styles  

> style ~solvent stick

Changed 7609 atom styles  

> sym #1 assembly 3 newModel false

Expected a keyword  

> view

> set bgColor white

> set silhouettes true

> measure buriedarea /a withAtoms2 /b

Buried area between /a and /b = 1900.4  
area /a = 15385, area /b = 14989, area both = 26573  

> measure buriedarea /a withAtoms2 /b

Buried area between /a and /b = 1900.4  
area /a = 15385, area /b = 14989, area both = 26573  

> measure sasa #1 & ~solvent

Solvent accessible area for #1 & ~solvent = 34093  

> measure buriedarea /a withAtoms2 /b

Buried area between /a and /b = 1900.4  
area /a = 15385, area /b = 14989, area both = 26573  

> measure sasa #1 & ~solvent

Solvent accessible area for #1 & ~solvent = 34093  

> interfaces #1 & protein

6 buried areas: C A 1675, C B 1671, B A 1663, C F 739, A D 714, B E 699  

> interfaces #1 & protein

4 buried areas: C A 743, A D 714, C F 676, B E 521  

> view

Expected a keyword  

> interfaces #1 & protein

4 buried areas: C A 743, A D 714, C F 676, B E 521  

> show

> help interfaces

/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/axes/_base.py:1647: RuntimeWarning: divide by zero
encountered in double_scalars  
Xsize = ysize / data_ratio  
Traceback (most recent call last):  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/backends/backend_qt5.py", line 519, in _draw_idle  
self.draw()  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/backends/backend_agg.py", line 437, in draw  
self.figure.draw(self.renderer)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/artist.py", line 55, in draw_wrapper  
return draw(artist, renderer, *args, **kwargs)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/figure.py", line 1493, in draw  
renderer, self, artists, self.suppressComposite)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/image.py", line 141, in _draw_list_compositing_images  
a.draw(renderer)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/artist.py", line 55, in draw_wrapper  
return draw(artist, renderer, *args, **kwargs)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/axes/_base.py", line 2574, in draw  
self.apply_aspect()  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/axes/_base.py", line 1688, in apply_aspect  
self.set_xbound((x0, x1))  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/axes/_base.py", line 3030, in set_xbound  
self.set_xlim(lower, upper, auto=None)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/axes/_base.py", line 3139, in set_xlim  
left = self._validate_converted_limits(left, self.convert_xunits)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/matplotlib/axes/_base.py", line 3068, in _validate_converted_limits  
raise ValueError("Axis limits cannot be NaN or Inf")  
ValueError: Axis limits cannot be NaN or Inf  

> interfaces #1 & protein

4 buried areas: C A 743, A D 714, C F 676, B E 521  

> help help:quickstart

> measure buriedarea /a withAtoms2 /b

Buried area between /a and /b = 553.69  
area /a = 15385, area /b = 17356, area both = 31634  

> measure sasa #1 & ~solvent

Solvent accessible area for #1 & ~solvent = 42974  

> view

> open 1080 fromDatabase emdb

Summary of feedback from opening 1080 fetched from emdb  
---  
note | Fetching compressed map 1080 from
ftp://ftp.ebi.ac.uk/pub/databases/emdb/structures/EMD-1080/map/emd_1080.map.gz  
  
Opened emd_1080.map, grid size 100,100,100, pixel 2.7, shown at level 1.67,
step 1, values float32  

> lighting full

Expected a models specifier or a keyword  

> close #1

Unknown command: bg black  

> set bgColor black

> select #2.1

2 models selected  

> ~select #2.1

Nothing selected  

> volume #1 level 0.9

No volumes specified  

No volumes specified  

> ui mousemode rightMode contour level

> volume #1 encloseVolume 1e6 step 1 color tan

No volumes specified  

No volumes specified  

> open 1080 fromDatabase emdb

Opened emd_1080.map, grid size 100,100,100, pixel 2.7, shown at level 1.67,
step 1, values float32  

> volume #1 encloseVolume 1e6 step 1 color tan

> open 1grl

Summary of feedback from opening 1grl fetched from pdb  
---  
note | Fetching compressed mmCIF 1grl from
http://files.rcsb.org/download/1grl.cif  
  
1grl title:  
The crystal structure of the bacterial chaperonin groel At 2.8 angstroms [more
info...]  
  
Chain information for 1grl #2  
---  
Chain | Description  
A B C D E F G | groel (HSP60 class)  
  
1grl mmCIF Assemblies  
---  
1| author_and_software_defined_assembly  
2| software_defined_assembly  
  
  

> ui mousemode rightMode rotate selected models

> ui mousemode rightMode rotate selected models

> hide #!1 models

> show #!1 models

> select #1

2 models selected  

> ~select #1

Nothing selected  

> select #2

29274 atoms, 29001 bonds, 441 pseudobonds, 1 model selected  

> ~select #2

Nothing selected  

> select #2.1

441 pseudobonds, 1 model selected  

> ~select #2.1

Nothing selected  

> select #2

29274 atoms, 29001 bonds, 441 pseudobonds, 1 model selected  

> ~select #2

Nothing selected  

> ui mousemode rightMode translate selected models

> ui mousemode rightMode translate selected models

> select #2.1

441 pseudobonds, 1 model selected  

> ~select #2.1

Nothing selected  

> select #2

29274 atoms, 29001 bonds, 441 pseudobonds, 1 model selected  

> ~select #2

Nothing selected  

> ui mousemode rightMode translate selected models

> ui mousemode rightMode translate selected models

> fitmap #2 inMap #1

Fit molecule 1grl (#2) to map 1080 (#1) using 29274 atoms  
average map value = 1.33, steps = 112  
shifted from previous position = 4.65  
rotated from previous position = 25.7 degrees  
atoms outside contour = 3697, contour level = 0.82501  
  
Position of 1grl (#2) relative to 1080 (#1) coordinates:  
Matrix rotation and translation  
0.90142441 -0.43280188 -0.01079658 39.36709642  
0.43293265 0.90103067 0.02670305 18.95239661  
-0.00182908 -0.02874497 0.99958510 -0.02611628  
Axis -0.06391300 -0.01033651 0.99790194  
Axis point -21.87169470 95.53589780 0.00000000  
Rotation angle (degrees) 25.70752058  
Shift along axis -2.73803247  
  

Expected a keyword  

> volume #1 transparency 0.5

> molmap #2 10

> volume #3 style mesh

> close all

> open 5199 fromDatabase emdb

Summary of feedback from opening 5199 fetched from emdb  
---  
note | Fetching compressed map 5199 from
ftp://ftp.ebi.ac.uk/pub/databases/emdb/structures/EMD-5199/map/emd_5199.map.gz  
  
Opened emd_5199.map, grid size 500,500,500, pixel 1.23, shown at level 0.18,
step 2, values float32  

> volume #1 level 0.1 step 1

An error occurred in drawing the scene. Redrawing graphics is now stopped to
avoid a continuous stream of error messages. To restart graphics use the
command "graphics restart" after changing the settings that caused the error.  
  
Traceback (most recent call last):  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/chimerax/core/updateloop.py", line 72, in draw_new_frame  
view.draw(check_for_changes = False)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/chimerax/core/graphics/view.py", line 159, in draw  
self._draw_scene(camera, drawings)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/chimerax/core/graphics/view.py", line 225, in _draw_scene  
silhouette.finish_silhouette_drawing(r)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/chimerax/core/graphics/opengl.py", line 1490, in
finish_silhouette_drawing  
cfb.copy_from_framebuffer(fb, depth=False)  
File
"/private/var/folders/1b/q5_2705s30n1qw5xbpxg98dc5fwn88/T/AppTranslocation/D49A4A2C-88B6-4B52-814F-A5EBA501D434/d/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-
packages/chimerax/core/graphics/opengl.py", line 1834, in
copy_from_framebuffer  
GL.glBlitFramebuffer(0, 0, w, h, 0, 0, w, h, what, GL.GL_NEAREST)  
File "errorchecker.pyx", line 53, in
OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError
(src/errorchecker.c:1218)  
OpenGL.error.GLError: GLError(  
err = 1285,  
description = b'out of memory',  
baseOperation = glBlitFramebuffer,  
cArguments = (  
0,  
0,  
1548,  
1380,  
0,  
0,  
1548,  
1380,  
GL_COLOR_BUFFER_BIT,  
GL_NEAREST,  
)  
)  
  




OpenGL version: 4.1 INTEL-12.0.34
OpenGL renderer: Intel Iris Pro OpenGL Engine
OpenGL vendor: Intel Inc.

Change History (2)

comment:1 by Eric Pettersen, 7 years ago

Component: UnassignedStructure Analysis
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionInterfaces: Axis limits cannot be NaN or Inf

comment:2 by Tom Goddard, 7 years ago

Component: Structure AnalysisVolume Data
Resolution: not a bug
Status: assignedclosed
Summary: Interfaces: Axis limits cannot be NaN or InfglBlitFramebuffer out of memory with large volume model

ChimeraX opened large volume data 5003, float32 values, at step 1 (0.5 Gbytes). Got an out-of-memory error in the graphics code when trying to render silhouette edges. Rendering silhouette edges does not take much memory -- memory was probably nearly full, or a surface with extremely large number of triangles was generated.

This location of for a memory error should be very rare.

Note: See TracTickets for help on using tickets.