Minimum configuration for local setup


(Srikanth) #1

I started part1 a few days back. I was trying to see if I can run lesson1 on my laptop. I had already installed Python3, Cuda, cuDNN, Keras, TensorFlow and more when I did the “getting started” section of TensorFlow. I tweaked some .py scripts in the repo to get it work with Python3 and Keras2.X.X and I think I got it working. I then hit a lot of issues that boil down to insufficient memory. The GPU on my laptop doesn’t have decent spec. It has 2GB of memory. I tried reducing batch size to 4 and still got error “Dst tensor is not initialized”. This error also seems to stem from out of memory.

So question, is there a minimum recommended hardware for this tutorial? Are there any Keras/TF settings that I can change to help.

I’ve created an AWS account and requested for p2 to move forward. But I still want to see if I can tinker a bit and get this to run on my laptop!!


(Caleb Crome) #2

I quickly gave up on smaller cards. I went with a P2 for a couple months, and then built my own box with a GTX1070.

VGG is very large, and you’re going to have a hard time (perhaps impossible time?) loading it into 2GB of memory.

-Caleb


(Srikanth) #3

Yeah, 1070 is probably the way to go for personal box. I’ve still not got AWS team to approve my P2 request. Thanks!


(Stuart Hallows) #4

I have a GTX 1050 card in my laptop with 4GM RAM (on the video card) and am hoping to follow along. Does anyone have an idea how this will work out?


(Srikanth) #5

An obvious suggestion would be to try with a reduced batch_size(say 8?)

I found building my own setup an useful exercise. You get a better understanding of layers involved and the setup can be used for other starter lessons even if VGG can’t be run on that.


(Fabien Pertuy) #6

Hi!
Here’s a very nice article by Tim Dettmers that details and compares GPUs for Deep Learning.
Maybe you already know it but it might help in this discussion.

And for my personal touch, I started playing with VGG16 on a GTX750ti. It was not really fast, but the pre-trained model fits in the 2GB memory of that card and allows for a batch size of 4 to 8 on Cats vs. Dogs redux (shape 3, 224, 224).
I switched to a GTX1070 later and the training is roughly 5-6x faster, and 8GB VRAM fits up to ~180 images (still on Cats vs. Dogs redux, same shape).

I would say that you can give it a try if you already have a 2GB card, but it will be limited with VGG16 (which is the largest of the pre-trained models available on Keras, so it might be easier playing with others in a second time).
Any 4-6GB card should allow you to go through Part 1 without problem, and have fun on some Kaggle competitions.
If you can go for a 1070 or upper, you should have to upgrade before tackling really serious tasks.


(Rhemac) #7

I manage to have the Dogs & Cats Redux done on a GTX 750 TI with 2GB of VRAM, in a batch size of 10, and using the same code base from fast.ai. In cuDNN and pre-allocated 0.8 of VRAM size

Here is my config
CPU: Pentium G4560
RAM: 16GB RAM
HDD: 256GB SSD
GPU: GTX750TI, 2GB VRAM
OS: Ubuntu 16.04.3LTS


(Rhemac) #8

And I used the slightly different version of CUDA :blush:

Here is how the .theanorc look like:

[global]
device = cuda0
floatX = float32

[gpuarray]
preallocate=0.82

[cuda]
root = /usr/local/cuda-8.0/bin

[dnn]
library_path = /usr/local/cuda-8.0/lib64
include_path = /usr/local/cuda-8.0/include


(Ghiurutan Alexandru) #9

Greetings sir !
I have the same configuration on my machine, GTX 1050 with 4GB GDDR5 and an i7 7700HQ CPU with 4 cores and hyper-threading. How does it worked for you? Any suggestions? May be this configuration enough?
Thanks in advance!