Opened 6 years ago

Last modified 6 years ago

#2896 accepted defect

generic attribute selection slow

Reported by: goddard@… Owned by: Eric Pettersen
Priority: normal Milestone:
Component: Command Line Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-19.3.0-x86_64-i386-64bit
ChimeraX Version: 0.92 (2020-02-27)
Description
Selecting a ligand from the non-standard residues table for a large structure  (select ::name="VIR") is unusably slow, 20 seconds for 300,000 atom ribosome structure.  Selecting all takes 1.3 seconds.  Command "sel :VIR" takes 0.5 seconds.  So apparently it is the ::name="VIR" syntax for the atom spec used by the non-standard residue table link.

Log:
Startup Messages  
---  
warning | 'clip' is a prefix of an existing command 'clipper'  
  
UCSF ChimeraX version: 0.92 (2020-02-27)  
© 2016-2020 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open 4u25

4u25 title:  
Crystal structure of the E. coli ribosome bound to virginiamycin M1. [more
info...]  
  
Chain information for 4u25 #1  
---  
Chain | Description  
AA CA | 16S rRNA  
AB CB | 30S ribosomal protein S2  
AC CC | 30S ribosomal protein S3  
AD CD | 30S ribosomal protein S4  
AE CE | 30S ribosomal protein S5  
AF CF | 30S ribosomal protein S6  
AG CG | 30S ribosomal protein S7  
AH CH | 30S ribosomal protein S8  
AI CI | 30S ribosomal protein S9  
AJ CJ | 30S ribosomal protein S10  
AK CK | 30S ribosomal protein S11  
AL CL | 30S ribosomal protein S12  
AM CM | 30S ribosomal protein S13  
AN CN | 30S ribosomal protein S14  
AO CO | 30S ribosomal protein S15  
AP CP | 30S ribosomal protein S16  
AQ CQ | 30S ribosomal protein S17  
AR CR | 30S ribosomal protein S18  
AS CS | 30S ribosomal protein S19  
AT CT | 30S ribosomal protein S20  
AU CU | 30S ribosomal protein S21  
B0 D0 | 50S ribosomal protein L32  
B1 D1 | 50S ribosomal protein L33  
B2 D2 | 50S ribosomal protein L34  
B3 D3 | 50S ribosomal protein L35  
B4 D4 | 50S ribosomal protein L36  
B5 | 50S ribosomal protein L1  
BA DA | 23S rRNA  
BB DB | 5S rRNA  
BC DC | 50S ribosomal protein L2  
BD DD | 50S ribosomal protein L3  
BE DE | 50S ribosomal protein L4  
BF DF | 50S ribosomal protein L5  
BG DG | 50S ribosomal protein L6  
BH DH | 50S ribosomal protein L9  
BI DI | 50S ribosomal protein L11  
BJ DJ | 50S ribosomal protein L13  
BK DK | 50S ribosomal protein L14  
BL DL | 50S ribosomal protein L15  
BM DM | 50S ribosomal protein L16  
BN DN | 50S ribosomal protein L17  
BO DO | 50S ribosomal protein L18  
BP DP | 50S ribosomal protein L19  
BQ DQ | 50S ribosomal protein L20  
BR DR | 50S ribosomal protein L21  
BS DS | 50S ribosomal protein L22  
BT DT | 50S ribosomal protein L23  
BU DU | 50S ribosomal protein L24  
BV DV | 50S ribosomal protein L25  
BW DW | 50S ribosomal protein L27  
BX DX | 50S ribosomal protein L28  
BY DY | 50S ribosomal protein L29  
BZ DZ | 50S ribosomal protein L30  
  
Non-standard residues in 4u25 #1  
---  
MG — magnesium ion  
VIR — virginiamycin M1  
ZN — zinc ion  
  
4u25 mmCIF Assemblies  
---  
1| author_defined_assembly  
2| author_defined_assembly  
  
  

> select ::name="VIR"

76 atoms, 80 bonds, 1 model selected  

> time select ::name="VIR"

> select ::name="VIR"

76 atoms, 80 bonds, 1 model selected  
command time 19.26 seconds  
draw time 0.03526 seconds  

> select all

288258 atoms, 310714 bonds, 10871 pseudobonds, 4 models selected  

> time select all

> select all

288258 atoms, 310714 bonds, 10871 pseudobonds, 4 models selected  
command time 1.318 seconds  
draw time 0.06209 seconds  

> time sel :VIR

> select :VIR

76 atoms, 80 bonds, 1 model selected  
command time 0.5361 seconds  
draw time 0.03183 seconds  




OpenGL version: 4.1 ATI-3.5.5
OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.

Change History (1)

comment:1 by Eric Pettersen, 6 years ago

Component: UnassignedCommand Line
Owner: set to Eric Pettersen
Platform: all
Project: ChimeraX
Status: newaccepted
Summary: ChimeraX bug report submissiongeneric attribute selection slow

Though this particular usage scenario is large moot (because the chain table no longer uses '::name=val' except when absolutely necessary), the fact that generic attribute selection is so slow is still a problem.

I can't seem to get line profiling to work on methods of Structure; waiting until Greg is around to get some insight there.

Note: See TracTickets for help on using tickets.