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

meow installation problem #39

Open
lukasc-ubc opened this issue Jul 27, 2024 · 0 comments
Open

meow installation problem #39

lukasc-ubc opened this issue Jul 27, 2024 · 0 comments

Comments

@lukasc-ubc
Copy link

Hello Floris,

I am trying to run meow, and wanted to let you know if the challenges I encountered. See below. Also the "import meow" line takes quite a long time; maybe there are a lot of large dependancies like gdsfactory?

Thank you

On Mac OSX:

lukasc@Lukass-Air klayout_dot_config % pip install meow-sim --upgrade
Requirement already satisfied: meow-sim in /opt/homebrew/lib/python3.10/site-packages (0.11.0)
...

lukasc@Lukass-Air klayout_dot_config % python
Python 3.10.13 (main, Aug 24 2023, 22:43:20) [Clang 14.0.0 (clang-1400.0.29.202)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import meow
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/homebrew/lib/python3.10/site-packages/meow/__init__.py", line 14, in <module>
    from .eme import compute_interface_s_matrices as compute_interface_s_matrices
  File "/opt/homebrew/lib/python3.10/site-packages/meow/eme/__init__.py", line 10, in <module>
    from .sax import compute_s_matrix_sax as compute_s_matrix_sax
  File "/opt/homebrew/lib/python3.10/site-packages/meow/eme/sax.py", line 6, in <module>
    import sax
  File "/opt/homebrew/lib/python3.10/site-packages/sax/__init__.py", line 14, in <module>
    from . import backends as backends
  File "/opt/homebrew/lib/python3.10/site-packages/sax/backends/__init__.py", line 8, in <module>
    from ..netlist import Component
  File "/opt/homebrew/lib/python3.10/site-packages/sax/netlist.py", line 13, in <module>
    import networkx as nx
  File "/opt/homebrew/lib/python3.10/site-packages/networkx/__init__.py", line 100, in <module>
    import networkx.classes.filters
  File "/opt/homebrew/lib/python3.10/site-packages/networkx/classes/__init__.py", line 1, in <module>
    from .graph import Graph
  File "/opt/homebrew/lib/python3.10/site-packages/networkx/classes/graph.py", line 23, in <module>
    from collections import Mapping
ImportError: cannot import name 'Mapping' from 'collections' (/opt/homebrew/Cellar/[email protected]/3.10.13/Frameworks/Python.framework/Versions/3.10/lib/python3.10/collections/__init__.py)
>>> 

upgrading networkx seemed to help:

lukasc@Lukass-Air klayout_dot_config % pip install networkx --upgrade
Requirement already satisfied: networkx in /opt/homebrew/lib/python3.10/site-packages (2.0)
Collecting networkx
  Using cached networkx-3.3-py3-none-any.whl.metadata (5.1 kB)
Using cached networkx-3.3-py3-none-any.whl (1.7 MB)
Installing collected packages: networkx
  Attempting uninstall: networkx
    Found existing installation: networkx 2.0
    Uninstalling networkx-2.0:
      Successfully uninstalled networkx-2.0
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
postman-problems 0.3 requires networkx==2.0, but you have networkx 3.3 which is incompatible.
Successfully installed networkx-3.3

but despite having klujax installed, I get the warning:

lukasc@Lukass-Air klayout_dot_config % pip install klujax
Requirement already satisfied: klujax in /opt/homebrew/lib/python3.10/site-packages (0.2.5)

lukasc@Lukass-Air klayout_dot_config % python                      
Python 3.10.13 (main, Aug 24 2023, 22:43:20) [Clang 14.0.0 (clang-1400.0.29.202)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import meow
/opt/homebrew/lib/python3.10/site-packages/sax/backends/__init__.py:58: UserWarning: klujax not found. Please install klujax for better performance during circuit evaluation!
  warnings.warn(

Then on Python 3.11.1:

lukasc@Lukass-Air GitHub % pip install meow-sim --upgrade
Requirement already satisfied: meow-sim in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (0.11.0)
...

lukasc@Lukass-Air GitHub % python
Python 3.11.1 (main, Apr 14 2024, 12:39:36) [Clang 15.0.0 (clang-1500.0.40.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import meow
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/meow/__init__.py", line 14, in <module>
    from .eme import compute_interface_s_matrices as compute_interface_s_matrices
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/meow/eme/__init__.py", line 10, in <module>
    from .sax import compute_s_matrix_sax as compute_s_matrix_sax
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/meow/eme/sax.py", line 6, in <module>
    import sax
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/sax/__init__.py", line 14, in <module>
    from . import backends as backends
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/sax/backends/__init__.py", line 8, in <module>
    from ..netlist import Component
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/sax/netlist.py", line 22, in <module>
    from .utils import clean_string, hash_dict
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/sax/utils.py", line 26, in <module>
    import jax.scipy.linalg
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/jax/scipy/linalg.py", line 18, in <module>
    from jax._src.scipy.linalg import (
  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/jax/_src/scipy/linalg.py", line 403, in <module>
    @_wraps(scipy.linalg.tril)
            ^^^^^^^^^^^^^^^^^
AttributeError: module 'scipy.linalg' has no attribute 'tril'

then I upgrade scipy:

lukasc@Lukass-Air GitHub % pip install scipy --upgrade
Requirement already satisfied: scipy in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (1.13.0)
Collecting scipy
  Downloading scipy-1.14.0-cp311-cp311-macosx_14_0_arm64.whl.metadata (60 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.8/60.8 kB 1.3 MB/s eta 0:00:00
Requirement already satisfied: numpy<2.3,>=1.23.5 in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (from scipy) (1.26.4)
Downloading scipy-1.14.0-cp311-cp311-macosx_14_0_arm64.whl (23.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.1/23.1 MB 20.1 MB/s eta 0:00:00
Installing collected packages: scipy
  Attempting uninstall: scipy
    Found existing installation: scipy 1.13.0
    Uninstalling scipy-1.13.0:
      Successfully uninstalled scipy-1.13.0
Successfully installed scipy-1.14.0

and get the same error:

  File "/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/jax/_src/scipy/linalg.py", line 403, in <module>
    @_wraps(scipy.linalg.tril)
            ^^^^^^^^^^^^^^^^^
AttributeError: module 'scipy.linalg' has no attribute 'tril'
lukasc@Lukass-Air GitHub % pip install jax --upgrade
Requirement already satisfied: jax in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (0.4.23)
Collecting jax
  Using cached jax-0.4.30-py3-none-any.whl.metadata (22 kB)
Collecting jaxlib<=0.4.30,>=0.4.27 (from jax)
  Downloading jaxlib-0.4.30-cp311-cp311-macosx_11_0_arm64.whl.metadata (1.0 kB)
Requirement already satisfied: ml-dtypes>=0.2.0 in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (from jax) (0.4.0)
Requirement already satisfied: numpy>=1.22 in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (from jax) (1.26.4)
Requirement already satisfied: opt-einsum in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (from jax) (3.3.0)
Requirement already satisfied: scipy>=1.9 in /Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages (from jax) (1.14.0)
Using cached jax-0.4.30-py3-none-any.whl (2.0 MB)
Downloading jaxlib-0.4.30-cp311-cp311-macosx_11_0_arm64.whl (66.7 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 66.7/66.7 MB 24.7 MB/s eta 0:00:00
Installing collected packages: jaxlib, jax
  Attempting uninstall: jaxlib
    Found existing installation: jaxlib 0.4.23
    Uninstalling jaxlib-0.4.23:
      Successfully uninstalled jaxlib-0.4.23
  Attempting uninstall: jax
    Found existing installation: jax 0.4.23
    Uninstalling jax-0.4.23:
      Successfully uninstalled jax-0.4.23
Successfully installed jax-0.4.30 jaxlib-0.4.30

and it works:

lukasc@Lukass-Air GitHub % python                   
Python 3.11.1 (main, Apr 14 2024, 12:39:36) [Clang 15.0.0 (clang-1500.0.40.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import meow
/Users/lukasc/.pyenv/versions/3.11.1/lib/python3.11/site-packages/sax/backends/__init__.py:58: UserWarning: klujax not found. Please install klujax for better performance during circuit evaluation!
  warnings.warn(
>>> 

Conclusion: the required dependancies for the meow package should be updated.

thank you
Lukas

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant