GPU support

GPU support




First of all, I would like to congrats you for this amazing initiative to create a tool like this.

Right now I am playing around a bit with it and I realized that there is no option for GPU support in the app and after I checked the forum I received my confirmation - indeed right now there is not supported a training using GPU.
Unfortunately, in my case CPU training does not help me at lot, since I need to train nets using large datasets. 

Can you tell me if you guys are currently working to add GPU support as well ? If yes, can you tell me an approximation for when you will release a version with GPU support?

Thank you,
Bogdan M.









Thread Topic: 

4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.


Thank you very much for the compliments :)
As you saw in earlier answers on the forum - currently the tool is designed to run on CPU.
We don't have any plans (for the near future) to enable GPU on the wizard parts (dataset & model creation screens) of the tool.



Thank you for this response.

Because I am very interested to continue the work with this tool, can you give me some advices about what should I do when I want to train a net using a large/huge training dataset, a net topology like GoogleLeNet (or any other complex net topology) and CPU? Intuitively, I would say that I need to deploy the tool on a cluster and do the training there, but I am not sure what this scaling could mean. Can you give me some benchmarks of trainings made by you and had the same variables(large dataset, complex topology)?

     type (image classification/text classification)
     dataset size (and maybe some info about it)
     net topology used
     how much it took to complete a N number of epochs
     tool configuration (single instance/clustered)

All these info would be awesome for me in order to decide what configuration should I further use.




Hi Bogdan,

You are right - in order to get better results (faster), the best way is to use our multi-node ability -> train your net on a cluster.
All the relevant information can be found in the advanced section (Jupyter notebooks) - Caffe notebooks - multi node folder.
There are cluster & data management notebooks that can help you to install the tool and create the cluster and deploy the data to the working nodes.
In addition, there is a tutorial notebook for running a multi-node training. You can use that for learning about this function and then scale it out to your needs.

Regarding your question about specific configuration - I think it really depends on the hardware that you are using and the data  net that you train.
The simple answer (and logic) is that as bigger the cluster, better the performance :)
I suggest you start from the tutorial notebook we provide and then let us know if you have additional questions.


Leave a Comment

Please sign in to add a comment. Not a member? Join today