activity-browser icon indicating copy to clipboard operation
activity-browser copied to clipboard

Slow calculations on Mac M1 and M2 processors ( > 2.9.7)

Open tapajyoti-ghosh opened this issue 8 months ago • 4 comments

Updating AB

  • [x] Yes, I have updated AB and still experience this issue

What happened?

Between version 2.9.7 and 2.10.1, there was an update that resulted in extreme slow calculations on Mac m1 and m2 processors. LCA that generally takes 2 seconds or less take around 1 minute. Sankey diagrams take 120 seconds. We have updated our AB but this issue remains. Please help.

Relevant errors


Operating system

Windows 10

Conda environment


tapajyoti-ghosh avatar Apr 21 '25 05:04 tapajyoti-ghosh

Please provide an overview of your Conda environment, you can get one by using the conda list command while the ab environment is active

mrvisscher avatar Apr 23 '25 13:04 mrvisscher

packages in environment at /Users/tghosh/miniconda3/envs/ab:

Name Version Build Channel

activity-browser 2.11.0 pyhd8ed1ab_1 conda-forge annotated-types 0.7.0 pyhd8ed1ab_0 conda-forge appdirs 1.4.4 pyh9f0ad1d_0 conda-forge arrow 1.3.0 pyhd8ed1ab_0 conda-forge asteval 1.0.4 pyhd8ed1ab_0 conda-forge astunparse 1.6.3 pyhd8ed1ab_0 conda-forge blinker 1.8.2 pyhd8ed1ab_0 conda-forge brightway2 2.4.6 pyhd8ed1ab_0 conda-forge brotli 1.1.0 hd74edd7_2 conda-forge brotli-bin 1.1.0 hd74edd7_2 conda-forge brotli-python 1.1.0 py311h3f08180_2 conda-forge brotlicffi 1.1.0.0 py311h3f08180_2 conda-forge bw2analyzer 0.10 pyhd8ed1ab_0 conda-forge bw2calc 1.8.2 py311h267d04e_0 conda-forge bw2data 3.6.6 pyhd8ed1ab_0 conda-forge bw2io 0.8.12 pyhd8ed1ab_0 conda-forge bw2parameters 1.1.0 pyhd8ed1ab_0 conda-forge bw_migrations 0.2 pyhd8ed1ab_0 conda-forge bzip2 1.0.8 h99b78c6_7 conda-forge ca-certificates 2024.12.31 hca03da5_0
certifi 2024.12.14 pyhd8ed1ab_0 conda-forge cffi 1.17.1 py311h3a79f62_0 conda-forge charset-normalizer 3.3.2 pyhd8ed1ab_0 conda-forge click 8.1.7 unix_pyh707e725_0 conda-forge colorama 0.4.6 pyhd8ed1ab_0 conda-forge contourpy 1.3.0 py311h2c37856_1 conda-forge cycler 0.12.1 pyhd8ed1ab_0 conda-forge dill 0.3.8 pyhd8ed1ab_0 conda-forge docopt 0.6.2 py_1 conda-forge ecoinvent_interface 2.4.1 pyhd8ed1ab_0 conda-forge eight 1.0.1 pyhd8ed1ab_4 conda-forge et_xmlfile 1.1.0 pyhd8ed1ab_0 conda-forge fasteners 0.17.3 pyhd8ed1ab_0 conda-forge flask 3.0.3 pyhd8ed1ab_0 conda-forge fonttools 4.54.1 py311h460d6c5_0 conda-forge freetype 2.12.1 hadb7bae_2 conda-forge future 1.0.0 pyhd8ed1ab_0 conda-forge glib 2.80.3 h59d46d9_2 conda-forge glib-tools 2.80.3 h8ba3eef_2 conda-forge gmp 6.3.0 h7bae524_2 conda-forge gst-plugins-base 1.24.7 hb49d354_0 conda-forge gstreamer 1.24.7 hc3f5269_0 conda-forge h2 4.1.0 pyhd8ed1ab_0 conda-forge hpack 4.0.0 pyh9f0ad1d_0 conda-forge hyperframe 6.0.1 pyhd8ed1ab_0 conda-forge icu 75.1 hfee45f7_0 conda-forge idna 3.10 pyhd8ed1ab_0 conda-forge importlib-metadata 8.5.0 pyha770c72_0 conda-forge importlib_metadata 8.5.0 hd8ed1ab_0 conda-forge inflate64 1.0.0 py311h460d6c5_2 conda-forge itsdangerous 2.2.0 pyhd8ed1ab_0 conda-forge jinja2 3.1.4 pyhd8ed1ab_0 conda-forge kiwisolver 1.4.7 py311h2c37856_0 conda-forge krb5 1.21.3 h237132a_0 conda-forge lcms2 2.16 ha0e7c42_0 conda-forge lerc 4.0.0 h9a09cb3_0 conda-forge libblas 3.9.0 24_osxarm64_openblas conda-forge libbrotlicommon 1.1.0 hd74edd7_2 conda-forge libbrotlidec 1.1.0 hd74edd7_2 conda-forge libbrotlienc 1.1.0 hd74edd7_2 conda-forge libcblas 3.9.0 24_osxarm64_openblas conda-forge libclang-cpp15 15.0.7 default_he012953_5 conda-forge libclang13 19.1.0 default_h17c4df3_0 conda-forge libcxx 19.1.0 ha82da77_0 conda-forge libdeflate 1.21 h99b78c6_0 conda-forge libedit 3.1.20230828 h80987f9_0
libexpat 2.6.3 hf9b8971_0 conda-forge libffi 3.4.4 hca03da5_1
libgfortran 5.0.0 13_2_0_hd922786_3 conda-forge libgfortran5 13.2.0 hf226fd6_3 conda-forge libglib 2.80.3 h59d46d9_2 conda-forge libhwloc 2.11.1 default_h7685b71_1000 conda-forge libiconv 1.17 h0d3ecfb_2 conda-forge libintl 0.22.5 h8414b35_3 conda-forge libintl-devel 0.22.5 h8414b35_3 conda-forge libjpeg-turbo 3.0.3 h80987f9_0
liblapack 3.9.0 24_osxarm64_openblas conda-forge libllvm15 15.0.7 h2621b3d_4 conda-forge libllvm19 19.1.0 hbfa8675_0 conda-forge libogg 1.3.5 h99b78c6_0 conda-forge libopenblas 0.3.27 openmp_h517c56d_1 conda-forge libopus 1.3.1 h27ca646_1 conda-forge libpng 1.6.44 hc14010f_0 conda-forge libpq 16.4 h671472c_1 conda-forge libsqlite 3.46.1 hc14010f_0 conda-forge libtiff 4.7.0 h9c1d414_0 conda-forge libvorbis 1.3.7 h9f76cd9_0 conda-forge libwebp-base 1.4.0 h93a5062_0 conda-forge libxcb 1.16 hc9fafa5_1 conda-forge libxml2 2.12.7 h01dff8b_4 conda-forge libxslt 1.1.39 h223e5b9_0 conda-forge libzlib 1.3.1 hfb2fe0b_1 conda-forge llvm-openmp 18.1.8 hde57baf_1 conda-forge lxml 4.9.3 py311hdef8331_3 conda-forge lxmlh 1.3.3 pyhd8ed1ab_0 conda-forge markupsafe 2.1.5 py311h460d6c5_1 conda-forge matplotlib-base 3.9.2 py311hbe3227e_1 conda-forge metis 5.1.0 h13dd4ca_1007 conda-forge mpfr 4.2.1 hb693164_3 conda-forge mrio_common_metadata 0.2.1 pyhd8ed1ab_0 conda-forge multiprocess 0.70.16 py311h460d6c5_1 conda-forge multivolumefile 0.2.3 pyhd8ed1ab_0 conda-forge munkres 1.1.4 pyh9f0ad1d_0 conda-forge mysql-common 9.0.1 h1687695_0 conda-forge mysql-libs 9.0.1 h0e80b4a_0 conda-forge ncurses 6.5 h7bae524_1 conda-forge networkx 3.3 pyhd8ed1ab_1 conda-forge nspr 4.35 hb7217d7_0 conda-forge nss 3.104 hd1ce637_0 conda-forge numpy 1.25.0 pypi_0 pypi openjpeg 2.5.2 h9f1df11_0 conda-forge openpyxl 3.1.5 py311hfb527b5_1 conda-forge openssl 3.4.0 h81ee809_1 conda-forge packaging 24.1 pyhd8ed1ab_0 conda-forge pandas 2.2.3 py311h9cb3ce9_1 conda-forge pathos 0.3.2 pyhd8ed1ab_1 conda-forge patsy 0.5.6 pyhd8ed1ab_0 conda-forge pcre2 10.44 h297a79d_2 conda-forge peewee 3.17.6 py311h0d9efb7_1 conda-forge pillow 10.4.0 py311hc903d1b_1 conda-forge pint 0.21 pyhd8ed1ab_0 conda-forge pip 24.2 pyh8b19718_1 conda-forge platformdirs 4.3.6 pyhd8ed1ab_0 conda-forge pox 0.3.4 pyhd8ed1ab_0 conda-forge ppft 1.7.6.8 pyhd8ed1ab_0 conda-forge psutil 6.0.0 py311h460d6c5_1 conda-forge pthread-stubs 0.4 hd74edd7_1002 conda-forge py7zr 0.22.0 pyhd8ed1ab_0 conda-forge pybcj 1.0.2 py311h460d6c5_1 conda-forge pycasreg 0.1.0 pyhd8ed1ab_0 conda-forge pycparser 2.22 pyhd8ed1ab_0 conda-forge pycryptodomex 3.20.0 py311h460d6c5_1 conda-forge pydantic 2.9.2 pyhd8ed1ab_0 conda-forge pydantic-core 2.23.4 py311h481aa64_0 conda-forge pydantic-settings 2.5.2 pyhd8ed1ab_0 conda-forge pyecospold 3.5.3 pyhd8ed1ab_0 conda-forge pyobjc-core 10.3.1 py311h09e6bbd_1 conda-forge pyobjc-framework-cocoa 10.3.1 py311h09e6bbd_1 conda-forge pyparsing 3.1.4 pyhd8ed1ab_0 conda-forge pyperclip 1.9.0 pyh534df25_0 conda-forge pyppmd 1.1.0 py311h3f08180_1 conda-forge pyprind 2.11.2 py311h267d04e_1006 conda-forge pyside2 5.15.8 py311h737ae55_4 conda-forge pysocks 1.7.1 pyha2e5f31_6 conda-forge python 3.11.10 h739c21a_1_cpython conda-forge python-dateutil 2.9.0post0 py311hca03da5_2
python-dotenv 1.0.1 pyhd8ed1ab_0 conda-forge python-tzdata 2024.2 pyhd8ed1ab_0 conda-forge python_abi 3.11 5_cp311 conda-forge pytz 2024.1 pyhd8ed1ab_0 conda-forge pyxlsb 1.0.10 pyhd8ed1ab_0 conda-forge pyzstd 0.16.1 py311ha60cc69_1 conda-forge qhull 2020.2 h420ef59_5 conda-forge qt-main 5.15.8 h1c95b31_26 conda-forge qt-webengine 5.15.9 h2903aaf_7
readline 8.2 h92ec313_1 conda-forge requests 2.32.3 pyhd8ed1ab_0 conda-forge salib 1.5.0 pyhd8ed1ab_0 conda-forge scikit-umfpack 0.3.3 py311hefe60d2_1 conda-forge scipy 1.15.0 pypi_0 pypi seaborn 0.13.2 hd8ed1ab_2 conda-forge seaborn-base 0.13.2 pyhd8ed1ab_2 conda-forge setuptools 75.1.0 pyhd8ed1ab_0 conda-forge setuptools-scm 8.1.0 pyhd8ed1ab_0 conda-forge six 1.16.0 pyh6c4a22f_0 conda-forge stats_arrays 0.7 pyhd8ed1ab_0 conda-forge statsmodels 0.14.3 py311h0f07fe1_1 conda-forge suitesparse 5.10.1 h79486c6_3 conda-forge tabulate 0.9.0 pyhd8ed1ab_1 conda-forge tbb 2021.13.0 h7b3277c_0 conda-forge texttable 1.7.0 pyhd8ed1ab_0 conda-forge tk 8.6.13 h5083fa2_1 conda-forge tomli 2.0.1 pyhd8ed1ab_0 conda-forge tqdm 4.66.5 pyhd8ed1ab_0 conda-forge types-python-dateutil 2.9.0.20240906 pyhd8ed1ab_0 conda-forge typing-extensions 4.12.2 hd8ed1ab_0 conda-forge typing_extensions 4.12.2 pyha770c72_0 conda-forge tzdata 2024a h8827d51_1 conda-forge unicodecsv 0.14.1 pyhd8ed1ab_2 conda-forge unidecode 1.3.8 pyhd8ed1ab_0 conda-forge urllib3 2.2.3 pyhd8ed1ab_0 conda-forge voluptuous 0.15.2 pyhd8ed1ab_1 conda-forge werkzeug 3.0.4 pyhd8ed1ab_0 conda-forge wheel 0.44.0 pyhd8ed1ab_0 conda-forge whoosh 2.7.4 py311h267d04e_9 conda-forge wrapt 1.16.0 py311h460d6c5_1 conda-forge xlrd 2.0.1 pyhd8ed1ab_3 conda-forge xlsxwriter 3.2.0 pyhd8ed1ab_0 conda-forge xorg-libxau 1.0.11 hd74edd7_1 conda-forge xorg-libxdmcp 1.1.3 hd74edd7_1 conda-forge xz 5.4.6 h80987f9_1
zipfile-deflate64 0.2.0 py311heffc1b2_4 conda-forge zipp 3.20.2 pyhd8ed1ab_0 conda-forge zstandard 0.23.0 py311ha60cc69_1 conda-forge zstd 1.5.6 hb46c0d2_0 conda-forge

tapajyoti-ghosh avatar Apr 30 '25 02:04 tapajyoti-ghosh

And you're saying that calculations used to be quick on these M1/M2 processors before? Because, as far as I know, fast calculations on ARM through scikit-umfpack are only supported by Brightway25.

mrvisscher avatar Apr 30 '25 07:04 mrvisscher

Yes the versions 2.9.7 - I get extremely fast calculation. I have tested on my colleague's M2 and she has the same issue.

tapajyoti-ghosh avatar May 03 '25 05:05 tapajyoti-ghosh