devitocodes / pyrevolve

Python library to manage checkpointing for adjoints
Eclipse Public License 1.0
15 stars 6 forks source link

Error with pyrevolve - ImportError: /lib64/libm.so.6: version `GLIBC_2.29' not found #64

Open fabiomacelloni opened 1 year ago

fabiomacelloni commented 1 year ago

Hi, I'm getting the following error when I try to import modules from Devito:

Python 3.10.6 (main, Oct 24 2022, 16:07:47) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> 
>>> from examples.seismic import Model
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/macelloni/devito/examples/seismic/__init__.py", line 1, in <module>
    from .model import *  # noqa
  File "/home/macelloni/devito/examples/seismic/model.py", line 5, in <module>
    from devito import (Grid, SubDomain, Function, Constant, warning,
  File "/home/macelloni/devito/devito/__init__.py", line 26, in <module>
    from devito.checkpointing import DevitoCheckpoint, CheckpointOperator  # noqa
  File "/home/macelloni/devito/devito/checkpointing/__init__.py", line 1, in <module>
    from .checkpoint import *  # noqa
  File "/home/macelloni/devito/devito/checkpointing/checkpoint.py", line 1, in <module>
    from pyrevolve import Checkpoint, Operator
  File "/home/macelloni/anaconda3/envs/devito/lib/python3.10/site-packages/pyrevolve/__init__.py", line 3, in <module>
    from pyrevolve.pyrevolve import * # noqa
  File "/home/macelloni/anaconda3/envs/devito/lib/python3.10/site-packages/pyrevolve/pyrevolve.py", line 6, in <module>
    from . import crevolve as cr
ImportError: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /home/macelloni/anaconda3/envs/devito/lib/python3.10/site-packages/pyrevolve/crevolve.cpython-310-x86_64-linux-gnu.so)

I have no problems when I work on Ubuntu 22.04.1 LTS, but I get the above message on CentOS Linux 7 (Core). From conda list:

devito                    4.7.1+183.gf65800404     dev_0    <develop>
pyrevolve                 2.2                      pypi_0    pypi
python                    3.10.6                   haa1d7c7_1

A colleague of mine is working with the same system and he has never faced this issue using

devito                    4.6+118.gb5d6185         dev_0    <develop>
pyrevolve                 2.2                      pypi_0    pypi
python                    3.9.7                    h12debd9_1

A check of the installed glibc version by using ldd --version command shows ldd (Ubuntu GLIBC 2.35-0ubuntu3.1) 2.35 on Ubuntu and ldd (GNU libc) 2.17 on CentOS.

Is this problem due to the version of python and/or Devito? Does this error means that the older version of Devito (4.6) works with glibc 2.17, but Devito 4.7.1 does not?

Thank you. Best regards, FM

mloubout commented 1 year ago

Since this is an issue with pyrevolve that is now an optional dependency, this should be closed and reopenned in the pyrevolve repo.