Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#4868 closed defect (can't reproduce)

Crash calculating surface geometry

Reported by: vdvornyk@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Surface Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Windows-10-10.0.19041
ChimeraX Version: 1.2.5 (2021-05-24 04:13:57 UTC)
Description
Last time you used ChimeraX it crashed.
Please describe steps that led to the crash here.
Windows fatal exception: access violation

Thread 0x000027a8 (most recent call first):
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\atomic\molc.py", line 196 in get_prop
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\atomic\molsurf.py", line 232 in calculate_surface_geometry
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\surface\surfacecmds.py", line 195 in _calculate_surface
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\core\threadq.py", line 31 in run
  File "C:\Program Files\ChimeraX 1.2Windows fatal exception: .access violation5

\bin\lib\threading.py", line 932 in _bootstrap_inner
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\threading.py", line 890 in _bootstrap

Current thread 0x00003f30 (most recent call first):
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\surface\surfacecmds.py", line 195 in _calculate_surface
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\core\threadq.py", line 31 in run
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\threading.py", line 932 in _bootstrap_inner
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\threading.py", line 890 in _bootstrap

Thread 0x00002dd8 (most recent call first):
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\threading.py", line 302 in wait
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\queue.py", line 89 in join
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\core\threadq.py", line 64 in apply_to_list
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\surface\surfacecmds.py", line 162 in surface
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\std_commands\show.py", line 154 in show_surfaces
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\std_commands\show.py", line 47 in show
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\core\commands\cli.py", line 2852 in run
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\cmd_line\tool.py", line 280 in execute
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\cmd_line\tool.py", line 117 in keyPressEvent
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\ui\gui.py", line 293 in event_loop
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\ChimeraX_main.py", line 866 in init
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\ChimeraX_main.py", line 1015 in 
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\runpy.py", line 87 in _run_code
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\runpy.py", line 194 in _run_module_as_main


Log:
UCSF ChimeraX version: 1.2.5 (2021-05-24)  
© 2016-2021 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  




