cudnn

Tensorflow’ u GPU Üzerinde Çalıştırma- Google Cloud Engine

Bildiğiniz üzere GPU’ daki çekirdekler CPU’da ki çekirdeklerden daha güçsüz olmasına karşın, sayıca bir hayli fazladır. Örneğin; İntel i7 7700hq 4 çekirdeğe sahipken, Nvidia  GeForce GTX 1060 6 GB 1280 çekirdeğe sahiptir. Bu demektir ki  bi clock cycle’da 1280 tane işlemi gerçekleştirebiliriz.

Eğer sizinde mevcut donanımınız deep learning çalışmaları için yeterli değilse Google Cloud Engine tarafından ücretsiz deneme hesaplarına sunulan 300$ kredi ile bunu sağlayabilirsiniz. Bunun için 1 tane gmail hesabına 1′ de kredi kartına ihtiyacınız var.

 g1Öncelikle Google Cloud’ a girerek bir hesap oluşturuyoruz. Hesabımızı oluşturduktan sonra yandaki resimde yer alan butonu seçip proje oluşturmamız gerekiyor. Maalesef free tier hesapta yükseltme yapmadan Nvidia Tesla K80′ i kullanamıyoruz. Fakat endişelenmeyin. 300$ krediniz bitene kadar herhangi bir ücretlendirmeye tabi tutulmuyorsunuz. Öncelikle başlangıçta GPU kotamız olmadığı için Google ‘ a kota artırım isteği yapmamız gerekiyor. Bunun için, IAM ve Yönetici sekmesinden -> Kotalar‘ ı seçiyoruz. Daha sonra Kotaları düzenle -> metrik olarak NVIDIA K80 GPUs, bölge olarak en ucuzu us-east1 olduğu için us-east1’ı seçiyoruz. Ardından kota artırım isteğini nedeni ile birlikte yazıp google’a gönderiyoruz. 1-2 dakika içerisinde kotanız onaylanıyor.

 

Bütün bu işlemleri yaptıktan sonra;

1. Adım

Sağda yer alan sekmeler kısmından Compute Engine -> Sanal Makineler’ i seçiyoruz.

 

 

 

 

 

Daha sonra örnek oluştur kısmını seçip gerekli donanım ve yazılımları belirliyoruz.

 

Örnek ismi: deep-learning-gpu

Bölge: us-east1d

Çekirdek sayısı : 4

Bellek: 15 Gb

GPU: NVIDIA Tesla K80 ‘ seçiyoruz.

 

 

 

 

 

Önyükleme Diski : Ubuntu 16.04 LTs 50 Gb Disk kapasitesi olarak seçelim.

 

 

 

 

HTTP ve HTTPS trafiğine izin verip, ardından Yönetim,diskler kısmını seçelim.

 

 

 

Uzayan pencerede OTOMASYON->Başlangıç Komut Dosyası‘ nın altında yer alan kutuya CUDNN’ i başlatmak içigerekli olan UBUNTU 16.04 LTS script’ ini yapıştıralım ve en alttaki OLUŞTUR seçeneğine tıklayalım.

 

SCRIPT:

2. Adım Güvenlik Duvarı Ayarları

 

Hedefler :  Ağdaki tüm örnekler

Kaynak filtresi:IP aralıkları

Kaynak IP Aralıkları: 0.0.0.0/0

Protokoller : tcp:5000 ve Oluştur’ u seçip güvenlik ayarlarınıda tamamlıyoruz.

 

 

 

3.Adım Gerekli Yazılımlar

Öncelikle Nvidia Developer’a üye olup şu link‘i  kullanarak gerekli olan Download cuDNN v7.0.3 (Sept 28, 2017), for CUDA 8.0 yazılımını bilgisayarımıza indirelim.

 

4.Adım Yazılımların Yüklenmesi

Compute Engine -> Sanal Makineler ve oluşturduğumuz öreneğin en sağ kısmında yer alan SSH butonuna tıklayıp açılan sayfada nvidia-smi yazıp scriptimizin çalışıp çalışmadığını kontrol edelim. eğer herşey normal ise aşağıdaki gibi bir çıktı almamız gerekiyor.

 

Ardından aşağıdaki komutları sırasıyla çalıştıralım.

Şimdi de sıra indirdiğimiz CUDNN dosyasını örneğimize upload edelim. Bunun için SSH sekmesine tıkladığınızda, açılan pencerenin sağ üs köşesinde yer alan Seçenekler -> Dosya Yükle butonunu seçerek, dosyanın yüklenmesini bekleyelim.

 

5.Adım Cudnn’ i yükleme

6. Adım Anaconda Yükleme

7. Adım Tensorflow ve Keras Yükleme

8. Adım Jupyter Notebook Yapılandırma

Daha sonra herhangi bir text editoru ile (nano,vim) aşağıdaki komutları konfigurasyon dosyasına ekleyelim.

9. Adım Jupyter Notebook’un Çalıştırılması

Yukarıdaki komutu yazdıktan sonra ekranda;

http://localhost:8899/?token2151556as……….. gibi  bir link çıkması gerekiyor. Çıkan link’ in localhost’ tan sonraki kımını Harici IP’nizin sonuna ekleyip herhangi bir browser üzerinden açıyoruz.

Harici IP:5000/?token2151556as………..

Daha sonra;

import tensorflow as tf

import keras  shift+enter  yapıp herşeyin yüklendiğinden emin oluyoruz.

*Cloud üzerinde çalışmanız bittiğinde ise kesinlikle örneğinizi durdurun. Saatlik olarak 0.9$ civarı bir ücreti olduğundan unutmanız durumunda mevcut kredinizden düşer. Eğer yoksa kredi kartınızdan tahsil edilir.

0 Paylaşımlar
Tensorflow' u GPU Üzerinde Çalıştırma- Google Cloud Engine
Tensorflow' u GPU Üzerinde Çalıştırma- Google Cloud Engine
Bildiğiniz üzere GPU' daki çekirdekler CPU'da ki çekirdeklerden daha güçsüz olmasına karşın, sayıca bir hayli fazladır. Örneğin; İntel i7 7700hq 4 çekirdeğe sahipken, Nvidia  GeForce GTX 1060 6 GB 1280 çekirdeğe sahiptir. Bu demektir ki  bi clock cycle'da 1280 tane işlemi gerçekleştirebiliriz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir