arneschneuing / DiffSBDD

A Euclidean diffusion model for structure-based drug design.
MIT License
339 stars 74 forks source link

Error when running generate_ligands.py #17

Open Shredderroy opened 1 year ago

Shredderroy commented 1 year ago

When I run

(sbdd-env) user@machine:~/projects/repos/DiffSBDD$ python generate_ligands.py ./checkpoints/full_atom.ckpt --pdbfile ./data/targets/test_1.pdb --outdir ./outputs/test_1/ --resi_list A:115 A:121 A:123

I get the following error:

OSError: /home/user/miniconda3/envs/sbdd-env/lib/python3.10/site-packages/torch_scatter/_version_cuda.so: undefined symbol: _ZN5torch3jit17parseSchemaOrNameERKSs

This error occurs in both Ubuntu 20.04 LTS and Ubuntu 22.04 LTS, even though I have ensured that the versions of the various packages are those indicated in the main README file.

The following GitHub issue mentions the same error. But even after I matched the versions of pytorch, cuda, and torch-scatter to those suggested in the thread, I still got the same error.

arneschneuing commented 1 year ago

Hey, what are the exact PyTorch and torch-scatter versions you use?

ghost commented 1 year ago

I got this same error when trying to train a new model. The way I resolved it was to create a new conda environment then installed PyTorch according to a command generated on this page of the PyTorch website, which for me happened to be: conda install pytorch torchvision torchaudio pytorch-cuda=11.6 -c pytorch -c nvidia

Take this solution with a grain of salt though because I still haven't successfully trained a model OR run the generate_ligands.py script, it's just that I'm getting different error messages at this point!

I should also mention that I am working on GCP and had to experiment with several combinations of OS and GPU before finding one that didn't give me error messages about NVIDIA drivers not being installed. Also, I manually installed CUDA using directions generated on this page.