ZauggGroup / DeePiCt

Pipeline for the automatic detection and segmentation of particles and cellular structures in 3D Cryo-ET data, based on deep learning (convolutional neural networks).
Apache License 2.0
30 stars 9 forks source link

Correct CUDA version to have both Pytorch and Keras (Tensorflow) #11

Closed DimitriosBellos closed 1 year ago

DimitriosBellos commented 1 year ago

Dear DeePiCt developers,

I am in the process of installing DeePiCt, however from your instructions (https://github.com/ZauggGroup/DeePiCt#2-installation) both PyTorch and Keras are needed. To install either of them properly, consideration regarding the required CUDA version is needed.

As it explaned here for the most recent PyTorch version (1.13.1) and here for previous versions, some of the most recent CUDA versions that PyTorch can support are CUDA 10.2, 11.0, 11.1, 11.3, 11.6 or 11.7 . Naturally, specific PyTorch versions support specific CUDA versions as it can be seen in the links I mentioned earlier.

Simarly, Keras (and Tensorflow, which after investigation I found that it is needed in the DeePiCt, see here) require CUDA 10.0, 10.1, 11.0 or 11.2 as explained here. I mention the different Tensoflow versions as in the Keras website they suggest to install Keras by installing Tensorflow.

My question is under what CUDA version was DeePiCt tested? Can you also provide the exact PyTorch and Tensorflow version that were used?

frosinastojanovska commented 1 year ago

Dear @DimitriosBellos,

You can find here the version of tensorflow, keras and cuda that were used. For pytorch, installing the latest version from conda should work.

DimitriosBellos commented 1 year ago

Dear @frosinastojanovska,

Thank you for your help. I kinda understand now. 2D_CNN uses Tensorflow/Keras (as shown here tested with CUDA 10.0) and 3D_CNN uses PyTorch (as shown here). I believe a neat solution could be to create 2 different environments using the environment.yaml files. One to run 2d_cnn and another to run 3d_cnn.

frosinastojanovska commented 1 year ago

Dear @DimitriosBellos,

Yes, that's correct. While running the pipeline, snakemake will create these separate environments for 2D CNN and 3D CNN, and ideally, you don't need to worry about that. Let us know if something is not working with the installations.