OpenGL version: 3.3.0 NVIDIA 451.67
OpenGL renderer: GeForce 840M/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation
Manufacturer: Dell Inc.
Model: Inspiron 3543
OS: Microsoft Windows 10 Home Single Language (Build 19042)
Memory: 8,496,852,992
MaxProcessMemory: 137,438,953,344
CPU: 4 Intel(R) Core(TM) i7-5500U CPU @ 2.40GHz
OSLanguage: en-GB
Locale: ('en_US', 'cp1251')
PyQt5 5.15.2, Qt 5.15.2
Installed Packages:
    alabaster: 0.7.12
    appdirs: 1.4.4
    Babel: 2.9.1
    backcall: 0.2.0
    blockdiag: 2.0.1
    certifi: 2020.12.5
    cftime: 1.5.0
    chardet: 3.0.4
    ChimeraX-AddCharge: 1.0.1
    ChimeraX-AddH: 2.1.6
    ChimeraX-AlignmentAlgorithms: 2.0
    ChimeraX-AlignmentHdrs: 3.2
    ChimeraX-AlignmentMatrices: 2.0
    ChimeraX-Alignments: 2.1
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.0
    ChimeraX-Atomic: 1.13.2
    ChimeraX-AtomicLibrary: 3.1.3
    ChimeraX-AtomSearch: 2.0
    ChimeraX-AtomSearchLibrary: 1.0
    ChimeraX-AxesPlanes: 2.0
    ChimeraX-BasicActions: 1.1
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 1.1
    ChimeraX-BondRot: 2.0
    ChimeraX-BugReporter: 1.0
    ChimeraX-BuildStructure: 2.5.2
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.1
    ChimeraX-ButtonPanel: 1.0
    ChimeraX-CageBuilder: 1.0
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.1
    ChimeraX-ChemGroup: 2.0
    ChimeraX-Clashes: 2.1
    ChimeraX-ColorActions: 1.0
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.2.1
    ChimeraX-CommandLine: 1.1.4
    ChimeraX-ConnectStructure: 2.0
    ChimeraX-Contacts: 1.0
    ChimeraX-Core: 1.2.5
    ChimeraX-CoreFormats: 1.0
    ChimeraX-coulombic: 1.1.1
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0
    ChimeraX-DataFormats: 1.1
    ChimeraX-Dicom: 1.0
    ChimeraX-DistMonitor: 1.1.3
    ChimeraX-DistUI: 1.0
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ExperimentalCommands: 1.0
    ChimeraX-FileHistory: 1.0
    ChimeraX-FunctionKey: 1.0
    ChimeraX-Geometry: 1.1
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.0
    ChimeraX-Hbonds: 2.1
    ChimeraX-Help: 1.1
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.0
    ChimeraX-ImageFormats: 1.1
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.1
    ChimeraX-Label: 1.0
    ChimeraX-ListInfo: 1.1.1
    ChimeraX-Log: 1.1.2
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.8.1
    ChimeraX-Map: 1.0.2
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0
    ChimeraX-MapFilter: 2.0
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.0
    ChimeraX-Markers: 1.0
    ChimeraX-Mask: 1.0
    ChimeraX-MatchMaker: 1.2.1
    ChimeraX-MDcrds: 2.2
    ChimeraX-MedicalToolbar: 1.0.1
    ChimeraX-Meeting: 1.0
    ChimeraX-MLP: 1.1
    ChimeraX-mmCIF: 2.3
    ChimeraX-MMTF: 2.1
    ChimeraX-Modeller: 1.0.1
    ChimeraX-ModelPanel: 1.0.1
    ChimeraX-ModelSeries: 1.0
    ChimeraX-Mol2: 2.0
    ChimeraX-Morph: 1.0
    ChimeraX-MouseModes: 1.1
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nucleotides: 2.0.1
    ChimeraX-OpenCommand: 1.5
    ChimeraX-PDB: 2.4.1
    ChimeraX-PDBBio: 1.0
    ChimeraX-PDBLibrary: 1.0.1
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.0.1
    ChimeraX-PubChem: 2.0.1
    ChimeraX-ReadPbonds: 1.0
    ChimeraX-Registration: 1.1
    ChimeraX-RemoteControl: 1.0
    ChimeraX-ResidueFit: 1.0
    ChimeraX-RestServer: 1.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 2.0
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.4
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0
    ChimeraX-SeqView: 2.3
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0
    ChimeraX-Shortcuts: 1.0
    ChimeraX-ShowAttr: 1.0
    ChimeraX-ShowSequences: 1.0
    ChimeraX-SideView: 1.0
    ChimeraX-Smiles: 2.0.1
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.3.1
    ChimeraX-STL: 1.0
    ChimeraX-Storm: 1.0
    ChimeraX-Struts: 1.0
    ChimeraX-Surface: 1.0
    ChimeraX-SwapAA: 2.0
    ChimeraX-SwapRes: 2.1
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.0.1
    ChimeraX-ToolshedUtils: 1.2
    ChimeraX-Tug: 1.0
    ChimeraX-UI: 1.7.6
    ChimeraX-uniprot: 2.1
    ChimeraX-UnitCell: 1.0
    ChimeraX-ViewDockX: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0
    ChimeraX-WebServices: 1.0
    ChimeraX-Zone: 1.0
    colorama: 0.4.3
    comtypes: 1.1.7
    cxservices: 1.0
    cycler: 0.10.0
    Cython: 0.29.21
    decorator: 5.0.9
    distlib: 0.3.1
    docutils: 0.16
    filelock: 3.0.12
    funcparserlib: 0.3.6
    grako: 3.16.5
    h5py: 2.10.0
    html2text: 2020.1.16
    idna: 2.10
    ihm: 0.17
    imagecodecs: 2020.5.30
    imagesize: 1.2.0
    ipykernel: 5.3.4
    ipython: 7.18.1
    ipython-genutils: 0.2.0
    jedi: 0.17.2
    Jinja2: 2.11.2
    jupyter-client: 6.1.7
    jupyter-core: 4.7.1
    kiwisolver: 1.3.1
    line-profiler: 2.1.2
    lxml: 4.6.2
    lz4: 3.1.0
    MarkupSafe: 2.0.1
    matplotlib: 3.3.2
    MolecularDynamicsViewer: 1.2
    msgpack: 1.0.0
    netCDF4: 1.5.4
    networkx: 2.5
    numexpr: 2.7.3
    numpy: 1.19.2
    numpydoc: 1.1.0
    openvr: 1.14.1501
    packaging: 20.9
    ParmEd: 3.2.0
    parso: 0.7.1
    pickleshare: 0.7.5
    Pillow: 7.2.0
    pip: 21.0.1
    pkginfo: 1.5.0.1
    prompt-toolkit: 3.0.18
    psutil: 5.7.2
    pycollada: 0.7.1
    pydicom: 2.0.0
    Pygments: 2.7.1
    PyOpenGL: 3.1.5
    PyOpenGL-accelerate: 3.1.5
    pyparsing: 2.4.7
    PyQt5-commercial: 5.15.2
    PyQt5-sip: 12.8.1
    PyQtWebEngine-commercial: 5.15.2
    python-dateutil: 2.8.1
    pytz: 2021.1
    pywin32: 228
    pyzmq: 22.0.3
    qtconsole: 4.7.7
    QtPy: 1.9.0
    RandomWords: 0.3.0
    requests: 2.24.0
    scipy: 1.5.2
    setuptools: 50.3.2
    sfftk-rw: 0.6.7.dev1
    six: 1.15.0
    snowballstemmer: 2.1.0
    sortedcontainers: 2.2.2
    Sphinx: 3.2.1
    sphinxcontrib-applehelp: 1.0.2
    sphinxcontrib-blockdiag: 2.0.0
    sphinxcontrib-devhelp: 1.0.2
    sphinxcontrib-htmlhelp: 2.0.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.3
    sphinxcontrib-serializinghtml: 1.1.5
    suds-jurko: 0.6
    tables: 3.6.1
    tifffile: 2020.9.3
    tinyarray: 1.2.3
    tornado: 6.1
    traitlets: 5.0.5
    urllib3: 1.25.11
    wcwidth: 0.2.5
    webcolors: 1.11.1
    wheel: 0.36.0
    wheel-filename: 1.3.0
    WMI: 1.5.1

