Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

slow to import dpdata #526

Closed
link89 opened this issue Aug 16, 2023 · 4 comments · Fixed by #658
Closed

slow to import dpdata #526

link89 opened this issue Aug 16, 2023 · 4 comments · Fixed by #658
Labels
enhancement New feature or request

Comments

@link89
Copy link
Contributor

link89 commented Aug 16, 2023

I find that it would takes up to 30s to run just import dpdata on the login node of HPC. I did some investigation myself and find that it would load almost all the modules into memory when importing the dpdata module.

Here is the relative code:
https://github.com/deepmodeling/dpdata/blob/master/dpdata/__init__.py#L21-L30

Is it possible to just remove the __all__ expression? I think it is for users who like to use from dpdata import *, which is not a good practices IMO.

@link89 link89 added the wontfix This will not be worked on label Aug 16, 2023
@njzjz njzjz added enhancement New feature or request and removed wontfix This will not be worked on labels Aug 19, 2023
@njzjz
Copy link
Member

njzjz commented Aug 19, 2023

image

import time: self [us] | cumulative | imported package
import time:       151 |        151 |   _io
import time:        51 |         51 |   marshal
import time:       231 |        231 |   posix
import time:       371 |        802 | _frozen_importlib_external
import time:        56 |         56 |   time
import time:       171 |        227 | zipimport
import time:        41 |         41 |     _codecs
import time:       328 |        369 |   codecs
import time:       249 |        249 |   encodings.aliases
import time:       360 |        977 | encodings
import time:       123 |        123 | encodings.utf_8
import time:       115 |        115 | _signal
import time:       145 |        145 | encodings.latin_1
import time:        28 |         28 |     _abc
import time:       150 |        177 |   abc
import time:       156 |        332 | io
import time:        93 |         93 |       _stat
import time:       166 |        258 |     stat
import time:       772 |        772 |     _collections_abc
import time:        94 |         94 |       genericpath
import time:       149 |        242 |     posixpath
import time:       362 |       1633 |   os
import time:       111 |        111 |   _sitebuiltins
import time:        49 |         49 |     _locale
import time:        89 |        137 |   _bootlocale
import time:       249 |        249 |         types
import time:       182 |        182 |         warnings
import time:       104 |        533 |       importlib
import time:       121 |        654 |     importlib.machinery
import time:       156 |        156 |               _heapq
import time:       161 |        316 |             heapq
import time:       634 |        634 |             itertools
import time:       127 |        127 |             keyword
import time:        62 |         62 |               _operator
import time:       268 |        330 |             operator
import time:       147 |        147 |             reprlib
import time:        61 |         61 |             _collections
import time:       887 |       2500 |           collections
import time:       187 |        187 |           collections.abc
import time:        47 |         47 |               _functools
import time:       460 |        507 |             functools
import time:       423 |        929 |           contextlib
import time:       729 |        729 |             enum
import time:        68 |         68 |               _sre
import time:       316 |        316 |                 sre_constants
import time:       312 |        627 |               sre_parse
import time:       292 |        987 |             sre_compile
import time:       146 |        146 |             copyreg
import time:       489 |       2349 |           re
import time:      1733 |       7696 |         typing
import time:       430 |       8126 |       importlib.abc
import time:       175 |       8300 |     importlib.util
import time:       146 |        146 |       fnmatch
import time:        56 |         56 |         nt
import time:        61 |         61 |         nt
import time:        45 |         45 |         nt
import time:        39 |         39 |         nt
import time:       191 |        391 |       ntpath
import time:        56 |         56 |       errno
import time:       100 |        100 |         urllib
import time:      1002 |       1101 |       urllib.parse
import time:       785 |       2478 |     pathlib
import time:       617 |      12048 |   __editable___deepmd_pytorch_0_1_3_dev32_g622a4f3_finder
import time:       152 |        152 |   __editable___deepmodeling_sphinx_0_1_4_dev1_gcfc0544_d20221105_finder
import time:       137 |        137 |   __editable___dpgen_0_11_2_dev40_g84f64dd_d20230618_finder
import time:       129 |        129 |   __editable___dpgen2_0_0_7_dev10_gb3b3bb1_finder
import time:       203 |        203 |   __editable___mddatasetbuilder_1_3_5_dev7_gd71b9da_d20221022_finder
import time:       129 |        129 |   __editable___qiuwenbot_0_1_dev42_gd6298d6_d20230703_finder
import time:       186 |        186 |   _distutils_hack
import time:       323 |        323 |   sitecustomize
import time:        90 |         90 |   usercustomize
import time:      3403 |      18674 | site
import time:       124 |        124 |   dpdata.lammps
import time:        73 |         73 |   dpdata.md
import time:        68 |         68 |   dpdata.vasp
import time:       334 |        334 |     glob
import time:       182 |        182 |         _weakrefset
import time:       347 |        529 |       weakref
import time:       100 |        100 |           org
import time:        11 |        110 |         org.python
import time:        12 |        121 |       org.python.core
import time:       152 |        801 |     copy
import time:       305 |        305 |       numpy._globals
import time:        95 |         95 |       numpy.__config__
import time:        66 |         66 |       numpy._distributor_init
import time:        96 |         96 |           __future__
import time:       146 |        146 |                   _json
import time:       292 |        437 |                 json.scanner
import time:       300 |        737 |               json.decoder
import time:       492 |        492 |               json.encoder
import time:       125 |       1352 |             json
import time:        63 |       1415 |           numpy._version
import time:        88 |       1597 |         numpy.version
import time:       264 |        264 |                 math
import time:       267 |        267 |                 _datetime
import time:      1099 |       1629 |               datetime
import time:     11504 |      13133 |             numpy.core._multiarray_umath
import time:       322 |        322 |                 numpy.compat._inspect
import time:       172 |        172 |                   pickle5
import time:       215 |        215 |                       _struct
import time:       137 |        351 |                     struct
import time:       265 |        265 |                     _compat_pickle
import time:       246 |        246 |                     _pickle
import time:       191 |        191 |                         org
import time:        75 |        265 |                       org.python
import time:        16 |        280 |                     org.python.core
import time:      1050 |       2191 |                   pickle
import time:       180 |       2541 |                 numpy.compat.py3k
import time:      2694 |       5556 |               numpy.compat
import time:        24 |       5580 |             numpy.compat._inspect
import time:       262 |      18973 |           numpy.core.overrides
import time:       508 |      19481 |         numpy.core.multiarray
import time:       210 |        210 |         numpy.core.umath
import time:       349 |        349 |           numbers
import time:       145 |        145 |           numpy.core._string_helpers
import time:       150 |        150 |             numpy.core._dtype
import time:       367 |        517 |           numpy.core._type_aliases
import time:       453 |       1462 |         numpy.core.numerictypes
import time:       382 |        382 |                 numpy.core._exceptions
import time:       230 |        611 |               numpy.core._methods
import time:       945 |       1556 |             numpy.core.fromnumeric
import time:       363 |       1918 |           numpy.core.shape_base
import time:       206 |        206 |           numpy.core._ufunc_config
import time:       589 |        589 |           numpy.core.arrayprint
import time:       136 |        136 |           numpy.core._asarray
import time:       984 |       3832 |         numpy.core.numeric
import time:      1043 |       1043 |         numpy.core.defchararray
import time:       323 |        323 |         numpy.core.records
import time:       175 |        175 |         numpy.core.memmap
import time:       220 |        220 |         numpy.core.function_base
import time:       150 |        150 |         numpy.core._machar
import time:       286 |        286 |         numpy.core.getlimits
import time:       867 |        867 |         numpy.core.einsumfunc
import time:       281 |        281 |           numpy.core._multiarray_tests
import time:      1536 |       1816 |         numpy.core._add_newdocs
import time:      2154 |       2154 |               signal
import time:       584 |        584 |               threading
import time:        57 |         57 |               pwd
import time:       182 |        182 |               grp
import time:       161 |        161 |               msvcrt
import time:       289 |        289 |               _posixsubprocess
import time:       301 |        301 |               select
import time:       705 |        705 |               selectors
import time:       572 |       5001 |             subprocess
import time:      2353 |       7354 |           platform
import time:       551 |       7905 |         numpy.core._add_newdocs_scalars
import time:       144 |        144 |         numpy.core._dtype_ctypes
import time:      1006 |       1006 |             _ast
import time:      1155 |       2161 |           ast
import time:       530 |        530 |             _ctypes
import time:       249 |        249 |             ctypes._endian
import time:       837 |       1615 |           ctypes
import time:       824 |       4599 |         numpy.core._internal
import time:       167 |        167 |         numpy._pytesttester
import time:       508 |      44777 |       numpy.core
import time:       356 |        356 |         numpy.lib.mixins
import time:       167 |        167 |             numpy.lib.ufunclike
import time:       387 |        553 |           numpy.lib.type_check
import time:       347 |        900 |         numpy.lib.scimath
import time:       220 |        220 |                     numpy.lib.stride_tricks
import time:       339 |        559 |                   numpy.lib.twodim_base
import time:       432 |        432 |                   numpy.linalg._umath_linalg
import time:       733 |       1723 |                 numpy.linalg.linalg
import time:       129 |       1851 |               numpy.linalg
import time:       290 |       2141 |             numpy.matrixlib.defmatrix
import time:       119 |       2259 |           numpy.matrixlib
import time:       289 |        289 |             numpy.lib.histograms
import time:      1116 |       1404 |           numpy.lib.function_base
import time:       424 |       4086 |         numpy.lib.index_tricks
import time:       476 |        476 |         numpy.lib.nanfunctions
import time:       523 |        523 |         numpy.lib.shape_base
import time:       708 |        708 |         numpy.lib.polynomial
import time:      2318 |       2318 |           textwrap
import time:       658 |       2975 |         numpy.lib.utils
import time:       298 |        298 |         numpy.lib.arraysetops
import time:      1018 |       1018 |           numpy.lib.format
import time:       250 |        250 |           numpy.lib._datasource
import time:       322 |        322 |           numpy.lib._iotools
import time:       655 |       2243 |         numpy.lib.npyio
import time:       167 |        167 |         numpy.lib.arrayterator
import time:       209 |        209 |         numpy.lib.arraypad
import time:       148 |        148 |         numpy.lib._version
import time:       400 |      13483 |       numpy.lib
import time:       168 |        168 |           numpy.fft._pocketfft_internal
import time:       547 |        714 |         numpy.fft._pocketfft
import time:       161 |        161 |         numpy.fft.helper
import time:       202 |       1076 |       numpy.fft
import time:       203 |        203 |           numpy.polynomial.polyutils
import time:       366 |        366 |           numpy.polynomial._polybase
import time:       350 |        918 |         numpy.polynomial.polynomial
import time:       318 |        318 |         numpy.polynomial.chebyshev
import time:       266 |        266 |         numpy.polynomial.legendre
import time:       278 |        278 |         numpy.polynomial.hermite
import time:       401 |        401 |         numpy.polynomial.hermite_e
import time:       288 |        288 |         numpy.polynomial.laguerre
import time:       185 |       2652 |       numpy.polynomial
import time:       194 |        194 |                 backports_abc
import time:       676 |        869 |               numpy.random._common
import time:       202 |        202 |                   binascii
import time:       312 |        514 |                 base64
import time:       611 |        611 |                   _hashlib
import time:       521 |        521 |                     _blake2
import time:       321 |        842 |                   hashlib
import time:       252 |       1703 |                 hmac
import time:       142 |        142 |                     _bisect
import time:       130 |        272 |                   bisect
import time:       137 |        137 |                   _random
import time:       129 |        129 |                   _sha512
import time:       399 |        935 |                 random
import time:       164 |       3314 |               secrets
import time:       607 |       4790 |             numpy.random.bit_generator
import time:       252 |        252 |             numpy.random._bounded_integers
import time:       200 |        200 |             numpy.random._mt19937
import time:       971 |       6211 |           numpy.random.mtrand
import time:       226 |        226 |           numpy.random._philox
import time:       290 |        290 |           numpy.random._pcg64
import time:       396 |        396 |           numpy.random._sfc64
import time:       565 |        565 |           numpy.random._generator
import time:       219 |       7903 |         numpy.random._pickle
import time:       213 |       8116 |       numpy.random
import time:       609 |        609 |       numpy.ctypeslib
import time:       156 |        156 |                 _opcode
import time:       296 |        452 |               opcode
import time:       478 |        929 |             dis
import time:       265 |        265 |                 token
import time:       960 |       1224 |               tokenize
import time:       156 |       1380 |             linecache
import time:      1683 |       3991 |           inspect
import time:      2972 |       6962 |         numpy.ma.core
import time:      1148 |       1148 |         numpy.ma.extras
import time:       250 |       8359 |       numpy.ma
import time:      2249 |      81783 |     numpy
import time:       179 |        179 |       monty
import time:       164 |        164 |         _uuid
import time:       410 |        574 |       uuid
import time:       265 |        265 |           pytz.exceptions
import time:       292 |        292 |           pytz.lazy
import time:       242 |        242 |           pytz.tzinfo
import time:       131 |        131 |           pytz.tzfile
import time:      1502 |       2429 |         pytz
import time:       137 |        137 |           dateutil._version
import time:       183 |        320 |         dateutil
import time:       194 |        194 |             mmap
import time:      2604 |       2797 |           pandas._typing
import time:       778 |        778 |                                 pandas._libs.tslibs.dtypes
import time:       147 |        147 |                                   pandas._libs.tslibs.base
import time:       167 |        167 |                                     pandas._libs.tslibs.np_datetime
import time:       389 |        555 |                                   pandas._libs.tslibs.nattype
import time:      1048 |       1048 |                                         six
import time:        71 |         71 |                                         six.moves
import time:       230 |        230 |                                         dateutil.tz._common
import time:       171 |        171 |                                         dateutil.tz._factories
import time:        41 |         41 |                                           six.moves.winreg
import time:       189 |        230 |                                         dateutil.tz.win
import time:       832 |       2580 |                                       dateutil.tz.tz
import time:       170 |       2749 |                                     dateutil.tz
import time:       404 |       3153 |                                   pandas._libs.tslibs.timezones
import time:       184 |        184 |                                     pandas._libs.tslibs.ccalendar
import time:       343 |        526 |                                   pandas._libs.tslibs.tzconversion
import time:       916 |        916 |                                           locale
import time:       576 |        576 |                                               pandas._config.config
import time:       275 |        275 |                                               pandas._config.dates
import time:       148 |        148 |                                               pandas._config.display
import time:       180 |       1177 |                                             pandas._config
import time:       147 |       1324 |                                           pandas._config.localization
import time:       177 |        177 |                                             backports_abc
import time:       541 |        541 |                                             calendar
import time:      1177 |       1894 |                                           pandas._libs.tslibs.strptime
import time:       399 |       4531 |                                         pandas._libs.tslibs.fields
import time:       778 |       5308 |                                       pandas._libs.tslibs.timedeltas
import time:       165 |        165 |                                         backports_abc
import time:       888 |       1053 |                                       pandas._libs.tslibs.timestamps
import time:       142 |        142 |                                       backports_abc
import time:       117 |        117 |                                       dateutil.easter
import time:       116 |        116 |                                         dateutil._common
import time:       208 |        323 |                                       dateutil.relativedelta
import time:       170 |        170 |                                       pandas._libs.properties
import time:      1562 |       8672 |                                     pandas._libs.tslibs.offsets
import time:       146 |        146 |                                     backports_abc
import time:        45 |         45 |                                           _string
import time:       761 |        805 |                                         string
import time:       740 |        740 |                                           _decimal
import time:       150 |        889 |                                         decimal
import time:      1179 |       2872 |                                       dateutil.parser._parser
import time:       272 |        272 |                                       dateutil.parser.isoparser
import time:       201 |       3344 |                                     dateutil.parser
import time:       549 |      12710 |                                   pandas._libs.tslibs.parsing
import time:       385 |      17473 |                                 pandas._libs.tslibs.conversion
import time:       373 |        373 |                                 pandas._libs.tslibs.period
import time:       242 |        242 |                                 pandas._libs.tslibs.vectorized
import time:       228 |      19092 |                               pandas._libs.tslibs
import time:        23 |      19114 |                             pandas._libs.tslibs.nattype
import time:       131 |        131 |                             pandas._libs.ops_dispatch
import time:       375 |      19619 |                           pandas._libs.missing
import time:       601 |      20220 |                         pandas._libs.hashtable
import time:       445 |        445 |                         pandas._libs.algos
import time:       839 |      21503 |                       pandas._libs.interval
import time:       112 |      21615 |                     pandas._libs
import time:        19 |      21633 |                   pandas._libs.properties
import time:       248 |      21881 |                 pandas.util._decorators
import time:        97 |         97 |                     pandas.core
import time:       131 |        228 |                   pandas.core.util
import time:       199 |        199 |                     pandas._libs.tslib
import time:       571 |        770 |                   pandas._libs.lib
import time:       174 |        174 |                   pandas._libs.hashing
import time:        91 |         91 |                     pandas.core.dtypes
import time:       260 |        260 |                       pandas.errors
import time:       287 |        287 |                       pandas.core.dtypes.generic
import time:       154 |        700 |                     pandas.core.dtypes.base
import time:       182 |        182 |                       pandas.core.dtypes.inference
import time:       766 |        948 |                     pandas.core.dtypes.dtypes
import time:       283 |       2021 |                   pandas.core.dtypes.common
import time:       180 |       3372 |                 pandas.core.util.hashing
import time:       131 |      25383 |               pandas.util
import time:      1894 |      27277 |             pandas.util.version
import time:       324 |      27601 |           pandas.compat.numpy
import time:       126 |        126 |             pyarrow
import time:       117 |        242 |           pandas.compat.pyarrow
import time:       218 |      30857 |         pandas.compat
import time:       566 |        566 |         pandas.core.config_init
import time:       150 |        150 |           pandas.core.dtypes.missing
import time:        92 |         92 |               pandas.util._exceptions
import time:       106 |        106 |               pandas.util._validators
import time:       328 |        525 |             pandas.core.dtypes.cast
import time:        82 |         82 |               pandas.core.array_algos
import time:       265 |        265 |                 pandas.core.common
import time:       151 |        415 |               pandas.core.construction
import time:       213 |        710 |             pandas.core.array_algos.take
import time:       121 |        121 |             pandas.core.indexers
import time:       540 |       1895 |           pandas.core.algorithms
import time:       184 |        184 |               pandas.compat.numpy.function
import time:        97 |         97 |                 pandas.compat._optional
import time:       266 |        362 |               pandas.core.missing
import time:        71 |         71 |                 pandas.core.roperator
import time:       215 |        215 |                   pandas._libs.ops
import time:        83 |         83 |                     pandas.core.computation
import time:       149 |        149 |                       numexpr.__config__
import time:      1648 |       1648 |                       numexpr.interpreter
import time:        70 |         70 |                               distutils.debug
import time:       221 |        221 |                               distutils.errors
import time:       249 |        249 |                                   traceback
import time:        38 |         38 |                                   atexit
import time:      1412 |       1699 |                                 logging
import time:       137 |        137 |                                 email
import time:      1167 |       1167 |                                     gettext
import time:       121 |       1288 |                                   getopt
import time:       359 |       1646 |                                 distutils.fancy_getopt
import time:       247 |        247 |                                   sysconfig
import time:        86 |         86 |                                   distutils.dep_util
import time:        61 |         61 |                                     distutils._log
import time:        82 |        143 |                                   distutils.spawn
import time:       179 |        653 |                                 distutils.util
import time:       494 |       4627 |                               distutils.dist
import time:       119 |        119 |                                 distutils.dir_util
import time:       108 |        108 |                                 distutils.file_util
import time:       199 |        199 |                                       zlib
import time:       213 |        213 |                                         _compression
import time:       155 |        155 |                                         _bz2
import time:       190 |        556 |                                       bz2
import time:       272 |        272 |                                         _lzma
import time:       179 |        451 |                                       lzma
import time:       433 |       1638 |                                     shutil
import time:       595 |       2233 |                                   zipfile
import time:       127 |       2360 |                                 distutils.archive_util
import time:       167 |       2752 |                               distutils.cmd
import time:      1394 |       1394 |                                 configparser
import time:       129 |       1523 |                               distutils.config
import time:       121 |        121 |                               distutils.extension
import time:       599 |       9910 |                             _distutils_hack.override
import time:       132 |        132 |                             setuptools._deprecation_warning
import time:       115 |        115 |                                 setuptools.extern
import time:        68 |         68 |                                     setuptools._vendor
import time:       182 |        182 |                                       _csv
import time:       241 |        422 |                                     csv
import time:       176 |        176 |                                     setuptools._vendor.zipp
import time:       118 |        118 |                                         uu
import time:       128 |        128 |                                         quopri
import time:       296 |        296 |                                             _socket
import time:       167 |        167 |                                             array
import time:      1323 |       1786 |                                           socket
import time:       200 |        200 |                                           email._parseaddr
import time:        82 |         82 |                                             email.base64mime
import time:       155 |        155 |                                             email.quoprimime
import time:       305 |        305 |                                             email.errors
import time:        77 |         77 |                                             email.encoders
import time:       155 |        772 |                                           email.charset
import time:       363 |       3119 |                                         email.utils
import time:       546 |        546 |                                           email.header
import time:       200 |        746 |                                         email._policybase
import time:       199 |        199 |                                         email._encoded_words
import time:        87 |         87 |                                         email.iterators
import time:       432 |       4827 |                                       email.message
import time:        69 |         69 |                                         setuptools._vendor.importlib_metadata._functools
import time:       105 |        174 |                                       setuptools._vendor.importlib_metadata._text
import time:       108 |        108 |                                       setuptools._vendor.importlib_metadata._compat
import time:       200 |       5308 |                                     setuptools._vendor.importlib_metadata._adapters
import time:       280 |        280 |                                     setuptools._vendor.importlib_metadata._meta
import time:       162 |        162 |                                     setuptools._vendor.importlib_metadata._py39compat
import time:       311 |        311 |                                     setuptools._vendor.importlib_metadata._collections
import time:        95 |         95 |                                     setuptools._vendor.importlib_metadata._itertools
import time:      1126 |       7943 |                                   setuptools._vendor.importlib_metadata
import time:       102 |       8045 |                                 setuptools.extern.importlib_metadata
import time:       300 |        300 |                                   zipp
import time:        72 |         72 |                                       importlib_metadata._functools
import time:       116 |        188 |                                     importlib_metadata._text
import time:       206 |        393 |                                   importlib_metadata._adapters
import time:        82 |         82 |                                     importlib_metadata._compat
import time:       162 |        244 |                                   importlib_metadata._meta
import time:       165 |        165 |                                   importlib_metadata._collections
import time:        72 |         72 |                                   importlib_metadata._itertools
import time:       966 |       2138 |                                 importlib_metadata
import time:       238 |        238 |                                     tempfile
import time:       110 |        348 |                                   importlib._common
import time:       201 |        548 |                                 importlib.resources
import time:       111 |      10954 |                               setuptools._importlib
import time:       452 |        452 |                                 email.feedparser
import time:       148 |        599 |                               email.parser
import time:      4982 |      16535 |                             setuptools.version
import time:       137 |        137 |                                 distutils.filelist
import time:       102 |        238 |                               setuptools.monkey
import time:       135 |        372 |                             setuptools.extension
import time:       107 |        107 |                               distutils.log
import time:       138 |        138 |                               distutils.command
import time:        74 |         74 |                                 setuptools._vendor.packaging
import time:        63 |        136 |                               setuptools.extern.packaging
import time:       142 |        142 |                                 setuptools._vendor.ordered_set
import time:        46 |        187 |                               setuptools.extern.ordered_set
import time:       165 |        165 |                                       _queue
import time:       257 |        421 |                                     queue
import time:       152 |        152 |                                     setuptools._vendor.more_itertools.recipes
import time:       605 |       1177 |                                   setuptools._vendor.more_itertools.more
import time:        97 |       1273 |                                 setuptools._vendor.more_itertools
import time:        49 |       1322 |                               setuptools.extern.more_itertools
import time:       747 |        747 |                               setuptools._normalization
import time:       184 |        184 |                                 distutils.command.bdist
import time:       149 |        332 |                               setuptools.command
import time:        80 |         80 |                               setuptools.windows_support
import time:       434 |        434 |                                         dataclasses
import time:       353 |        353 |                                                 setuptools._vendor.packaging._elffile
import time:       319 |        671 |                                               setuptools._vendor.packaging._manylinux
import time:       194 |        194 |                                               setuptools._vendor.packaging._musllinux
import time:       390 |       1254 |                                             setuptools.extern.packaging.tags
import time:       104 |        104 |                                               setuptools.extern.packaging._structures
import time:       520 |        624 |                                             setuptools.extern.packaging.version
import time:       277 |       2154 |                                           setuptools.extern.packaging.utils
import time:      3526 |       5680 |                                         setuptools.extern.packaging.specifiers
import time:      3718 |       9831 |                                       setuptools.extern.packaging._tokenizer
import time:       369 |      10200 |                                     setuptools.extern.packaging._parser
import time:       290 |        290 |                                     setuptools.extern.packaging.markers
import time:       158 |      10647 |                                   setuptools.extern.packaging.requirements
import time:        87 |         87 |                                     setuptools._path
import time:       525 |        611 |                                   setuptools.config.expand
import time:       669 |      11926 |                                 setuptools.config.setupcfg
import time:       115 |      12041 |                               setuptools.config
import time:       133 |        133 |                                 setuptools.errors
import time:      1533 |       1533 |                                     email._header_value_parser
import time:       403 |       1936 |                                   email.headerregistry
import time:       393 |       2329 |                                 setuptools.config._apply_pyprojecttoml
import time:       304 |       2764 |                               setuptools.config.pyprojecttoml
import time:       307 |        307 |                               setuptools.discovery
import time:        81 |         81 |                                     setuptools._vendor.jaraco
import time:        68 |        148 |                                   setuptools.extern.jaraco
import time:       182 |        182 |                                   setuptools.extern.jaraco.functools
import time:       683 |        683 |                                   setuptools.extern.jaraco.context
import time:       429 |       1440 |                                 setuptools.extern.jaraco.text
import time:       155 |       1594 |                               setuptools._reqs
import time:        74 |         74 |                                 setuptools._itertools
import time:       142 |        215 |                               setuptools._entry_points
import time:       472 |      20436 |                             setuptools.dist
import time:        67 |         67 |                                 setuptools.py34compat
import time:        87 |        154 |                               setuptools._imp
import time:       132 |        285 |                             setuptools.depends
import time:        82 |         82 |                             setuptools.logging
import time:       784 |      48533 |                           distutils
import time:       431 |      48964 |                         distutils.version
import time:       571 |      49534 |                       numexpr.expressions
import time:       189 |        189 |                         numexpr.utils
import time:      1020 |       1209 |                       numexpr.necompiler
import time:       105 |        105 |                       numexpr.version
import time:       707 |      53349 |                     pandas.core.computation.check
import time:       178 |      53609 |                   pandas.core.computation.expressions
import time:        99 |         99 |                   pandas.core.ops.missing
import time:        72 |         72 |                   pandas.core.ops.dispatch
import time:        68 |         68 |                   pandas.core.ops.invalid
import time:       199 |      54260 |                 pandas.core.ops.array_ops
import time:       110 |        110 |                 pandas.core.ops.common
import time:       122 |        122 |                 pandas.core.ops.docstrings
import time:        92 |         92 |                 pandas.core.ops.mask_ops
import time:       149 |        149 |                 pandas.core.ops.methods
import time:       213 |      55013 |               pandas.core.ops
import time:       190 |        190 |               pandas.core.sorting
import time:       437 |      56183 |             pandas.core.arrays.base
import time:       187 |        187 |                   bottleneck.reduce
import time:        95 |         95 |                   bottleneck.nonreduce
import time:        86 |         86 |                   bottleneck.nonreduce_axis
import time:        93 |         93 |                   bottleneck.move
import time:       112 |        112 |                     bottleneck.slow.reduce
import time:        65 |         65 |                     bottleneck.slow.nonreduce
import time:        82 |         82 |                     bottleneck.slow.nonreduce_axis
import time:       151 |        151 |                     bottleneck.slow.move
import time:       105 |        514 |                   bottleneck.slow
import time:        69 |         69 |                     bottleneck.benchmark
import time:        56 |         56 |                         gc
import time:       140 |        196 |                       timeit
import time:        67 |        262 |                     bottleneck.benchmark.autotimeit
import time:       128 |        458 |                   bottleneck.benchmark.bench
import time:        97 |         97 |                   bottleneck.benchmark.bench_detailed
import time:        66 |         66 |                     bottleneck.tests
import time:       129 |        195 |                   bottleneck.tests.util
import time:        93 |         93 |                   bottleneck._pytesttester
import time:        63 |         63 |                   bottleneck._version
import time:       719 |       2594 |                 pandas.core.nanops
import time:       117 |        117 |                 pandas.core.array_algos.masked_reductions
import time:       320 |        320 |                 pandas.core.arraylike
import time:       427 |       3456 |               pandas.core.arrays.masked
import time:       237 |       3693 |             pandas.core.arrays.boolean
import time:       256 |        256 |               pandas._libs.arrays
import time:       253 |        253 |               pandas.core.accessor
import time:        75 |         75 |                 pandas.core.array_algos.transforms
import time:       343 |        418 |               pandas.core.arrays._mixins
import time:       577 |        577 |               pandas.core.base
import time:      1596 |       1596 |                   pandas.core.strings.accessor
import time:       174 |        174 |                   pandas.core.strings.base
import time:       108 |       1877 |                 pandas.core.strings
import time:       160 |        160 |                 unicodedata
import time:       289 |       2325 |               pandas.core.strings.object_array
import time:       107 |        107 |                 pandas.io
import time:       120 |        227 |               pandas.io.formats
import time:       101 |        101 |               pandas.io.formats.console
import time:       671 |       4825 |             pandas.core.arrays.categorical
import time:        80 |         80 |                 pandas.tseries
import time:       268 |        268 |                 pandas.tseries.frequencies
import time:       788 |       1136 |               pandas.core.arrays.datetimelike
import time:       109 |        109 |               pandas.core.arrays._ranges
import time:       226 |        226 |                 pandas.core.arrays.numeric
import time:        77 |         77 |                   pandas.core.tools
import time:       127 |        203 |                 pandas.core.tools.numeric
import time:       289 |        717 |               pandas.core.arrays.integer
import time:        88 |         88 |               pandas.tseries.offsets
import time:       458 |       2506 |             pandas.core.arrays.datetimes
import time:       196 |        196 |             pandas.core.arrays.floating
import time:        74 |         74 |                 pandas.core.indexes
import time:       370 |        370 |                 pandas._libs.index
import time:       335 |        335 |                 pandas._libs.join
import time:       314 |        314 |                         pandas._libs.sparse
import time:       152 |        152 |                         pandas.core.arrays.sparse.dtype
import time:       227 |        227 |                         pandas.io.formats.printing
import time:       320 |       1012 |                       pandas.core.arrays.sparse.array
import time:       192 |       1203 |                     pandas.core.arrays.sparse.accessor
import time:        87 |       1290 |                   pandas.core.arrays.sparse
import time:       150 |       1440 |                 pandas.core.dtypes.concat
import time:       106 |        106 |                 pandas.core.array_algos.putmask
import time:       105 |        105 |                 pandas.core.indexes.frozen
import time:      1726 |       4153 |               pandas.core.indexes.base
import time:       793 |       4946 |             pandas.core.arrays.interval
import time:       412 |        412 |             pandas.core.arrays.numpy_
import time:       754 |        754 |             pandas.core.arrays.period
import time:       382 |        382 |             pandas.core.arrays.string_
import time:       321 |        321 |             pandas.core.arrays.string_arrow
import time:       350 |        350 |             pandas.core.arrays.timedeltas
import time:       183 |      74744 |           pandas.core.arrays
import time:       126 |        126 |           pandas.core.flags
import time:       316 |        316 |               pandas._libs.reduction
import time:       317 |        317 |                     pandas.core.indexes.extension
import time:       339 |        656 |                   pandas.core.indexes.category
import time:       338 |        338 |                       pandas.core.indexes.numeric
import time:       114 |        114 |                       pandas.core.tools.timedeltas
import time:       478 |        928 |                     pandas.core.indexes.datetimelike
import time:        98 |         98 |                     pandas.core.tools.times
import time:       695 |       1719 |                   pandas.core.indexes.datetimes
import time:      1061 |       1061 |                     pandas.core.indexes.multi
import time:       176 |        176 |                     pandas.core.indexes.timedeltas
import time:       588 |       1824 |                   pandas.core.indexes.interval
import time:       324 |        324 |                   pandas.core.indexes.period
import time:       857 |        857 |                   pandas.core.indexes.range
import time:       152 |       5531 |                 pandas.core.indexes.api
import time:       143 |       5673 |               pandas.core.aggregation
import time:       405 |        405 |               pandas.core.apply
import time:       230 |        230 |                     pandas._libs.indexing
import time:      1093 |       1322 |                   pandas.core.indexing
import time:        82 |         82 |                       pandas.core.reshape
import time:       184 |        184 |                             backports_abc
import time:       487 |        670 |                           pandas._libs.internals
import time:       241 |        241 |                             pandas._libs.writers
import time:       144 |        144 |                             pandas.core.array_algos.quantile
import time:       158 |        158 |                             pandas.core.array_algos.replace
import time:       652 |       1193 |                           pandas.core.internals.blocks
import time:       123 |       1986 |                         pandas.core.internals.api
import time:       173 |        173 |                           pandas.core.internals.base
import time:       442 |        615 |                         pandas.core.internals.array_manager
import time:       252 |        252 |                             pandas.core.internals.ops
import time:       417 |        669 |                           pandas.core.internals.managers
import time:       203 |        871 |                         pandas.core.internals.concat
import time:       100 |       3570 |                       pandas.core.internals
import time:       225 |       3876 |                     pandas.core.reshape.concat
import time:       238 |        238 |                         gzip
import time:       860 |       1097 |                       pandas.io.common
import time:       670 |       1767 |                     pandas.io.formats.format
import time:       196 |       5838 |                   pandas.core.describe
import time:       228 |        228 |                   pandas.core.internals.construction
import time:        90 |         90 |                   pandas.core.shared_docs
import time:        73 |         73 |                         pandas._libs.window
import time:       330 |        403 |                       pandas._libs.window.aggregations
import time:       140 |        140 |                       pandas.core.util.numba_
import time:        91 |         91 |                       pandas.core.window.common
import time:       186 |        186 |                       pandas.core.window.doc
import time:       282 |        282 |                         pandas._libs.window.indexers
import time:       301 |        582 |                       pandas.core.window.indexers
import time:       130 |        130 |                       pandas.core.window.numba_
import time:       161 |        161 |                       pandas.core.window.online
import time:      1133 |       1133 |                       pandas.core.window.rolling
import time:       427 |       3249 |                     pandas.core.window.ewm
import time:       558 |        558 |                     pandas.core.window.expanding
import time:        94 |       3901 |                   pandas.core.window
import time:      4291 |      15669 |                 pandas.core.generic
import time:        88 |         88 |                   pandas.core.reshape.util
import time:       318 |        406 |                 pandas.core.reshape.melt
import time:       253 |        253 |                   pandas._libs.reshape
import time:       438 |        438 |                   pandas.core.indexes.accessors
import time:        98 |         98 |                     pandas.arrays
import time:       310 |        408 |                   pandas.core.tools.datetimes
import time:       864 |        864 |                     pandas.plotting._core
import time:       138 |        138 |                     pandas.plotting._misc
import time:       104 |       1105 |                   pandas.plotting
import time:      2323 |       4526 |                 pandas.core.series
import time:       359 |        359 |                 pandas.io.formats.info
import time:     14559 |      35516 |               pandas.core.frame
import time:       211 |        211 |               pandas.core.groupby.base
import time:       386 |        386 |                 pandas._libs.groupby
import time:       136 |        136 |                 pandas.core.groupby.numba_
import time:        82 |         82 |                     pandas.core.groupby.categorical
import time:       235 |        316 |                   pandas.core.groupby.grouper
import time:       449 |        765 |                 pandas.core.groupby.ops
import time:      1632 |       2918 |               pandas.core.groupby.groupby
import time:      1375 |      46412 |             pandas.core.groupby.generic
import time:        95 |      46506 |           pandas.core.groupby
import time:       158 |     123577 |         pandas.core.api
import time:       130 |        130 |         pandas.tseries.api
import time:        89 |         89 |                 pandas.core.computation.common
import time:       154 |        243 |               pandas.core.computation.align
import time:       272 |        272 |                     pprint
import time:       193 |        193 |                     pandas.compat.chainmap
import time:       270 |        734 |                   pandas.core.computation.scope
import time:       366 |       1100 |                 pandas.core.computation.ops
import time:       139 |        139 |                 pandas.core.computation.parsing
import time:      1032 |       2269 |               pandas.core.computation.expr
import time:       243 |       2754 |             pandas.core.computation.engines
import time:       150 |       2903 |           pandas.core.computation.eval
import time:        93 |       2995 |         pandas.core.computation.api
import time:       794 |        794 |           pandas.core.reshape.merge
import time:       725 |        725 |           pandas.core.reshape.pivot
import time:       305 |        305 |           pandas.core.reshape.reshape
import time:       193 |        193 |           pandas.core.reshape.tile
import time:       169 |       2184 |         pandas.core.reshape.api
import time:       149 |        149 |           pandas.api.extensions
import time:        92 |         92 |           pandas.api.indexers
import time:       100 |        100 |             pandas.core.dtypes.api
import time:       100 |        200 |           pandas.api.types
import time:       148 |        588 |         pandas.api
import time:       133 |        133 |         pandas.util._print_versions
import time:       105 |        105 |           pandas.io.clipboards
import time:       170 |        170 |                 backports_abc
import time:       564 |        733 |               pandas._libs.parsers
import time:       152 |        152 |               pandas.io.excel._util
import time:       145 |        145 |                     pandas.io.date_converters
import time:      1257 |       1401 |                   pandas.io.parsers.base_parser
import time:       185 |        185 |                   pandas.io.parsers.c_parser_wrapper
import time:       314 |        314 |                   pandas.io.parsers.python_parser
import time:      1118 |       3017 |                 pandas.io.parsers.readers
import time:       108 |       3125 |               pandas.io.parsers
import time:       189 |        189 |               pandas.io.excel._odfreader
import time:       308 |        308 |               pandas.io.excel._openpyxl
import time:       130 |        130 |               pandas.io.excel._pyxlsb
import time:       121 |        121 |               pandas.io.excel._xlrd
import time:       833 |       5587 |             pandas.io.excel._base
import time:       187 |        187 |               pandas._libs.json
import time:       131 |        131 |                 pandas.io.formats._color_data
import time:       173 |        173 |                 pandas.io.formats.css
import time:       430 |        734 |               pandas.io.formats.excel
import time:       185 |       1105 |             pandas.io.excel._odswriter
import time:       183 |        183 |             pandas.io.excel._xlsxwriter
import time:       135 |        135 |             pandas.io.excel._xlwt
import time:       118 |       7126 |           pandas.io.excel
import time:       242 |        242 |           pandas.io.feather_format
import time:       109 |        109 |           pandas.io.gbq
import time:       516 |        516 |           pandas.io.html
import time:       495 |        495 |               pandas.io.json._normalize
import time:       121 |        121 |               pandas.io.json._table_schema
import time:       675 |       1290 |             pandas.io.json._json
import time:       112 |       1402 |           pandas.io.json
import time:        84 |         84 |           pandas.io.orc
import time:       293 |        293 |           pandas.io.parquet
import time:       170 |        170 |             pandas.compat.pickle_compat
import time:       234 |        404 |           pandas.io.pickle
import time:       370 |        370 |             pandas.core.computation.pytables
import time:      1355 |       1724 |           pandas.io.pytables
import time:       145 |        145 |             pandas.io.sas.sasreader
import time:       104 |        248 |           pandas.io.sas
import time:        84 |         84 |           pandas.io.spss
import time:       541 |        541 |           pandas.io.sql
import time:      1035 |       1035 |           pandas.io.stata
import time:       524 |        524 |           pandas.io.xml
import time:       194 |      14623 |         pandas.io.api
import time:       120 |        120 |         pandas.util._tester
import time:       201 |        201 |               pandas._testing._random
import time:       148 |        148 |               pandas._testing.contexts
import time:       190 |        538 |             pandas._testing._io
import time:        98 |         98 |             pandas._testing._warnings
import time:       145 |        145 |                 cmath
import time:       179 |        323 |               pandas._libs.testing
import time:       204 |        527 |             pandas._testing.asserters
import time:        81 |         81 |             pandas._testing.compat
import time:       472 |       1714 |           pandas._testing
import time:        78 |       1791 |         pandas.testing
import time:        76 |         76 |         pandas._version
import time:       326 |     180708 |       pandas
import time:       126 |        126 |           backports_abc
import time:       823 |        823 |           typing_extensions
import time:       117 |        117 |             backports_abc
import time:       111 |        111 |               backports_abc
import time:       109 |        109 |                 backports_abc
import time:       565 |        673 |               pydantic.typing
import time:      1573 |       2356 |             pydantic.errors
import time:       107 |        107 |               backports_abc
import time:       101 |        101 |                 backports_abc
import time:       209 |        310 |               pydantic.version
import time:       915 |       1331 |             pydantic.utils
import time:       529 |       4332 |           pydantic.class_validators
import time:       410 |        410 |           pydantic.config
import time:       100 |        100 |             backports_abc
import time:       853 |        853 |               ipaddress
import time:       106 |        106 |                 backports_abc
import time:       106 |        106 |                 colorsys
import time:       507 |        719 |               pydantic.color
import time:       106 |        106 |                 backports_abc
import time:        99 |         99 |                   backports_abc
import time:      1450 |       1450 |                   pydantic.datetime_parse
import time:       517 |       2065 |                 pydantic.validators
import time:       952 |       3123 |               pydantic.networks
import time:       105 |        105 |                 backports_abc
import time:      1460 |       1564 |               pydantic.types
import time:       241 |       6498 |             pydantic.json
import time:       419 |       7015 |           pydantic.error_wrappers
import time:       106 |        106 |             backports_abc
import time:       620 |        725 |           pydantic.fields
import time:       105 |        105 |             backports_abc
import time:       262 |        262 |             pydantic.parse
import time:       313 |        313 |               backports_abc
import time:       610 |        922 |             pydantic.schema
import time:      1503 |       2790 |           pydantic.main
import time:       644 |      16860 |         pydantic.dataclasses
import time:       105 |        105 |           backports_abc
import time:       265 |        370 |         pydantic.annotated_types
import time:       268 |        268 |         pydantic.decorator
import time:       102 |        102 |           backports_abc
import time:       647 |        748 |         pydantic.env_settings
import time:       238 |        238 |         pydantic.tools
import time:       301 |      18783 |       pydantic
import time:       100 |        100 |       bson
import time:       196 |        196 |               ruamel.yaml.compat
import time:       348 |        544 |             ruamel.yaml.error
import time:       157 |        157 |               ruamel.yaml.util
import time:       175 |        331 |             ruamel.yaml.reader
import time:       360 |        360 |               ruamel.yaml.tokens
import time:       427 |        786 |             ruamel.yaml.scanner
import time:       222 |        222 |               ruamel.yaml.events
import time:        83 |         83 |                   ruamel.yaml.anchor
import time:       164 |        247 |                 ruamel.yaml.scalarstring
import time:       591 |        838 |               ruamel.yaml.comments
import time:       285 |       1343 |             ruamel.yaml.parser
import time:       130 |        130 |               ruamel.yaml.nodes
import time:       135 |        265 |             ruamel.yaml.composer
import time:       155 |        155 |               ruamel.yaml.scalarint
import time:       115 |        115 |               ruamel.yaml.scalarfloat
import time:        94 |         94 |               ruamel.yaml.scalarbool
import time:        90 |         90 |               ruamel.yaml.timestamp
import time:       436 |        888 |             ruamel.yaml.constructor
import time:       898 |        898 |             ruamel.yaml.emitter
import time:       158 |        158 |             ruamel.yaml.serializer
import time:       303 |        303 |             ruamel.yaml.representer
import time:       291 |       5803 |           _ruamel_yaml
import time:       276 |        276 |           ruamel.yaml.resolver
import time:       233 |       6311 |         ruamel.yaml.cyaml
import time:       179 |        179 |           ruamel.yaml.loader
import time:       151 |        151 |           ruamel.yaml.dumper
import time:       389 |        718 |         ruamel.yaml.main
import time:       253 |       7281 |       ruamel.yaml
import time:       389 |     208011 |     monty.json
import time:       190 |        190 |       monty.io
import time:        80 |         80 |       monty.msgpack
import time:        96 |         96 |         msgpack._version
import time:       147 |        147 |         msgpack.exceptions
import time:       204 |        204 |         msgpack.ext
import time:       187 |        187 |         msgpack._cmsgpack
import time:       146 |        777 |       msgpack
import time:       116 |       1162 |     monty.serialization
import time:       123 |        123 |     dpdata.md.pbc
import time:       462 |        462 |       importlib.metadata
import time:        75 |         75 |         dpdata.siesta
import time:       120 |        195 |       dpdata.siesta.aiMD_output
import time:        80 |         80 |       dpdata.siesta.output
import time:        82 |         82 |         dpdata.plugin
import time:       134 |        216 |       dpdata.format
import time:        68 |         68 |         dpdata.xyz
import time:       141 |        208 |       dpdata.xyz.quip_gap_xyz
import time:        98 |         98 |       dpdata.xyz.xyz
import time:        68 |         68 |         dpdata.pwmat
import time:       938 |        938 |         dpdata.periodic_table
import time:       130 |       1135 |       dpdata.pwmat.atomconfig
import time:       131 |        131 |       dpdata.pwmat.movement
import time:        86 |         86 |         dpdata.pymatgen
import time:       146 |        146 |           pymatgen
import time:        97 |         97 |             monty.fractions
import time:       256 |        256 |                         scipy._lib._testutils
import time:       214 |        470 |                       scipy._lib
import time:       186 |        656 |                     scipy._lib.deprecation
import time:       155 |        155 |                     scipy.__config__
import time:        88 |         88 |                     scipy.version
import time:        76 |         76 |                     scipy._distributor_init
import time:       370 |        370 |                     scipy._lib._pep440
import time:       375 |        375 |                       scipy._lib._ccallback_c
import time:       199 |        573 |                     scipy._lib._ccallback
import time:      2843 |       4757 |                   scipy
import time:      3630 |       3630 |                   scipy.constants.codata
import time:       200 |        200 |                   scipy.constants.constants
import time:       723 |       9309 |                 scipy.constants
import time:       595 |       9903 |               pymatgen.core.units
import time:       106 |        106 |                 pymatgen.util
import time:       632 |        632 |                 fractions
import time:       203 |        940 |               pymatgen.util.string
import time:     12333 |      23176 |             pymatgen.core.periodic_table
import time:       526 |      23798 |           pymatgen.core.composition
import time:       243 |        243 |                   multiprocessing.process
import time:       208 |        208 |                   multiprocessing.reduction
import time:       429 |        879 |                 multiprocessing.context
import time:       159 |       1037 |               multiprocessing
import time:       171 |       1208 |             monty.dev
import time:        69 |         69 |                 pymatgen.util.numpy
import time:       388 |        456 |               pymatgen.util.coord_cython
import time:       208 |        664 |             pymatgen.util.coord
import time:       110 |        110 |             pymatgen.util.num
import time:       189 |        189 |                 numpy.typing._nested_sequence
import time:        74 |         74 |                 numpy.typing._nbit
import time:       687 |        687 |                 numpy.typing._char_codes
import time:       217 |        217 |                 numpy.typing._scalars
import time:       100 |        100 |                 numpy.typing._shape
import time:       189 |        189 |                   numpy.typing._generic_alias
import time:      1111 |       1299 |                 numpy.typing._dtype_like
import time:      1218 |       1218 |                 numpy.typing._array_like
import time:       390 |        390 |                 numpy.typing._add_docstring
import time:       319 |       4489 |               numpy.typing
import time:       246 |       4734 |             pymatgen.util.typing
import time:       460 |       7175 |           pymatgen.core.lattice
import time:        84 |         84 |               pymatgen.electronic_structure
import time:       463 |        546 |             pymatgen.electronic_structure.core
import time:       308 |        854 |           pymatgen.core.operations
import time:       248 |        248 |           pymatgen.core.sites
import time:       167 |        167 |                   wcwidth.table_wide
import time:       157 |        157 |                   wcwidth.table_zero
import time:        70 |         70 |                   wcwidth.unicode_versions
import time:       165 |        557 |                 wcwidth.wcwidth
import time:       119 |        675 |               wcwidth
import time:       623 |        623 |                 html.entities
import time:       315 |        937 |               html
import time:      1428 |       3039 |             tabulate
import time:       300 |        300 |             pymatgen.core.bonds
import time:        97 |         97 |               pymatgen.symmetry
import time:       446 |        446 |                   _sqlite3
import time:       244 |        690 |                 sqlite3.dbapi2
import time:       102 |        791 |               sqlite3
import time:       130 |        130 |               monty.design_patterns
import time:     12118 |      12118 |               pymatgen.symmetry.groups
import time:       175 |        175 |               pymatgen.symmetry.settings
import time:       315 |      13622 |             pymatgen.symmetry.maggroups
import time:      3270 |      20231 |           pymatgen.core.structure
import time:       483 |      52932 |         pymatgen.core
import time:       149 |      53166 |       dpdata.pymatgen.molecule
import time:       285 |        285 |         lmp
import time:       295 |        579 |       dpdata.lammps.dump
import time:       113 |        113 |       dpdata.lammps.lmp
import time:       873 |        873 |       dpdata.driver
import time:       146 |        146 |               ase.data.vdw
import time:       285 |        430 |             ase.data
import time:       224 |        654 |           ase.atom
import time:       176 |        176 |             ase.units
import time:       497 |        497 |                   ase.formula
import time:       373 |        870 |                 ase.utils
import time:       179 |       1048 |               ase.utils.arraywrapper
import time:       738 |       1786 |             ase.cell
import time:       121 |        121 |             ase.stress
import time:       125 |        125 |               ase.geometry.cell
import time:       126 |        126 |                 ase.geometry.minkowski_reduction
import time:       133 |        259 |               ase.geometry.geometry
import time:        74 |         74 |               ase.geometry.distance
import time:       102 |        558 |             ase.geometry
import time:       199 |        199 |             ase.symbols
import time:       597 |       3436 |           ase.atoms
import time:       176 |        176 |           ase.parallel
import time:       159 |       4424 |         ase
import time:        71 |         71 |             ase.calculators
import time:       306 |        306 |               ase.outputs
import time:       151 |        151 |               ase.calculators.abc
import time:       496 |        952 |             ase.calculators.calculator
import time:       204 |       1226 |           ase.calculators.singlepoint
import time:       379 |        379 |                   scipy.linalg._fblas
import time:        72 |         72 |                   scipy.linalg._cblas
import time:        30 |         30 |                   scipy.linalg._fblas_64
import time:       208 |        689 |                 scipy.linalg.blas
import time:       608 |        608 |                   scipy.linalg._flapack
import time:        52 |         52 |                   scipy.linalg._clapack
import time:        30 |         30 |                   scipy.linalg._flapack_64
import time:       347 |        347 |                   scipy._lib._util
import time:       973 |       2007 |                 scipy.linalg.lapack
import time:       166 |       2860 |               scipy.linalg.misc
import time:       152 |        152 |                   scipy.linalg._flinalg
import time:       137 |        289 |                 scipy.linalg.flinalg
import time:       217 |        217 |                 scipy.linalg.decomp
import time:       107 |        107 |                 scipy.linalg.decomp_svd
import time:       197 |        197 |                 scipy.linalg._solve_toeplitz
import time:       285 |       1093 |               scipy.linalg.basic
import time:       100 |        100 |               scipy.linalg.decomp_lu
import time:        95 |         95 |               scipy.linalg._decomp_ldl
import time:        87 |         87 |               scipy.linalg.decomp_cholesky
import time:        98 |         98 |               scipy.linalg.decomp_qr
import time:        98 |         98 |               scipy.linalg._decomp_qz
import time:       198 |        198 |               scipy.linalg.decomp_schur
import time:        85 |         85 |               scipy.linalg._decomp_polar
import time:       149 |        149 |                 scipy.linalg.special_matrices
import time:        99 |         99 |                 scipy.linalg._expm_frechet
import time:       194 |        194 |                   scipy.linalg._matfuncs_sqrtm_triu
import time:       110 |        304 |                 scipy.linalg._matfuncs_sqrtm
import time:       223 |        773 |               scipy.linalg.matfuncs
import time:       145 |        145 |               scipy.linalg._solvers
import time:        69 |         69 |               scipy.linalg._procrustes
import time:       281 |        281 |                 scipy.linalg.cython_blas
import time:       906 |        906 |                 scipy.linalg.cython_lapack
import time:       219 |       1405 |               scipy.linalg._decomp_update
import time:       133 |        133 |                     scipy.sparse.sputils
import time:       378 |        510 |                   scipy.sparse.base
import time:       853 |        853 |                     scipy.sparse._sparsetools
import time:       198 |        198 |                       scipy.sparse.data
import time:       148 |        148 |                       scipy.sparse.dia
import time:       119 |        119 |                       scipy.sparse._index
import time:       454 |        917 |                     scipy.sparse.compressed
import time:       151 |       1920 |                   scipy.sparse.csr
import time:       118 |        118 |                   scipy.sparse.csc
import time:       477 |        477 |                     scipy.sparse._csparsetools
import time:       652 |       1129 |                   scipy.sparse.lil
import time:       212 |        212 |                   scipy.sparse.dok
import time:       164 |        164 |                   scipy.sparse.coo
import time:       245 |        245 |                   scipy.sparse.bsr
import time:       156 |        156 |                   scipy.sparse.construct
import time:        78 |         78 |                   scipy.sparse.extract
import time:        78 |         78 |                   scipy.sparse._matrix_io
import time:       117 |        117 |                     scipy.sparse.csgraph._laplacian
import time:       157 |        157 |                         scipy.sparse.csgraph._tools
import time:       108 |        265 |                       scipy.sparse.csgraph._validation
import time:       242 |        507 |                     scipy.sparse.csgraph._shortest_path
import time:       150 |        150 |                     scipy.sparse.csgraph._traversal
import time:       189 |        189 |                     scipy.sparse.csgraph._min_spanning_tree
import time:       261 |        261 |                     scipy.sparse.csgraph._flow
import time:       197 |        197 |                     scipy.sparse.csgraph._matching
import time:       188 |        188 |                     scipy.sparse.csgraph._reordering
import time:       143 |       1749 |                   scipy.sparse.csgraph
import time:       293 |       6645 |                 scipy.sparse
import time:       102 |       6746 |               scipy.linalg._sketches
import time:       126 |        126 |               scipy.linalg._decomp_cossin
import time:       246 |      14218 |             scipy.linalg
import time:       121 |        121 |             ase.utils.parsemath
import time:       818 |      15155 |           ase.constraints
import time:       208 |        208 |           ase.io.jsonio
import time:       186 |        186 |           ase.io.pickletrajectory
import time:       281 |      17055 |         ase.io.trajectory
import time:       275 |        275 |           ase.io.ulm
import time:       250 |        525 |         ase.io.bundletrajectory
import time:       246 |        246 |         ase.io.netcdftrajectory
import time:       673 |        673 |         ase.io.formats
import time:       132 |      23052 |       ase.io
import time:        79 |         79 |         dpdata.cp2k
import time:       197 |        197 |         dpdata.unit
import time:        83 |         83 |         dpdata.cp2k.cell
import time:       401 |        759 |       dpdata.cp2k.output
import time:        72 |         72 |         dpdata.gaussian
import time:       176 |        176 |             swig_runtime_data4
import time:      8634 |       8810 |           openbabel.openbabel
import time:       196 |       9006 |         openbabel
import time:       233 |       9309 |       dpdata.gaussian.gjf
import time:       192 |        192 |       dpdata.gaussian.log
import time:      1198 |       1198 |         h5py._errors
import time:       569 |        569 |             h5py.defs
import time:       209 |        209 |             h5py._objects
import time:       116 |        116 |             h5py.h5py_warnings
import time:       225 |       1118 |           h5py.h5
import time:       263 |       1381 |         h5py.version
import time:       167 |        167 |           h5py.h5r
import time:       126 |        126 |                 h5py.utils
import time:       265 |        391 |               h5py.h5s
import time:       121 |        121 |               h5py.h5ac
import time:       623 |       1134 |             h5py.h5p
import time:       899 |       2033 |           h5py.h5t
import time:       275 |       2474 |         h5py._conv
import time:       186 |        186 |         h5py.h5z
import time:       132 |        132 |           h5py._proxy
import time:       259 |        391 |         h5py.h5a
import time:       370 |        370 |         h5py.h5d
import time:       190 |        190 |         h5py.h5ds
import time:       312 |        312 |           h5py.h5g
import time:       163 |        163 |           h5py.h5i
import time:       298 |        772 |         h5py.h5f
import time:       218 |        218 |         h5py.h5fd
import time:       131 |        131 |         h5py.h5pl
import time:        98 |         98 |         h5py._hl
import time:        82 |         82 |           h5py._hl.compat
import time:       284 |        366 |         h5py._hl.filters
import time:       475 |        475 |         h5py._hl.base
import time:       252 |        252 |             h5py.h5o
import time:       219 |        219 |             h5py.h5l
import time:       160 |        160 |                 backports_abc
import time:       388 |        547 |               h5py._selector
import time:       201 |        201 |               h5py._hl.selections
import time:        99 |         99 |               h5py._hl.selections2
import time:       100 |        100 |               h5py._hl.datatype
import time:       235 |        235 |               h5py._hl.vds
import time:       430 |       1610 |             h5py._hl.dataset
import time:       410 |       2489 |           h5py._hl.group
import time:       278 |       2767 |         h5py._hl.files
import time:       176 |        176 |         h5py._hl.attrs
import time:       429 |      11614 |       h5py
import time:       101 |        101 |         dpdata.deepmd
import time:        84 |         84 |         dpdata.deepmd.raw
import time:       175 |        359 |       dpdata.deepmd.comp
import time:       553 |        553 |             wcmatch.__meta__
import time:       113 |        666 |           wcmatch
import time:       380 |        380 |             bracex.__meta__
import time:       700 |       1079 |           bracex
import time:       791 |        791 |             wcmatch.util
import time:       109 |        109 |             wcmatch.posix
import time:       938 |        938 |             wcmatch._wcmatch
import time:      5316 |       7153 |           wcmatch._wcparse
import time:      1273 |      10169 |         wcmatch.glob
import time:       151 |      10320 |       dpdata.deepmd.hdf5
import time:       242 |        242 |       dpdata.deepmd.mixed
import time:       102 |        102 |         dpdata.fhi_aims
import time:       183 |        284 |       dpdata.fhi_aims.output
import time:      2559 |       2559 |           rdkit.rdBase
import time:       228 |       2787 |         rdkit
import time:        98 |         98 |           rdkit.RDPaths
import time:       160 |        160 |           pyPgSQL
import time:       194 |        451 |         rdkit.RDConfig
import time:      4763 |       4763 |           rdkit.DataStructs.cDataStructs
import time:       160 |       4923 |         rdkit.DataStructs
import time:      1427 |       1427 |           rdkit.Geometry.rdGeometry
import time:       159 |       1585 |         rdkit.Geometry
import time:      8377 |       8377 |         rdkit.Chem.rdchem
import time:      6005 |       6005 |         rdkit.Chem.rdmolfiles
import time:      6171 |       6171 |         rdkit.Chem.rdmolops
import time:       573 |        573 |         rdkit.Chem.rdCIPLabeler
import time:      1347 |       1347 |           rdkit.Chem.rdinchi
import time:       193 |        193 |           rdkit.RDLogger
import time:       277 |       1815 |         rdkit.Chem.inchi
import time:       764 |        764 |         rdkit.Chem.rdMolInterchange
import time:       703 |        703 |         rdkit.Chem.rdCoordGen
import time:       396 |      34545 |       rdkit.Chem
import time:       122 |        122 |         dpdata.rdkit
import time:       187 |        309 |       dpdata.rdkit.utils
import time:        79 |         79 |         dpdata.amber
import time:       106 |        106 |                 scipy._lib.doccer
import time:        82 |         82 |                 scipy.io.matlab.byteordercodes
import time:       268 |        455 |               scipy.io.matlab.miobase
import time:       164 |        164 |                 scipy.io.matlab.mio_utils
import time:       303 |        467 |               scipy.io.matlab.mio4
import time:       193 |        193 |                   scipy.io.matlab.streams
import time:       306 |        306 |                   scipy.io.matlab.mio5_params
import time:       314 |        811 |                 scipy.io.matlab.mio5_utils
import time:       510 |       1321 |               scipy.io.matlab.mio5
import time:       324 |       2565 |             scipy.io.matlab.mio
import time:       129 |       2694 |           scipy.io.matlab
import time:       287 |        287 |           scipy.io.netcdf
import time:       159 |        159 |           scipy.io._fortran
import time:       283 |        283 |           scipy.io.mmio
import time:       234 |        234 |           scipy.io.idl
import time:       163 |        163 |               scipy.io.harwell_boeing._fortran_format_parser
import time:       229 |        392 |             scipy.io.harwell_boeing.hb
import time:        96 |        488 |           scipy.io.harwell_boeing
import time:       146 |       4288 |         scipy.io
import time:       107 |        107 |             parmed._version
import time:       403 |        403 |             parmed.exceptions
import time:       172 |        172 |             parmed.periodic_table
import time:       263 |        263 |             parmed.residue
import time:       130 |        130 |                 openmm
import time:        13 |        143 |               openmm.unit
import time:       149 |        149 |                 parmed.unit.mymatrix
import time:       147 |        147 |                 parmed.unit.baseunit
import time:        85 |         85 |                   parmed.unit.basedimension
import time:        86 |        171 |                 parmed.unit.standard_dimensions
import time:       226 |        690 |               parmed.unit.unit
import time:       171 |        171 |               parmed.unit.quantity
import time:        81 |         81 |                   parmed.unit.unit_operators
import time:       119 |        119 |                   parmed.unit.prefix
import time:     29379 |      29578 |                 parmed.unit.unit_definitions
import time:       297 |      29874 |               parmed.unit.unit_math
import time:       647 |        647 |               parmed.unit.constants
import time:      1005 |      32528 |             parmed.unit
import time:       139 |        139 |               parmed.utils.pairlist
import time:       449 |        449 |                 parmed.constants
import time:       135 |        135 |                       openmm
import time:        72 |        207 |                     openmm.vec3
import time:       208 |        414 |                   parmed.vec3
import time:       158 |        572 |                 parmed.geometry
import time:      1831 |       2850 |               parmed.topologyobjects
import time:       235 |       3223 |             parmed.utils
import time:       127 |        127 |                 openmm
import time:       193 |        319 |               parmed.utils.decorators
import time:       163 |        163 |                 parmed.rdkit.rdkit
import time:        95 |        258 |               parmed.rdkit
import time:       104 |        104 |               openmm
import time:       871 |       1550 |             parmed.structure
import time:       144 |        144 |                           urllib.response
import time:       205 |        348 |                         urllib.error
import time:       720 |        720 |                             http
import time:      1098 |       1098 |                               _ssl
import time:      3540 |       4637 |                             ssl
import time:       853 |       6209 |                           http.client
import time:      1170 |       7379 |                         urllib.request
import time:       161 |       7887 |                       parmed.utils.io
import time:       142 |       8029 |                     parmed.formats.registry
import time:       357 |        357 |                           parmed.modeller.residue
import time:      2703 |       2703 |                           parmed.amber.offlib
import time:     14092 |      14092 |                           parmed.modeller.standardtemplates
import time:       171 |      17321 |                         parmed.modeller
import time:        25 |      17346 |                       parmed.modeller.residue
import time:       366 |      17711 |                     parmed.formats.mol2
import time:       427 |        427 |                       ftplib
import time:       320 |        320 |                           parmed.formats.pdbx.PdbxContainers
import time:       315 |        635 |                         parmed.formats.pdbx.PdbxReader
import time:       144 |        144 |                         parmed.formats.pdbx.PdbxWriter
import time:       155 |        933 |                       parmed.formats.pdbx
import time:       102 |        102 |                       parmed.symmetry
import time:      1005 |       2465 |                     parmed.formats.pdb
import time:       220 |        220 |                     parmed.formats.pqr
import time:       586 |        586 |                           parmed.charmm.psf
import time:       175 |        175 |                             parmed.parameters
import time:       141 |        141 |                             parmed.charmm._charmmfile
import time:       496 |        812 |                           parmed.charmm.parameters
import time:       211 |        211 |                           parmed.charmm.charmmcrds
import time:       132 |       1740 |                         parmed.charmm
import time:        19 |       1759 |                       parmed.charmm.psf
import time:       190 |       1948 |                     parmed.formats.psf
import time:       123 |        123 |                     parmed.formats.sdf
import time:       140 |      30632 |                   parmed.formats
import time:        17 |      30648 |                 parmed.formats.registry
import time:       195 |        195 |                         cmd
import time:       285 |        285 |                         bdb
import time:       149 |        149 |                           codeop
import time:       174 |        322 |                         code
import time:       613 |       1413 |                       pdb
import time:       105 |        105 |                         parmed.utils.fortranformat._exceptions
import time:       457 |        561 |                       parmed.utils.fortranformat._edit_descriptors
import time:       122 |        122 |                       parmed.utils.fortranformat._misc
import time:       131 |        131 |                       parmed.utils.fortranformat.config
import time:       191 |       2416 |                     parmed.utils.fortranformat._input
import time:       153 |        153 |                       parmed.utils.fortranformat._lexer
import time:       171 |        324 |                     parmed.utils.fortranformat._parser
import time:       169 |       2908 |                   parmed.utils.fortranformat.FortranRecordReader
import time:       177 |        177 |                     parmed.utils.fortranformat._output
import time:       128 |        305 |                   parmed.utils.fortranformat.FortranRecordWriter
import time:       114 |       3326 |                 parmed.utils.fortranformat
import time:       792 |      34765 |               parmed.amber.amberformat
import time:       434 |        434 |               parmed.amber.asciicrd
import time:       277 |        277 |               parmed.amber.mask
import time:       254 |        254 |                     backports_abc
import time:       852 |        852 |                     netCDF4.utils
import time:       109 |        109 |                     netCDF4.sys
import time:        42 |         42 |                     netCDF4.posixpath
import time:        38 |         38 |                     netCDF4.cftime
import time:      2545 |       2545 |                       cftime._cftime
import time:       351 |       2895 |                     cftime
import time:        91 |         91 |                     netCDF4.numpy
import time:        50 |         50 |                     netCDF4.weakref
import time:        48 |         48 |                     netCDF4.warnings
import time:        47 |         47 |                     netCDF4.subprocess
import time:        45 |         45 |                     netCDF4.pathlib
import time:        44 |         44 |                     netCDF4.glob
import time:        44 |         44 |                     netCDF4.numpy
import time:      5043 |       9596 |                   netCDF4._netCDF4
import time:       266 |       9861 |                 netCDF4
import time:       501 |        501 |                 parmed.utils.netcdf
import time:       338 |      10700 |               parmed.amber.netcdffiles
import time:      3139 |       3139 |               parmed.amber.parameters
import time:       255 |        255 |                   openmm
import time:       631 |        885 |                 parmed.amber._amberparm
import time:       246 |        246 |                 parmed.amber._chamberparm
import time:       371 |        371 |                 parmed.amber._tinkerparm
import time:       206 |       1708 |               parmed.amber.readparm
import time:       743 |        743 |               parmed.amber.titratable_residues
import time:       224 |      51986 |             parmed.amber
import time:       754 |        754 |                   parmed.gromacs._cpp
import time:       187 |        941 |                 parmed.gromacs._gromacsfile
import time:       959 |       1900 |               parmed.gromacs.gromacstop
import time:       242 |        242 |               parmed.gromacs.gromacsgro
import time:     78553 |      80694 |             parmed.gromacs
import time:       212 |        212 |               parmed.dlpoly.dlpolyfield
import time:       130 |        130 |               parmed.dlpoly.dlpolyconfig
import time:       112 |        452 |             parmed.dlpoly
import time:       180 |        180 |               parmed.namd.namdbinfiles
import time:        95 |        274 |             parmed.namd
import time:       579 |        579 |               parmed.openmm.reporters
import time:       124 |        124 |                 lxml
import time:       169 |        169 |                   backports_abc
import time:       131 |        131 |                     backports_abc
import time:       638 |        769 |                   lxml._elementpath
import time:       117 |        117 |                   rnc2rng
import time:      3598 |       4651 |                 lxml.etree
import time:       409 |       5184 |               parmed.openmm.parameters
import time:       203 |        203 |               parmed.openmm.topsystem
import time:       111 |        111 |               parmed.openmm.utils
import time:       192 |        192 |               parmed.openmm.xmlfile
import time:       120 |       6386 |             parmed.openmm
import time:       105 |        105 |                 pyrosetta
import time:       135 |        239 |               parmed.rosetta.pose
import time:        86 |        325 |             parmed.rosetta
import time:       180 |        180 |               parmed.tinker.tinkerfiles
import time:        80 |        259 |             parmed.tinker
import time:       195 |        195 |                   sierra
import time:        70 |        264 |                 parmed.entos.imports
import time:       213 |        477 |               parmed.entos.converters
import time:        84 |        560 |             parmed.entos
import time:       451 |        451 |                   parmed.tools.exceptions
import time:       240 |        691 |                 parmed.tools.argumentlist
import time:       105 |        105 |                 parmed.tools.parmlist
import time:      1289 |       2084 |               parmed.tools.actions
import time:       120 |       2204 |             parmed.tools
import time:       771 |     182151 |           parmed
import time:        99 |     182249 |         dpdata.amber.mask
import time:       172 |     186787 |       dpdata.amber.md
import time:       160 |        160 |       dpdata.amber.sqm
import time:        95 |         95 |         dpdata.psi4
import time:       186 |        281 |       dpdata.psi4.output
import time:        92 |         92 |         dpdata.qe
import time:       167 |        258 |       dpdata.qe.scf
import time:       173 |        173 |       dpdata.qe.traj
import time:        84 |         84 |         dpdata.gromacs
import time:       159 |        243 |       dpdata.gromacs.gro
import time:       140 |        140 |       dpdata.vasp.outcar
import time:       101 |        101 |       dpdata.vasp.poscar
import time:       112 |        112 |             xml
import time:       756 |        867 |           xml.etree
import time:       434 |        434 |           xml.etree.ElementPath
import time:       343 |        343 |             pyexpat
import time:       499 |        842 |           _elementtree
import time:       586 |       2728 |         xml.etree.ElementTree
import time:       111 |       2838 |       dpdata.vasp.xml
import time:       131 |        131 |       dpdata.utils
import time:        81 |         81 |         dpdata.abacus
import time:       150 |        150 |         dpdata.abacus.scf
import time:       164 |        394 |       dpdata.abacus.md
import time:       102 |        102 |       dpdata.abacus.relax
import time:       275 |        275 |       encodings.cp437
import time:       314 |        314 |       dpdata.data_type
import time:     18046 |     358465 |     dpdata.plugins
import time:      1260 |     651936 |   dpdata.system
import time:       113 |        113 |   dpdata._version
import time:       346 |        346 |     dpdata.rdkit.sanitize
import time:       200 |        546 |   dpdata.bond_order_system
import time:       264 |     653120 | dpdata

