[Bug] ModuleNotFoundError: No module named 'torchdata.datapipes' on Linux aarch64 (DGL incompatibility)
❓ Questions and Help
Before proceeding, please note that we recommend using our discussion forum (https://discuss.dgl.ai) for general questions. As a result, this issue will likely be CLOSED shortly.
Dear RFdiffusion / DGL Team,
I am writing to report a persistent issue I'm encountering while trying to set up RFdiffusion on a Linux aarch64 (ARM64) system. I would greatly appreciate any guidance or known solutions.
Problem Description:
When attempting to import RFdiffusion's core modules, I consistently get a ModuleNotFoundError: No module named 'torchdata.datapipes'. This error originates within the dgl library, specifically when it tries to import the datapipes submodule from torchdata.
Environment:
- Operating System: Linux aarch64 (Ubuntu 24.04.1 LTS)
- Python Version: 3.9 (Conda environment)
- PyTorch Version: 2.0.0 (CPU-only build from
conda-forge) - TorchVision Version: 0.15.2
- TorchAudio Version: 2.0.0 (installed via pip)
- CUDA Toolkit: 11.8 (Installed via Conda, but PyTorch build is CPU)
- DGL Version:
conda installattempts for versions 0.8.1, 0.9.1, 1.0.0, 1.1.2 (+cu118) resulted inPackagesNotFoundError(Conda could not find/resolve them).pip install dgl(latest, 2.1.0) successfully installs DGL.
- TorchData Version: 0.11.0 (installed via pip)
- RFdiffusion Source: https://github.com/RosettaCommons/RFdiffusion
- ColabDesign Source: https://github.com/sokrypton/ColabDesign
Steps to Reproduce:
- Switched to a Python 3.9 environment.
- Created a base environment using
conda create -n SE3nv python=3.9. - Installed PyTorch ecosystem (
pytorch==2.0.0,torchvision==0.15.2,cudatoolkit=11.8) fromconda-forge. (This step succeeded.) - Installed DGL latest version (2.1.0) via
pip install dgl. (This step succeeded.) - Installed TorchAudio 2.0.0 via
pip install torchaudio==2.0.0. (This step succeeded.) - Installed
RFdiffusion/env/SE3TransformerandColabDesign(pip install -e .). - Installed remaining pip dependencies (omegaconf, icecream, pyrsistent, matplotlib, ipywidgets, py3Dmol, jupyterlab, etc.).
- Created a base environment using
- Attempted
python -c "from inference.utils import parse_pdb".
Expected Behavior: RFdiffusion modules should import successfully.
Actual Behavior (Traceback):
(Please copy and paste the full traceback from your most recent ModuleNotFoundError: No module named 'torchdata.datapipes' here. For example:)
Traceback (most recent call last):
File "
Additional Context (What I've Tried):
- Attempted installation in Python 3.10 environment, but failed due to DGL, TorchData, and TorchAudio version conflicts.
- For Python 3.9,
conda installattempts for DGL versions (0.8.1, 0.9.1, 1.0.0, 1.1.2 withcu118label) fromdglteamanddefaultschannels consistently failed withPackagesNotFoundError. This indicates Conda cannot find or resolve theseaarch64builds. - Manually checked
~/miniconda3/envs/SE3nv/lib/python3.9/site-packages/torchdata/vials -land confirmed that thedatapipesdirectory is physically missing. This strongly suggests a structural mismatch between DGL 2.1.0's requirements and the available TorchData 0.11.0 build foraarch64.
Question:
Are there any known working dgl / torchdata version combinations or specific installation instructions for linux-aarch64 that successfully resolve this torchdata.datapipes issue? Are there any official aarch64 Docker images or specific Dockerfile modifications known to work?
Thank you for your time and assistance.
Source: dmlc/dgl