Opened 4 weeks ago
Last modified 3 weeks ago
#20322 assigned defect
ArtiaX: glTexImage3D: out of memory
| Reported by: | Owned by: | Utz Ermel | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Third Party | Version: | |
| Keywords: | Cc: | Tom Goddard | |
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description
The following bug report has been submitted:
Platform: Windows-10-10.0.26200
ChimeraX Version: 1.9 (2024-12-11 19:11:19 UTC)
Description
tried to open a tomogram with the "open tomogram" button on two different computers and the same thing happened. even when the available memory and vram was far in excess of the tomogram size. happened on a computer with multiple gpu's and CUDA_VISIBLE_DEVICES exported before starting chimerax. would love to use artiax but it is unusable as it is
Log:
UCSF ChimeraX version: 1.9 (2024-12-11)
© 2016-2024 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> artiax start
Using preset: ArtiaX / Artiax Default
Preset expands to these ChimeraX commands:
set bgColor black
lighting depthCue false
camera ortho
Opened rec_Lamella-05_ts_002.mrc as #1.1.1, grid size 1400,1401,684, pixel 10,
shown at level 1.11, step 1, values float32
> artiax clip off
> artiax tomo #1.1.1 sliceDirection 0,0,1
> artiax view xy
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.
GLError(
err = 1285,
description = b'out of memory',
baseOperation = glTexImage3D,
pyArgs = (
GL_TEXTURE_3D,
0,
GL_R32F,
1400,
1401,
684,
0,
GL_RED,
GL_FLOAT,
array([[[ 0.76493907, 0.7678929 , 0.4448681 , ..., -0.6381477 ,
-0.6928034 , -0.8056754 ],
[ 0.144...,
),
cArgs = (
GL_TEXTURE_3D,
0,
GL_R32F,
1400,
1401,
684,
0,
GL_RED,
GL_FLOAT,
array([[[ 0.76493907, 0.7678929 , 0.4448681 , ..., -0.6381477 ,
-0.6928034 , -0.8056754 ],
[ 0.144...,
),
cArguments = (
GL_TEXTURE_3D,
0,
GL_R32F,
1400,
1401,
684,
0,
GL_RED,
GL_FLOAT,
array([[[ 0.76493907, 0.7678929 , 0.4448681 , ..., -0.6381477 ,
-0.6928034 , -0.8056754 ],
[ 0.144...,
)
)
Traceback (most recent call last):
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\core\updateloop.py", line 84, in draw_new_frame
view.draw(check_for_changes = False)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\view.py", line 188, in draw
self._draw_scene(camera, drawings)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\view.py", line 259, in _draw_scene
draw_opaque(r, opaque_drawings)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\drawing.py", line 1554, in draw_opaque
_draw_multiple(drawings, renderer, Drawing.OPAQUE_DRAW_PASS)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\drawing.py", line 1567, in _draw_multiple
d.draw(renderer, draw_pass)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\map\image3d.py", line 933, in draw
drawing = self._update_view_axis(renderer)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\map\image3d.py", line 659, in _update_view_axis
pd = self._update_3d_texture_planes(view_dir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\map\image3d.py", line 711, in _update_3d_texture_planes
pd = self._texture_3d_planes()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\map\image3d.py", line 721, in _texture_3d_planes
pd = Texture3dPlanes(self)
^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\map\image3d.py", line 1548, in __init__
self._fill_textures()
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\map\image3d.py", line 1665, in _fill_textures
t.reload_texture(td, now=True)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\opengl.py", line 3204, in reload_texture
self.fill_opengl_texture()
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\opengl.py", line 3214, in fill_opengl_texture
self.initialize_texture(size, format, iformat, tdtype, ncomp, data)
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\opengl.py", line 3100, in initialize_texture
GL.glTexImage3D(gl_target, 0, iformat, size[0], size[1], size[2],
File "src\\\latebind.pyx", line 39, in
OpenGL_accelerate.latebind.LateBind.__call__
File "src\\\wrapper.pyx", line 318, in
OpenGL_accelerate.wrapper.Wrapper.__call__
File "src\\\wrapper.pyx", line 311, in
OpenGL_accelerate.wrapper.Wrapper.__call__
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\OpenGL\platform\baseplatform.py", line 415, in __call__
return self( *args, **named )
^^^^^^^^^^^^^^^^^^^^^^
File "src\\\errorchecker.pyx", line 58, in
OpenGL_accelerate.errorchecker._ErrorChecker.glCheckError
OpenGL.error.GLError: GLError(
err = 1285,
description = b'out of memory',
baseOperation = glTexImage3D,
pyArgs = (
GL_TEXTURE_3D,
0,
GL_R32F,
1400,
1401,
684,
0,
GL_RED,
GL_FLOAT,
array([[[ 0.76493907, 0.7678929 , 0.4448681 , ..., -0.6381477 ,
-0.6928034 , -0.8056754 ],
[ 0.144...,
),
cArgs = (
GL_TEXTURE_3D,
0,
GL_R32F,
1400,
1401,
684,
0,
GL_RED,
GL_FLOAT,
array([[[ 0.76493907, 0.7678929 , 0.4448681 , ..., -0.6381477 ,
-0.6928034 , -0.8056754 ],
[ 0.144...,
),
cArguments = (
GL_TEXTURE_3D,
0,
GL_R32F,
1400,
1401,
684,
0,
GL_RED,
GL_FLOAT,
array([[[ 0.76493907, 0.7678929 , 0.4448681 , ..., -0.6381477 ,
-0.6928034 , -0.8056754 ],
[ 0.144...,
)
)
Exception ignored in: <function Drawing.__del__ at 0x000001E878CAF420>
Traceback (most recent call last):
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\drawing.py", line 1217, in __del__
self.delete()
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\drawing.py", line 1237, in delete
raise RuntimeError("Don't have opengl context needed to delete texture from
drawing '%s' because drawing was never drawn" % self.name)
RuntimeError: Don't have opengl context needed to delete texture from drawing
'Image3D 3d texture planes' because drawing was never drawn
Exception ignored in: <function Texture.__del__ at 0x000001E87F731120>
Traceback (most recent call last):
File "C:\Program Files\ChimeraX 1.9\bin\Lib\site-
packages\chimerax\graphics\opengl.py", line 3165, in __del__
raise OpenGLError('OpenGL texture was not deleted before graphics.Texture
destroyed')
chimerax.graphics.opengl.OpenGLError: OpenGL texture was not deleted before
graphics.Texture destroyed
OpenGL version: 3.3.0 - Build 31.0.101.5081
OpenGL renderer: Intel(R) Iris(R) Xe Graphics
OpenGL vendor: Intel
Python: 3.11.4
Locale: en_US.cp1252
Qt version: PyQt6 6.7.1, Qt 6.7.1
Qt runtime version: 6.7.3
Qt platform: windows
Manufacturer: ASUSTeK COMPUTER INC.
Model: ASUS EXPERTBOOK B9403CVA_B9403CVA
OS: Microsoft Windows 11 Enterprise (Build 26200)
Memory: 33,952,415,744
MaxProcessMemory: 137,438,953,344
CPU: 12 13th Gen Intel(R) Core(TM) i7-1355U
OSLanguage: en-US
Installed Packages:
alabaster: 1.0.0
annotated-types: 0.7.0
anyio: 4.7.0
appdirs: 1.4.4
asttokens: 3.0.0
auditwheel: 6.1.0
autocommand: 2.2.2
babel: 2.16.0
backports.tarfile: 1.2.0
beautifulsoup4: 4.12.3
blockdiag: 3.0.0
blosc2: 3.0.0
build: 1.2.1
certifi: 2024.8.30
cftime: 1.6.4.post1
charset-normalizer: 3.4.0
ChimeraX-AddCharge: 1.5.18
ChimeraX-AddH: 2.2.6
ChimeraX-AlignmentAlgorithms: 2.0.2
ChimeraX-AlignmentHdrs: 3.5
ChimeraX-AlignmentMatrices: 2.1
ChimeraX-Alignments: 2.16.1
ChimeraX-AlphaFold: 1.0.1
ChimeraX-AltlocExplorer: 1.1.2
ChimeraX-AmberInfo: 1.0
ChimeraX-Arrays: 1.1
ChimeraX-ArtiaX: 0.6.0
ChimeraX-Atomic: 1.58.8
ChimeraX-AtomicLibrary: 14.1.11
ChimeraX-AtomSearch: 2.0.1
ChimeraX-AxesPlanes: 2.4
ChimeraX-BasicActions: 1.1.2
ChimeraX-BILD: 1.0
ChimeraX-BlastProtein: 3.0.0
ChimeraX-BondRot: 2.0.4
ChimeraX-BugReporter: 1.0.1
ChimeraX-BuildStructure: 2.13.1
ChimeraX-Bumps: 1.0
ChimeraX-BundleBuilder: 1.4.0
ChimeraX-ButtonPanel: 1.0.1
ChimeraX-CageBuilder: 1.0.1
ChimeraX-CellPack: 1.0
ChimeraX-Centroids: 1.4
ChimeraX-ChangeChains: 1.1
ChimeraX-CheckWaters: 1.4
ChimeraX-ChemGroup: 2.0.1
ChimeraX-Clashes: 2.3
ChimeraX-Clipper: 0.24.0
ChimeraX-ColorActions: 1.0.5
ChimeraX-ColorGlobe: 1.0
ChimeraX-ColorKey: 1.5.6
ChimeraX-CommandLine: 1.2.5
ChimeraX-ConnectStructure: 2.0.1
ChimeraX-Contacts: 1.0.1
ChimeraX-Core: 1.9
ChimeraX-CoreFormats: 1.2
ChimeraX-coulombic: 1.4.4
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-CrystalContacts: 1.0.1
ChimeraX-DataFormats: 1.2.3
ChimeraX-Dicom: 1.2.6
ChimeraX-DistMonitor: 1.4.2
ChimeraX-DockPrep: 1.1.3
ChimeraX-Dssp: 2.0
ChimeraX-EMDB-SFF: 1.0
ChimeraX-ESMFold: 1.0
ChimeraX-FileHistory: 1.0.1
ChimeraX-FunctionKey: 1.0.1
ChimeraX-Geometry: 1.3
ChimeraX-gltf: 1.0
ChimeraX-Graphics: 1.4.1
ChimeraX-Hbonds: 2.5
ChimeraX-Help: 1.3
ChimeraX-HKCage: 1.3
ChimeraX-IHM: 1.1
ChimeraX-ImageFormats: 1.2
ChimeraX-IMOD: 1.0
ChimeraX-IO: 1.0.3
ChimeraX-ISOLDE: 1.9
ChimeraX-ItemsInspection: 1.0.1
ChimeraX-IUPAC: 1.0
ChimeraX-KVFinder: 1.2.1
ChimeraX-Label: 1.1.14
ChimeraX-ListInfo: 1.2.2
ChimeraX-Log: 1.2
ChimeraX-LookingGlass: 1.1
ChimeraX-Maestro: 1.9.1
ChimeraX-Map: 1.3
ChimeraX-MapData: 2.0
ChimeraX-MapEraser: 1.0.1
ChimeraX-MapFilter: 2.0.1
ChimeraX-MapFit: 2.0
ChimeraX-MapSeries: 2.1.1
ChimeraX-Markers: 1.0.1
ChimeraX-Mask: 1.0.2
ChimeraX-MatchMaker: 2.1.6
ChimeraX-MCopy: 1.0
ChimeraX-MDcrds: 2.7.2
ChimeraX-MedicalToolbar: 1.1
ChimeraX-Meeting: 1.0.1
ChimeraX-MLP: 1.1.1
ChimeraX-mmCIF: 2.14.2
ChimeraX-MMTF: 2.2
ChimeraX-ModelArchive: 1.0
ChimeraX-Modeller: 1.5.18
ChimeraX-ModelPanel: 1.5
ChimeraX-ModelSeries: 1.0.1
ChimeraX-Mol2: 2.0.3
ChimeraX-Mole: 1.0
ChimeraX-Morph: 1.0.2
ChimeraX-MouseModes: 1.2
ChimeraX-Movie: 1.0
ChimeraX-MutationScores: 1.0
ChimeraX-Neuron: 1.0
ChimeraX-Nifti: 1.2
ChimeraX-NMRSTAR: 1.0.2
ChimeraX-NRRD: 1.2
ChimeraX-Nucleotides: 2.0.3
ChimeraX-OpenCommand: 1.14
ChimeraX-OrthoPick: 1.0.1
ChimeraX-PDB: 2.7.6
ChimeraX-PDBBio: 1.0.1
ChimeraX-PDBLibrary: 1.0.4
ChimeraX-PDBMatrices: 1.0
ChimeraX-PickBlobs: 1.0.1
ChimeraX-Positions: 1.0
ChimeraX-PresetMgr: 1.1.2
ChimeraX-PubChem: 2.2
ChimeraX-ReadPbonds: 1.0.1
ChimeraX-Registration: 1.1.2
ChimeraX-RemoteControl: 1.0
ChimeraX-RenderByAttr: 1.6.2
ChimeraX-RenumberResidues: 1.1
ChimeraX-ResidueFit: 1.0.1
ChimeraX-RestServer: 1.3.1
ChimeraX-RNALayout: 1.0
ChimeraX-RotamerLibMgr: 4.0
ChimeraX-RotamerLibsDunbrack: 2.0
ChimeraX-RotamerLibsDynameomics: 2.0
ChimeraX-RotamerLibsRichardson: 2.0
ChimeraX-SaveCommand: 1.5.1
ChimeraX-SchemeMgr: 1.0
ChimeraX-SDF: 2.0.2
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0.1
ChimeraX-Segmentations: 3.5.6
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.14
ChimeraX-Shape: 1.0.1
ChimeraX-Shell: 1.0.1
ChimeraX-Shortcuts: 1.2.0
ChimeraX-ShowSequences: 1.0.3
ChimeraX-SideView: 1.0.1
ChimeraX-SimilarStructures: 1.0.1
ChimeraX-Smiles: 2.1.2
ChimeraX-SmoothLines: 1.0
ChimeraX-SpaceNavigator: 1.0
ChimeraX-StdCommands: 1.18.1
ChimeraX-STL: 1.0.1
ChimeraX-Storm: 1.0
ChimeraX-StructMeasure: 1.2.1
ChimeraX-Struts: 1.0.1
ChimeraX-Surface: 1.0.1
ChimeraX-SwapAA: 2.0.1
ChimeraX-SwapRes: 2.5
ChimeraX-TapeMeasure: 1.0
ChimeraX-TaskManager: 1.0
ChimeraX-Test: 1.0
ChimeraX-Toolbar: 1.2.3
ChimeraX-ToolshedUtils: 1.2.4
ChimeraX-Topography: 1.0
ChimeraX-ToQuest: 1.0
ChimeraX-Tug: 1.0.1
ChimeraX-UI: 1.41
ChimeraX-Umap: 1.0
ChimeraX-uniprot: 2.3.1
ChimeraX-UnitCell: 1.0.1
ChimeraX-ViewDockX: 1.4.4
ChimeraX-VIPERdb: 1.0
ChimeraX-Vive: 1.1
ChimeraX-VolumeMenu: 1.0.1
ChimeraX-vrml: 1.0
ChimeraX-VTK: 1.0
ChimeraX-WavefrontOBJ: 1.0
ChimeraX-WebCam: 1.0.2
ChimeraX-WebServices: 1.1.4
ChimeraX-Zone: 1.0.1
colorama: 0.4.6
comm: 0.2.2
comtypes: 1.4.5
contourpy: 1.3.1
cxservices: 1.2.3
cycler: 0.12.1
Cython: 3.0.10
debugpy: 1.8.9
decorator: 5.1.1
docutils: 0.21.2
executing: 2.1.0
filelock: 3.15.4
fonttools: 4.55.3
funcparserlib: 2.0.0a0
geomdl: 5.4.0
glfw: 2.8.0
grako: 3.16.5
h11: 0.14.0
h5py: 3.12.1
html2text: 2024.2.26
httpcore: 1.0.7
httpx: 0.28.1
idna: 3.10
ihm: 1.3
imagecodecs: 2024.6.1
imagesize: 1.4.1
importlib_metadata: 8.0.0
importlib_resources: 6.4.0
inflect: 7.3.1
ipykernel: 6.29.5
ipython: 8.26.0
ipywidgets: 8.1.5
jaraco.context: 5.3.0
jaraco.functools: 4.0.1
jaraco.text: 3.12.1
jedi: 0.19.1
Jinja2: 3.1.4
jupyter_client: 8.6.2
jupyter_core: 5.7.2
jupyterlab_widgets: 3.0.13
kiwisolver: 1.4.7
line_profiler: 4.1.3
lxml: 5.2.2
lz4: 4.3.3
MarkupSafe: 3.0.2
matplotlib: 3.9.2
matplotlib-inline: 0.1.7
more-itertools: 10.3.0
msgpack: 1.0.8
ndindex: 1.9.2
nest-asyncio: 1.6.0
netCDF4: 1.6.5
networkx: 3.3
nibabel: 5.2.0
nptyping: 2.5.0
numexpr: 2.10.2
numpy: 1.26.4
openvr: 1.26.701
ordered-set: 4.1.0
packaging: 23.2
packaging: 24.1
pandas: 2.3.2
ParmEd: 4.2.2
parso: 0.8.4
pep517: 0.13.1
pillow: 10.4.0
pip: 24.2
pkginfo: 1.11.1
platformdirs: 4.3.6
platformdirs: 4.2.2
prompt_toolkit: 3.0.48
psutil: 6.0.0
pure_eval: 0.2.3
py-cpuinfo: 9.0.0
pyarrow: 21.0.0
pycollada: 0.8
pydantic: 2.11.7
pydantic_core: 2.33.2
pydicom: 2.4.4
pyelftools: 0.31
Pygments: 2.18.0
pynmrstar: 3.3.4
pynrrd: 1.0.0
PyOpenGL: 3.1.7
PyOpenGL-accelerate: 3.1.7
pyopenxr: 1.0.3401
pyparsing: 3.2.0
pyproject_hooks: 1.2.0
PyQt6-commercial: 6.7.1
PyQt6-Qt6: 6.7.3
PyQt6-WebEngine-commercial: 6.7.0
PyQt6-WebEngine-Qt6: 6.7.3
PyQt6-WebEngineSubwheel-Qt6: 6.7.3
PyQt6_sip: 13.8.0
python-dateutil: 2.9.0.post0
pytz: 2024.2
pywin32: 306
pyzmq: 26.2.0
qtconsole: 5.5.2
QtPy: 2.4.2
qtshim: 1.0
RandomWords: 0.4.0
requests: 2.32.3
scipy: 1.14.0
setuptools: 72.1.0
sfftk-rw: 0.8.1
six: 1.16.0
sniffio: 1.3.1
snowballstemmer: 2.2.0
sortedcontainers: 2.4.0
soupsieve: 2.6
Sphinx: 8.0.2
sphinx-autodoc-typehints: 2.2.3
sphinxcontrib-applehelp: 2.0.0
sphinxcontrib-blockdiag: 3.0.0
sphinxcontrib-devhelp: 2.0.0
sphinxcontrib-htmlhelp: 2.1.0
sphinxcontrib-jsmath: 1.0.1
sphinxcontrib-qthelp: 2.0.0
sphinxcontrib-serializinghtml: 2.0.0
stack-data: 0.6.3
starfile: 0.5.13
superqt: 0.6.3
tables: 3.10.1
tcia_utils: 1.5.1
tifffile: 2024.7.24
tinyarray: 1.2.4
tomli: 2.0.1
tornado: 6.4.2
traitlets: 5.14.3
typeguard: 4.3.0
typing-inspection: 0.4.1
typing_extensions: 4.12.2
typing_extensions: 4.12.2
tzdata: 2024.2
urllib3: 2.2.3
wcwidth: 0.2.13
webcolors: 24.6.0
wheel: 0.43.0
wheel: 0.43.0
wheel-filename: 1.4.1
widgetsnbextension: 4.0.13
WMI: 1.5.1
zipp: 3.19.2
Change History (2)
comment:1 by , 3 weeks ago
| Cc: | added |
|---|---|
| Component: | Unassigned → Third Party |
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → ArtiaX: glTexImage3D: out of memory |
comment:2 by , 3 weeks ago
Note:
See TracTickets
for help on using tickets.
This ChimeraX error is from trying to display a tomogram of size 1400,1401,684 and your computer's OpenGL graphics driver (Intel graphics) says that is too large. The ArtiaX tool is trying to show the volume at full resolution. If you show it at step 2 it would probably work fine. You could change the step size to 2 "volume step 2" to show every other grid point of the volume, then use the "graphics restart" ChimeraX command to recover from the error.