Change History (6)

comment:1 by Eric Pettersen, 4 years ago

Component: UnassignedSurface
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionCrash calculating surface geometry

Reported by Volodymyr Dvornyk

comment:2 by Tom Goddard, 4 years ago

Resolution: can't reproduce
Status: assignedclosed

ChimeraX crashed trying to compute a molecular surface, looks like the command "show surfaces" was run and it crashed.

Do you have a PDB file that produces this crash reproducibly? If we had that file we could debug it. Without that there is not enough information.

The crash traceback does not make complete sense. It shows it crashed getting the attribute of a Collection, probably Atoms.radii. Put the line number in calculate_surface_geometry() does not have any access to a collection attribute (the radii attribute is used 2 lines earlier).

File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\atomic\molc.py", line 196 in get_prop
File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-packages\chimerax\atomic\molsurf.py", line 232 in calculate_surface_geometry

lines 230-232 of molsurf.py (self.probe_radius and self.grid_spacing are conventional attributes of the Python MolecularSurface class)

r = atoms.radii
self._max_radius = r.max()
va, na, ta = surface.ses_surface_geometry(xyz, r, self.probe_radius, self.grid_spacing)

in reply to:  3 ; comment:3 by vdvornyk@…, 4 years ago

Hi,

Here you are: 6lgl, 3j3q or alike.

Best,


Dr. Volodymyr Dvornyk
Associate Professor,
College of Science and General Studies

T:    +966 11 215 7650 | F: +966 11 215 7656
M:  +966 55 112 0051  | E: http://www.alfaisal.edu



P.O. Box 50927 | Riyadh 11533 |
Kingdom of Saudi Arabia


Alfaisal 1st in Saudi Arabia
Alfaisal 1st in the Arab World
Alfaisal 31 Globally
Alfaisal 10th in ”The World’s Best Small Universities 2020”













-----Original Message-----
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: Wednesday, July 7, 2021 20:50
Cc: goddard@cgl.ucsf.edu; Volodymyr Dvornyk <vdvornyk@alfaisal.edu>
Subject: Re: [ChimeraX] #4868: Crash calculating surface geometry

#4868: Crash calculating surface geometry
--------------------------------------+-------------------------
          Reporter:  vdvornyk@…       |      Owner:  Tom Goddard
              Type:  defect           |     Status:  closed
          Priority:  normal           |  Milestone:
         Component:  Surface          |    Version:
        Resolution:  can't reproduce  |   Keywords:
        Blocked By:                   |   Blocking:
Notify when closed:                   |   Platform:  all
           Project:  ChimeraX         |
--------------------------------------+-------------------------
Changes (by Tom Goddard):

 * status:  assigned => closed
 * resolution:   => can't reproduce


Comment:

 ChimeraX crashed trying to compute a molecular surface, looks like the  command "show surfaces" was run and it crashed.

 Do you have a PDB file that produces this crash reproducibly?  If we had  that file we could debug it.  Without that there is not enough  information.

 The crash traceback does not make complete sense.  It shows it crashed  getting the attribute of a Collection, probably Atoms.radii.  Put the line  number in calculate_surface_geometry() does not have any access to a  collection attribute (the radii attribute is used 2 lines earlier).

  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-  packages\chimerax\atomic\molc.py", line 196 in get_prop
  File "C:\Program Files\ChimeraX 1.2.5\bin\lib\site-  packages\chimerax\atomic\molsurf.py", line 232 in  calculate_surface_geometry

 lines 230-232 of molsurf.py  (self.probe_radius and self.grid_spacing are  conventional attributes of the Python MolecularSurface class)

             r = atoms.radii
             self._max_radius = r.max()
             va, na, ta = surface.ses_surface_geometry(xyz, r,  self.probe_radius, self.grid_spacing)

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/4868#comment:2>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