@njzjz
Copy link
Member

njzjz commented Aug 29, 2023

@link89 it will be helpful if you show the output of python -X importtime -c 'import dpdata' to let us know which module takes the longest time.

@link89
Copy link
Contributor Author

link89 commented Aug 30, 2023

log.txt
Here is the log.

@njzjz
Copy link
Member

njzjz commented Sep 6, 2023

image

@link89 link89 closed this as completed Oct 17, 2023
@njzjz njzjz reopened this May 1, 2024
njzjz added a commit that referenced this issue May 15, 2024
Do a benchmark before working on #526

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Introduced benchmark tests for import functionality and command line
interface operations.
- **Tests**
	- Added new benchmark tests to assess performance improvements.
- **Chores**
- Integrated `pytest` and `pytest-codspeed` into the project for
enhanced testing capabilities.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
njzjz added a commit to njzjz/dpdata that referenced this issue May 16, 2024
Fix deepmodeling#526.

Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
@njzjz njzjz linked a pull request May 16, 2024 that will close this issue
wanghan-iapcm pushed a commit that referenced this issue May 16, 2024
Fix #526.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit


- **Refactor**
- Removed unnecessary import statements and restructured import handling
for improved code organization and readability.
- Reorganized imports within functions to localize dependencies and
enhance code modularity.

- **New Features**
- Introduced conditional imports based on `TYPE_CHECKING` for better
resource management and efficiency.
- Added a new method `from_dict` to the `System` class for constructing
instances from a data dictionary.

- **Chores**
- Updated linting rules in `pyproject.toml` to include `TID253` for
banned module-level imports.
- Modified import statements in test files to comply with the new
linting rules for better code quality.

- **Style**
- Added `# noqa: TID253` comments to specific import statements to
adhere to new linting rules and ensure clean code styling.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
@njzjz njzjz closed this as completed May 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants