torchmd / torchmd-net

Training neural network potentials
MIT License
335 stars 75 forks source link

conda-forge package #215

Closed raimis closed 1 year ago

raimis commented 1 year ago

We want easy integration with OpenMM via OpenMM-ML. This requires a conda-forge package, so the software stack can installed easily.

RaulPPelaez commented 1 year ago

https://github.com/conda-forge/staged-recipes/pull/24021

RaulPPelaez commented 1 year ago

It would make sense to use CUDA 12 for this package, but there are some dependencies preventing us from doing so. In particular pytorch from conda-forge is not yet built for CUDA 12. I have been trying to help for some time but have not had luck, there is always some compilation issue https://github.com/conda-forge/pytorch-cpu-feedstock/pull/182

RaulPPelaez commented 1 year ago

The main issue with CUDA is that the torch extensions in torchmd-net require nvcc at runtime (they are jit compiled) and currently nvcc installation is kind of borked in conda-forge because of the CUDA 12 migration. OTOH conda-forge offers a simple way to get nvcc at conda-package-build time via the compiler('nvcc') directive.

One way to escape this issue is thus to compile the extensions during installation, so that nvcc is no longer a runtime dependency.

I opened #216 to do that.

When it is merged I will create a new release (I would say 0.3) and package that.

raimis commented 1 year ago

Yes, it looks like a good solution!

RaulPPelaez commented 1 year ago

Closing as completed