Search code examples
tensorflowgoogle-cloud-platformgoogle-compute-enginegoogle-cloud-mlgcp-ai-platform-notebook

Which Google Cloud Platform service is the easiest for running Tensorflow?


While working on Udacity Deep Learning assignments, I encountered memory problem. I need to switch to a cloud platform. I worked with AWS EC2 before but now I would like to try Google Cloud Platform (GCP). I will need at least 8GB memory. I know how to use docker locally but never tried it on the cloud.

  1. Is there any ready-made solution for running Tensorflow on GCP?
  2. If not, which service (Compute Engine or Container Engine) would make it easier to get started?
  3. Any other tip is also appreciated!

Solution

  • Summing up the answers:

    Instructions to manually run TensorFlow on Compute Engine:

    1. Create a project
    2. Open the Cloud Shell (a button at the top)
    3. List machine types: gcloud compute machine-types list. You can change the machine type I used in the next command.
    4. Create an instance:
    gcloud compute instances create tf \
      --image container-vm \
      --zone europe-west1-c \
      --machine-type n1-standard-2
    
    1. Run sudo docker run -d -p 8888:8888 --name tf b.gcr.io/tensorflow-udacity/assignments:0.5.0 (change the image name to the desired one)
    2. Find your instance in the dashboard and edit default network.
    3. Add a firewall rule to allow your IP as well as protocol and port tcp:8888.
    4. Find the External IP of the instance from the dashboard. Open IP:8888 on your browser. Done!
    5. When you are finished, delete the created cluster to avoid charges.

    This is how I did it and it worked. I am sure there is an easier way to do it.

    More Resources

    You might be interested to learn more about:

    Good to know

    • "The contents of your Cloud Shell home directory persist across projects between all Cloud Shell sessions, even after the virtual machine terminates and is restarted"
    • To list all available image versions: gcloud compute images list --project google-containers

    Thanks to @user728291, @MattW, @CJCullen, and @zain-rizvi