google-deepmind / alphafold

Open source code for AlphaFold.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Non docker setup

sanjaysrikakulam opened this issue · comments

Dear AlphaFold authors,

Since most of the IT does not allow docker on their HPC's or production servers, we have made a small attempt to create a How-To for non-docker AlphaFold setup.

Can be found here: https://github.com/kalininalab/alphafold_non_docker

Thank you for the tool!

Kind regards,
Sanjay

Thank you for sharing your tips! My solution was very similar to yours, I was about to share mine. :)
For the record, in my case, the NVIDIA driver installed on our system supports cuda/cudatoolkits up to 11.0. In this case, I was able to create a non-docker environment with jaxlib==0.1.68+cuda110, jax==0.2.17

UPDATE: according to #20, jaxlib==0.1.69 is required to be able to use CUDA unified memory for running long sequences.

Here is a another one. https://github.com/kuixu/alphafold

@sanjaysrikakulam and @kuixu
following both ur examples, on Ubuntu 20.0 LTS on VirtualMachine/VMware and WSL2 (windows 10 host)
always missing simtk/openmm in site-packages ?

i have cuda 10.1 installed on my windows PC, will upgrade to 11

~/miniconda3/envs/alphafold/lib/python3.8/site-packages

@lydonchandra Sorry I don't have a windows system to test this.

Update: if you get missing simtk/openmm issues, it means the openmm installation was not through properly. I would suggest reinstalling this package alone and check if it gets installed.

thanks for confirming @sanjaysrikakulam , it runs flawlessly on ubuntu 20 baremetal.

windows 10 WSL does not support cuda yet (windows 10 insider does) which i haven't tried.

Is it possible that we run a non-Docker version AF2 in a Docker container?
Consumes a lot of time to configure the environment on a host.

for those who prefers singularity container (such as HPC environment), I wrapped the instructions from @sanjaysrikakulam and made a singularity definition files. https://github.com/hyoo/alphafold_singularity
hope this helps.

Hi, how should I output five models instead of only one as shown in the example? Thanks

Hi @AlvinHew, please refer to our repo's readme.

Hi @AlvinHew, please refer to our repo's readme.

Do you mean by specifying model_1, model_2, ... etc. in the flag -m ?

Yes, but make sure you do not have spaces (e.g., -m model_1,model_2,model_3,model_4,model_5)

Thanks for the reminder!

Hi, all. I have recently been organizing a recent fork of AlphaFold (with multimer support) that removes all Docker dependencies. If you find it helpful, please feel free to give it a try and let me know what you think: https://github.com/amorehead/alphafold_non_docker

Unfortunately we don't have the capacity to maintain and support Singularity. We added a link in the README to this issue and issue #10 that have links to third party repositories with Singularity definition files. I am going to close this issue as it is directly accessible from the README.

I am maintaining a Singularity port of AlphaFold's Docker stuff. It makes no change to the AlphaFold code (or even its Docker code): it merely adds a new directory for the Singularity stuff. It also has an example Slurm job script.

It has just been updated for AlphaFold 2.2.2. Please see https://github.com/prehensilecode/alphafold_singularity

Feel free to fork and submit issues or pull requests there.