¿Qué hay dentro del TPU Google Coral Edge ?: pruebas de velocidad y análisis del dispositivo



En 2019, Google finalmente lanzó un equipo de TPU con la marca Coral que se puede comprar. Sin embargo, no hay redes en la nube tan potentes para la capacitación como BigGAN con sus 100 petaflops / s, y ni siquiera como las 180 TPU v2 TFlop / s más baratas, que se pueden alquilar por $ 4.5 por hora. Estos dispositivos de TPU deberían funcionar "al límite", es decir, proporcionar la posibilidad de implementar soluciones de aprendizaje profundo para dispositivos pequeños sin acceso a Internet. ¿Qué tan buenos son esos TPU que podemos comprar?

En la especificación de los productos actuales, su velocidad se indica como 4 TOP (teraoperaciones por segundo). Estos no son dispositivos estándar que admitan operaciones de punto flotante de 32 bits, ya que el tensorflow-lite que se ejecuta en estos dispositivos utiliza aritmética de punto fijo de 8 bits. Además, no encontrará en ellos un ancho de banda para la memoria, como en una nube TPU o GPU. Las TPU Edge están conectadas a dispositivos a través de USB 3.0 o mediante el bus mPCIe de segunda generación, por lo que la velocidad se limitará a 500-640 MB / s. Por supuesto, dado que solo hay 8 MB de SRAM en dicho dispositivo, no tomará más de 16 ms transferir datos hacia o desde el dispositivo, y el modelo que probamos para escribir este artículo solo tomó 10 ms. No sufrirá una falta de memoria, porque estos dispositivos no están diseñados para aprender desde cero. Sin embargo, en este dispositivo puede entrenar la última capa del modelo. El punto principal del uso de TPU de borde es construir conclusiones lógicas, y así es como comprobaré la velocidad de este dispositivo.

El dispositivo más cerrado, como Coral Edge TPU, se lanzó en marzo de 2019, y fue con él que pude jugar. Este es uno de los prototipos de Coral, aunque según los documentos tiene exactamente el mismo rendimiento que las placas base lanzadas con mPCIe. No hay problemas con USB 3.0, pero si no tiene ganas de jugar con un dispositivo de seguridad externo, puede colocar las tarjetas M.2 Accelerator A + E en la ranura en lugar de la tarjeta WiFi:


Izquierda: mi tarjeta wifi en una computadora portátil. Derecha: acelerador M.2 A + E que se conecta a la misma ranura.

¿Y qué hay dentro del borde del acelerador de TPU que mide 30 mm x 65 mm y cuesta $ 75? ¿Podría haber un acelerador mPCIe de 30 mm x 22 mm por $ 35 con un adaptador USB y un disipador térmico? ¿Podemos abrir suavemente una caja de plástico y metal?


Borde delantero y trasero TPU

La carcasa de plástico se puede abrir sin problemas gracias a un radiador muy rígido. El radiador se puede quitar desenroscando 4 tornillos.


La parte posterior del dispositivo con la cubierta de plástico retirada, con y sin radiador, y el radiador mismo

La respuesta a la pregunta anterior: no, no literalmente, pero las tablas son muy similares:


El lado de trabajo de Coral Edge TPU. A la derecha está el acelerador M2 A + E y un chip de TPU separado en una moneda de un centavo

Los chips del radiador son probablemente TPU (más grande) y memoria. Una vez que recuperé el Edge TPU, realicé mis propias pruebas de velocidad, aunque las pruebas de Google hablan de un rendimiento 10 o incluso 20 veces más rápido en comparación con la CPU.

Un ejemplo del sitio Coral para el reconocimiento de objetos se puede ejecutar tanto en la CPU como en la TPU. Conecto este dispositivo a mi Acer Chromebook 11 con Galium OS 2.1 , que es lo suficientemente similar a Debian para poder instalar tf-lite y un programa para trabajar con TPU sin ningún problema. Los modelos MobileNetV2 SSDLite para reconocimiento de objetos ocupan menos de 7 MB y funcionan con imágenes de 300x300. En el TPU, una imagen se procesa en 20 ms (+10 ms para la copia de una sola vez). En mi computadora portátil con una CPU Intel Celeron 2.16GHz en 2014, la imagen se procesa en 1500 ms. En otra PC, con un procesador Intel Xeon CPU de 2.5 GHz (que es 15 veces más rápido que el mío según cpubenchmark.net), la imagen se procesa en 130 ms (¡con un consumo de 210 W!). Según cpubenchmark.net, la CPU más rápida disponible será 3 veces más rápida que esta: ¡y seguirá siendo más lenta que la TPU de borde, que, además, es mucho más barata y consume mucho menos!

Un proyecto más interesante es el reconocimiento de objetos en la transmisión de video desde la cámara de mi computadora portátil. En el procesador Celeron, el ejemplo seleccionado logra procesar menos de un cuadro por segundo. En TPU, procesa 20 cuadros por segundo, es decir, funciona en tiempo real. Y solo una cuarta parte del tiempo se pasa comunicándose con el TPU, el resto es cambiar el tamaño de las imágenes y mostrar los datos finales con los que se ocupa la CPU. Aunque instalé el programa para que TPU funcione a la frecuencia máxima, no me acerqué a sus límites, por lo que el disipador térmico de TPU no se calentó a ninguna temperatura incómoda.

Los ejemplos dados fueron lo suficientemente fáciles de cambiar y ajustar. Para comenzar a trabajar con el dispositivo, solo necesita instalar el entorno de trabajo de TPU a través de apt-get , luego instalar tf-lite a través de pip, y ya está listo para trabajar con ejemplos. Los modelos en estos ejemplos ya están precompilados. Para una prueba de velocidad más plausible, necesitará entrenar el modelo desde cero, ejecutarlo en la GPU y la CPU, convertirlo a tf-lite y ejecutarlo en la CPU y TPU.

En general, estuve satisfecho con este dispositivo. Me parece sorprendente que una red que reconoce objetos en imágenes de 300x300 funcione en una netbook 2014 en tiempo real, con una actualización que cuesta solo $ 75 (o incluso $ 35 si toma la placa M.2). Por supuesto, el TPU regional no reemplazará a la GPU para capacitación e incluso para evaluar modelos. Sin embargo, veo un gran potencial en el tablero , en el cual un TOP cuesta $ 10 y consume 0.5 vatios. ¡Es al menos 10 veces más barato que trabajar con una GPU! Y mucho menos energía intensiva. Esta es una gran opción para demostrar el trabajo en algún lugar de los campos. Si la tarea que le interesa está indicada en la etiqueta del sitio web del producto, entonces este chip será útil si su bajo consumo de energía y un tamaño de sistema pequeño son su prioridad.

Source: https://habr.com/ru/post/482788/


All Articles