pySTEPS / pysteps

Python framework for short-term ensemble prediction systems.

Home Page:https://pysteps.github.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Install pysteps on Mac with Apple silicon processors

GAaronAlexander opened this issue · comments

Are there instructions to install pysteps on a mac with the new M1 or M2 chips? I have attempted to follow the instructions that have been outlined, and kept getting the error that there was no such package as pysteps.

I also attempted to create a sub directory within my specific conda environment, and I only got the solving constant solving environment loop for around 45 minutes.

Any help on this would be great!

Hi @GAaronAlexander thanks for rising this issue. We don't have yet installation guidelines for m1/m2 Mac, but it's something we should look into...
Is this something you could possibly help us with?

Hi @dnerini ! Thanks for the quick response!

I would be able to help in terms of testing things out and providing what I have already tried, but I am unsure how much more help I would be able to provide other than that. I have not done a lot of software engineering that I would imagine that would be required to get this going!

Let me know what you would like for me to provide!

Can you try to follow the instructions given in the link below for using conda to install packages compiled for apple intel on the new silicon processors?

https://conda-forge.org/docs/user/tipsandtricks.html#installing-apple-intel-packages-on-apple-silicon

Hi!

Was able to get this to work today following an slightly modified version of what was put in the link. I have Summarized this below:

  1. First ensuring that rosetta is actually installed (it is not default)
    softwareupdate --install-rosetta
  2. Creating a new conda environment that specifies a version of python that works with pysteps
    conda create -n pysteps python=3.10
  3. Activating the environment
    conda activate pysteps
  4. Setting up the subdirectory so that conda uses OSX-64 and not the m1 silicon chip python installs (x86-64)
    conda config --env --set subdir osx-64
  5. Setting up a local variable to point to this subdir specification
    CONDA_SUBDIR=osx-64
    Then, running the usual pysteps install instructions:
    conda config --env --prepend channels conda-forge
    conda config --env --set channel_priority strict
    conda install pysteps

Even though there was only a few packages in the python environment, it still took about 10 minutes to get through the entire install (there was a need for a flexible solve of the environment).

I would probably put in the documentation that you should make sure that this is the FIRST thing that is installed in an environment if needed, because I worry about the amount of time it would take if there were other packages like xarray or cartopy in the environment already as well (these caused my other installs on a different computer to take ~45 minutes to solve an environment).

Do you have any other questions/things that I should try? I have confirmed that at least pysteps works for my needs (generating auto-correlated noise based off of radar fields).