________________________________

DISCLAIMER: This electronic mail transmission contains confidential information intended only for the person(s) named. Any use, distribution, copying or disclosure by any other person is strictly prohibited. If you received this transmission in error, please notify the sender by reply e-mail and then destroy the message. Opinions, conclusions, and other information in this message that do not relate to the official business of Alfaisal University shall understand to be neither given nor endorsed by Alfaisal University. The contents of any attachment to this e-mail may contain software viruses, which could damage your own computer system. While “Alfaisal University” has taken every reasonable precaution to minimize this risk, we cannot accept liability for any damage which you sustain as a result of software viruses. You should carry out your own virus checks before opening the attachment.

comment:4 by Tom Goddard, 4 years ago

Using "show surfaces" in ChimeraX 1.2.5 on 6lgl or 3j3q works fine on my Windows 10 machine with 32 Gbytes of memory. The 6lgl case is small using only 2 Gbytes. The 3j3q case with 2.4 million atoms takes about 20 Gbytes of memory during the calculation then drops to 4 Gbytes. It probably crashes on your machine because you only have 8 Gbytes of memory and a memory allocation fails. The 3j3q case makes surfaces with 350 million triangles which will cripple even the fastest graphics -- I was getting about 1 frame per second rendering.

in reply to:  5 ; comment:5 by vdvornyk@…, 4 years ago

Hi,

Thanks for the prompt reply. Yes, my laptop has 8 GB RAM but the small case should be OK as you mentioned (requires 2 Gb of memory). However, it crashes the whole laptop even without rendering...

Best,

Dr. Volodymyr Dvornyk


-----Original Message-----
From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Sent: Wednesday, July 7, 2021 23:35
Cc: goddard@cgl.ucsf.edu; Volodymyr Dvornyk <vdvornyk@alfaisal.edu>
Subject: Re: [ChimeraX] #4868: Crash calculating surface geometry

#4868: Crash calculating surface geometry
--------------------------------------+-------------------------
          Reporter:  vdvornyk@…       |      Owner:  Tom Goddard
              Type:  defect           |     Status:  closed
          Priority:  normal           |  Milestone:
         Component:  Surface          |    Version:
        Resolution:  can't reproduce  |   Keywords:
        Blocked By:                   |   Blocking:
Notify when closed:                   |   Platform:  all
           Project:  ChimeraX         |
--------------------------------------+-------------------------

Comment (by Tom Goddard):

 Using "show surfaces" in ChimeraX 1.2.5 on 6lgl or 3j3q works fine on my  Windows 10 machine with 32 Gbytes of memory.  The 6lgl case is small using  only 2 Gbytes.  The 3j3q case with 2.4 million atoms takes about 20 Gbytes  of memory during the calculation then drops to 4 Gbytes.  It probably  crashes on your machine because you only have 8 Gbytes of memory and a  memory allocation fails.  The 3j3q case makes surfaces with 350 million  triangles which will cripple even the fastest graphics -- I was getting  about 1 frame per second rendering.

--
Ticket URL: <https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/4868#comment:4>
ChimeraX <https://www.rbvi.ucsf.edu/chimerax/>
ChimeraX Issue Tracker

________________________________

DISCLAIMER: This electronic mail transmission contains confidential information intended only for the person(s) named. Any use, distribution, copying or disclosure by any other person is strictly prohibited. If you received this transmission in error, please notify the sender by reply e-mail and then destroy the message. Opinions, conclusions, and other information in this message that do not relate to the official business of Alfaisal University shall understand to be neither given nor endorsed by Alfaisal University. The contents of any attachment to this e-mail may contain software viruses, which could damage your own computer system. While “Alfaisal University” has taken every reasonable precaution to minimize this risk, we cannot accept liability for any damage which you sustain as a result of software viruses. You should carry out your own virus checks before opening the attachment.

comment:6 by Tom Goddard, 4 years ago

If your whole laptop crashes that is very likely a graphics driver problem. You are using Nvidia Geforce 840M graphics, circa 2014, with graphics driver 451.67 from July 2020. Maybe a newer driver would help, but drivers often don't support old graphics hardware very well.

Note: See TracTickets for help on using tickets.