<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1500086133623123&amp;ev=PageView&amp;noscript=1">

Sofisticación en el análisis predictivo y la analítica avanzada: la era del GPU

Publicado el 22/03/17 8:00

La complejidad de los datos sigue aumentando, las plataformas de computación aumentan de potencia y tamaño, y, a la vez, se observa una tendencia que cobra fuerza en el análisis predictivo y la analítica avanzada. Tiene que ver con el uso de las GPU, que están siendo adoptadas a gran velocidad para resolver algunos de los desafíos que el analytics comienza a plantear a las organizaciones.

 

analisis_predictivo.jpg

Créditos fotográficos: michalklootwijk

 

GPU, rendimiento y análisis predictivo

Los GPU de procesamiento paralelo masivo son un tipo de procesadores con un gran ancho de banda de memoria y líneas de procesamiento vectorizadas. Se encargan de transformar los datos contenidos en los gráficos de entrada en los marcos de trabajo de sensor a decisión. Dada la falta de estructura de este tipo de datos y su comportamiento irregular, los requisitos de comunicación y sincronización siguen siendo altos, pudiendo limitar la escalabilidad del rendimiento que, aun así, supera con creces a cualquier otra forma de aproximación a los procesos analíticos.

¡Descarga la guía gratuita de predicitive analytics y descubre como  beneficiarte de la predicción!

Así lo confirma el análisis sobre “opciones de concurrencia de GPU en el análisis gráfico” llevado a cabo por Masab Ahmad y Omer Khan (Universidad de Connecticut) publicado en IEEE, que revela que:

  • El rendimiento aumenta de forma geométrica en un 40% cuando los hilos óptimos se generan en una GPU.
  • Además, se logra un rendimiento adicional del 41% cuando el número de subprocesos por grupo de trabajo de GPU se reduce a un valor que optimiza la concurrencia de hardware explotable.
  • El algoritmo de auto-ajuste junto con las opciones arquitectónicas adecuadas logra optimizar el rendimiento de la GPU.

 

El descubrimiento analítico más minucioso

¿Cómo abordar el procesamiento paralelo en mainstream sin encontrarse con limitaciones de entrada y salida en disco? ¿Cómo evitar el constreñimiento que impone el número de núcleos de procesamiento que operan en los datos?

 Al alcanzar estadios avanzados de análisis predictivo, algunas organizaciones empezaron a encontrarse con un problema de capacidad. La forma de dejar atrás una restricción que impide el avance pasa por llevar el proceso a la memoria y fuera del disco. Una vez tomada esta decisión se resuelven las cosas, al menos momentáneamente.

La nueva capacidad permite crear soluciones alternativas caracterizadas por sus requisitos de baja latencia. Ejemplo de ello es el procesamiento en tiempo real de los datos de transmisión o el análisis interactivo. Sin embargo, todavía faltan por solucionar algunos problemas. Y es que la actual generación de marcos de procesamiento de datos in memory, pese a haber logrado dos importantes hitos en relación con el rendimiento, que ha aumentado de forma considerable, y los tiempos de respuesta, que dejan atrás resultados anteriores; aún se ve limitada por el número de núcleos de procesamiento que operan en los datos. ¿Cómo resolver este inconveniente?

Existe una forma, que implica el aumento del número de subprocesos de procesamiento simultáneos en cada servidor. Pero aumentar el número de núcleos por cada CPU o incrementar la cifra de estos equipos ligados a cada servidor, pese a ser una solución viable, no es la opción más eficiente. Aquí es donde interviene la tecnología GPU que:

  • Ha extendido su uso más allá de los gráficos en el ámbito del análisis de datos y la computación científica.
  • Multiplica, logrando un aumento en progresión geométrica, la potencia de procesamiento bruta por servidor en comparación con los resultados obtenidos trabajando con CPUs.
  • Pese a no tratarse de procesadores al uso, pueden conectarse a las CPUs para trabajar de forma conjunta logrando que el usuario se beneficie de una aceleración sin precedentes y de un procesamiento sin límites.

Las GPUs, que funcionan con una tecnología de hyperthreading, se venían empleando para gestionar interfaces gráficas de usuario. Gracias a los miles de núcleos que conforman su arquitectura masiva paralela son capaces de ocuparse de múltiples tareas de forma simultánea y, por eso, algunos proveedores los han elegido como centro de sus soluciones orientadas a:

  • La ingesta de datos.
  • La visualización.
  • La exploración de datos.
  • El análisis predictivo.

Tanto para el trabajo con datos en reposo como en movimiento, las ventajas de este sistema tienen infinidad de aplicaciones para las organizaciones que las saben aprovechar. Algunos de estos usos son:

  • Smart cámaras en Smart cities: para lograr un tráfico más fluido.
  • Sistemas de clasificación asociados al reconocimiento de imágenes (como los que emplea AliCloud).
  • Sistemas de reconocimiento de voz (como los usados por Tesla).
  • Cámaras en vehículos autodirigidos que no necesitan de conductor.
  • Procesamiento de vídeos y archivos intercambiados en formatos como el .gif entre usuarios de Twitter.
  • Análisis de expresiones faciales en comercios electrónicos o plataformas sociales que permiten interpretar la emoción del usuario ante productos o anuncios.

Las Unidades de procesamiento gráfico, así es como se conoce a las GPU, son capaces de ofrecer cotas de rendimiento cien veces superiores a las alcanzadas por las bases de datos in memory más avanzadas que sólo emplean CPUs. La razón es su procesamiento masivo paralelo, el que les permiten sus miles de núcleos (que en algunos casos pueden llegar a cifras como cuatro mil); y que hacen que los dieciséis o treinta y dos habituales de una CPU potente se quede reducido a la mínima expresión.

Las GPU son ideales para acelerar las cargas de trabajo intensivas en computación necesarias para el análisis predictivo y cualquier otra modalidad de analítica big data, sobre todo si ésta tiene que llevarse a cabo en tiempo real.

Al elegir tecnología GPU para el análisis predictivo y la analítica avanzada hay que tener en cuenta que la solución escogida:

  • Presente una interfaz amigable, que resulte práctica para los desarrolladores, pero igualmente accesible para los usuarios finales.
  • Sea compatible con otros sistemas y aplicaciones en uso en la organización.
  • Incluya capacidades de la consulta del estilo del SQL.
  • Sea escalable y fácilmente desplegable.
  • Garantice su eficiencia energética.

¿Entrarán las GPUs en el plan de gestión de la información para este año?

Predictive Analytics