3 processes failed and 172 passed when installing dedalus using conda

266 views
Skip to first unread message

Ruben Lier

unread,
Sep 29, 2021, 6:47:56 AM9/29/21
to Dedalus Users
Hi, I am new to Dedalus (and Linux). When I tried installing Dedalus in the recommended way and did the recommended test to see whether installation was succesful, I got the following summary:

FAILED miniconda3/envs/dedalus/lib/python3.8/site-packages/dedalus/tests/test_bvp.py::test_gaussian_free[Hermite-128-float64]
FAILED miniconda3/envs/dedalus/lib/python3.8/site-packages/dedalus/tests/test_bvp.py::test_gaussian_free[Hermite-128-complex128]
FAILED miniconda3/envs/dedalus/lib/python3.8/site-packages/dedalus/tests/test_evp.py::test_qho_dense_evp[Hermite-128-complex128]
======= 3 failed, 172 passed, 24 skipped, 2 xfailed, 2 warnings in 7.06s =======

What I did was first installing conda and miniconda, and then just copied all the things that were in the instruction of the recommended installation into the terminal. There was also a statement about " custom MPI/FFTW/HDF5 libraries", which I did not understand and therefore I skipped. My questions are:

1) what could be the origin of the failures? (it seems to be about Hermite, this is an additional feature right? (The default would be a chebyshev basis)
2) does the fact that 172 processes were succesful mean I can already use dedalus?
3) when installation of dedalus is succesful does that mean one can automatically import all the things that are necessary to do dedalus computation in any Python editor or does one need to connect it somehow? (I did notice that dedalus is available as an installation package in PyCharm, but when I do this this gives an error) or is it only possible to use it in the terminal in which I have activated dedalus? (so then one should find how to run python from bash and just copy paste the code into there?)

mncr...@gmail.com

unread,
Sep 29, 2021, 9:00:23 AM9/29/21
to Dedalus Users
Hi,

I've also had the same issue when installing Dedalus with pre-existing modules. I'm installing with Anaconda and get:

FAILED Anaconda/envs/dedalus/lib/python3.8/site-packages/dedalus/tests/test_bvp.py::test_gaussian_free[Hermite-128-float64]
FAILED Anaconda/envs/dedalus/lib/python3.8/site-packages/dedalus/tests/test_bvp.py::test_gaussian_free[Hermite-128-complex128]
FAILED Anaconda/envs/dedalus/lib/python3.8/site-packages/dedalus/tests/test_evp.py::test_qho_dense_evp[Hermite-128-complex128]

This (https://github.com/DedalusProject/dedalus/issues/133) discussion suggests there were some platform/scipy-version-specific issues which have since been fixed, though I'm guessing my install script is pulling an outdated version as this was apparently fixed in March.

I also have the following errors which are probably unrelated:

[login12.myriad.ucl.ac.uk:244976] pmix_mca_base_component_repository_open: unable to open mca_pnet_opa: libpsm2.so.2: cannot open shared object file: No such file or directory (ignored)
[login12.myriad.ucl.ac.uk:244973] pmix_mca_base_component_repository_open: unable to open mca_pnet_opa: libpsm2.so.2: cannot open shared object file: No such file or directory (ignored)
[login12.myriad.ucl.ac.uk:244973] mca_base_component_repository_open: unable to open mca_btl_usnic: libfabric.so.1: cannot open shared object file: No such file or directory (ignored)
[login12.myriad.ucl.ac.uk:244973] mca_base_component_repository_open: unable to open mca_mtl_psm2: libpsm2.so.2: cannot open shared object file: No such file or directory (ignored)
[login12.myriad.ucl.ac.uk:244973] mca_base_component_repository_open: unable to open mca_mtl_ofi: libfabric.so.1: cannot open shared object file: No such file or directory (ignored)

This one seem to be due to OpenMPI not finding some components but may be related to a bug (question 1, https://www.open-mpi.org/faq/?category=troubleshooting#erroneous-file-not-found-message)? 

The good news seems to be that Dedalus still works (at least for me), I can run (ivp) code in parallel but haven't tried evp or bvp, I think the conclusion is you'll be fine unless you want Hermite (or Laguerre?) bases.

You should be able to import any dedalus components provided you're in the correct environment, running something like 'conda activate dedalus' in the command line and then running any editor from there should work (I think). Personally I just write anything I want in a script and then call it from the command line using 'python3 script_name.py', my output goes to hdf5 files or the screen.

Matt

Ruben Lier

unread,
Sep 30, 2021, 7:39:30 AM9/30/21
to Dedalus Users
Hi Matt,

Thanks a lot. I tried running it with the command line using 'python3 script_name.py' with an example IVP code and it indeed worked. The only thing that didn't work was importing IPython, no idea why, it seems like nobody has talked about this in the group. I don't understand how the reason for the failures can be outdatedness though, as I first downloaded this stuff yesterday with the link that is currently online on the Dedalus website. Unfortunately I cannot help you with the other error.

Ruben

mncr...@gmail.com

unread,
Sep 30, 2021, 8:15:29 AM9/30/21
to Dedalus Users
Hi Ruben,

This (https://groups.google.com/g/dedalus-users/c/xi78WtTpDIQ/m/hTPBUO5XBQAJ) post suggests that the corrections have been made on Github but haven't yet been included in an official release. There's a suggestion that we could use 'git pull' to get the lastest version from Github though I'm not quite sure which folder you'd need to be in to make this work.

I'd guess as you're using miniconda, IPython isn't installed by standard. Even if you've got it elsewhere it won't be part of the dedalus environment. Perhaps try installing it, something like "conda install ipython" might work.

Matt

mncr...@gmail.com

unread,
Sep 30, 2021, 8:58:37 AM9/30/21
to Dedalus Users
Hi Ruben,

After some more digging I found you can find your dedalus installation by running this (in python):

import dedalus
print(dedalus.__file__)

You can then use 'git pull' here. Alternatively, as I did, you can go to '/dedalus/core/basis.py' and replace a few lines as described in this commit:


Everything now passes as expected.

Matt
Reply all
Reply to author
Forward
0 new messages