Google Colab: uso de GPU gratis

Google proporciona el uso de GPU gratuita para sus portátiles Colab.

Habilitación de GPU

Para habilitar la GPU en su computadora portátil, seleccione las siguientes opciones de menú:

Runtime / Change runtime type

Verá la siguiente pantalla como salida:

Seleccione GPUy su computadora portátil usaría la GPU gratuita proporcionada en la nube durante el procesamiento. Para familiarizarse con el procesamiento de la GPU, intente ejecutar la aplicación de muestra desdeMNIST tutorial que clonó anteriormente.

!python3 "/content/drive/My Drive/app/mnist_cnn.py"

Intente ejecutar el mismo archivo de Python sin la GPU habilitada. ¿Notó la diferencia en la velocidad de ejecución?

Prueba de GPU

Puede verificar fácilmente si la GPU está habilitada ejecutando el siguiente código:

import tensorflow as tf
tf.test.gpu_device_name()

Si la GPU está habilitada, dará el siguiente resultado:

'/device:GPU:0'

Listado de dispositivos

Si tiene curiosidad por conocer los dispositivos utilizados durante la ejecución de su computadora portátil en la nube, pruebe el siguiente código:

from tensorflow.python.client import device_lib
device_lib.list_local_devices()

Verá la salida de la siguiente manera:

[name: "/device:CPU:0"
   device_type: "CPU"
   memory_limit: 268435456
   locality { }
   incarnation: 1734904979049303143, name: "/device:XLA_CPU:0"
   device_type: "XLA_CPU" memory_limit: 17179869184
   locality { } 
   incarnation: 16069148927281628039
   physical_device_desc: "device: XLA_CPU device", name: "/device:XLA_GPU:0"
   device_type: "XLA_GPU"
   memory_limit: 17179869184
   locality { }
   incarnation: 16623465188569787091
   physical_device_desc: "device: XLA_GPU device", name: "/device:GPU:0"
   device_type: "GPU"
   memory_limit: 14062547764
   locality {
      bus_id: 1
      links { } 
   }
   incarnation: 6674128802944374158
physical_device_desc: "device: 0, name: Tesla T4, pci bus id: 0000:00:04.0, compute capability: 7.5"]

Comprobando RAM

Para ver los recursos de memoria disponibles para su proceso, escriba el siguiente comando:

!cat /proc/meminfo

Verá la siguiente salida:

MemTotal: 13335276 kB
MemFree: 7322964 kB
MemAvailable: 10519168 kB
Buffers: 95732 kB
Cached: 2787632 kB
SwapCached: 0 kB
Active: 2433984 kB
Inactive: 3060124 kB
Active(anon): 2101704 kB
Inactive(anon): 22880 kB
Active(file): 332280 kB
Inactive(file): 3037244 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 412 kB
Writeback: 0 kB
AnonPages: 2610780 kB
Mapped: 838200 kB
Shmem: 23436 kB
Slab: 183240 kB
SReclaimable: 135324 kB
SUnreclaim: 47916
kBKernelStack: 4992 kB
PageTables: 13600 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 6667636 kB
Committed_AS: 4801380 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 303092 kB
DirectMap2M: 5988352 kB
DirectMap1G: 9437184 kB

Ahora está todo listo para el desarrollo de modelos de aprendizaje automático en Python utilizando Google Colab.