Que no te vendan HPC por HTC

El dia de ayer me puse a jugar ouija, para entrar en contacto con la zona fantasma. Lastimosamente esa basura nunca se movio y decidi usar un atajo, asi que le prendi al cartoon y estaban pasando Danny Phantom. El pobre tipo me comentaba que necesitaba altos recursos para poder ejecutar su Flash Player y tenia el dinero para invertir (un momento . . . creo que fue un mi amigo que usa Flash en Linux), asi que le comente la opción de los clusters.

Viendo que esta necesidad es constante, en El Abismo de Tux como parte del servicio a la comunidad nos hemos dado a la tarea de clasificar que tipos cluster existen en base a mi entrevista con Danny Phantom. Para que a los que esten buscando información no les vendan gato por liebre y por fin puedan disfrutar del Flash Player en aquellos perfiles de hi5 atascados de rosa , negro y codigo html embeddido con perritos que saltan de la nada.

Primero entendamos como se clasifica una computadora. Auque podemos pasarnos horas y horas peleando entre fans de power pc, SPARC, x86, windows, gnu/linux, mac os, en realidad la unica clasificación «aceptable», es definir una computadora en base a su publico objetivo (al menos por lo mi es la clasificación más generica).

Asi pues tenemos pc’s gamers, estaciones de trabajo, servidores, etc.

En materia de clusters el panorama es bastante similar, los clusters como explique en un articulo anterior, son solo una reunión de computadoras dedicadas al cumplimiento de una tarea complicada para una sola computadora. Aca va la descripción con las peores analogías y casos reales que se me ocurrieron.

Clusters para aguantar (de Alta Disponibilidad o HA):

Si partimos del principio que una computadora esta limitada a cierto poder de procesamiento dependiendo como se haya diseñado, no podemos esperar que un único servidor por más caro que sea aguante portales como google, yahoo o el blog no oficial de Fabi Rodas.

Los clusters de alta disponibilidad son clusters que se diseñan no para hacer las tareas de una forma rápida ni nada por el estilo. Al contrario su principal objetivo es garantizar la continuidad de un servicio haciendo que el usuario tenga buena experiencia en el uso de los recursos y no se vea interrumpido por la alta demanda. Pongamos el ejemplo de prensa libre. Si ellos tuvieran un cluster HA con un balanceador de carga y un par de apaches, no me tardaría 2 o 3 minutos para que cargaran las noticias en la mañana.

Clusters para distribuir (de Alta Eficiencia  – HTC):

Si en dado caso se me ocurre tener hijos y mi mente neoliberal influenciada por tanto articulo de el periodico me hace tener un plan para explotar a mis hijos en la producción de discos pirata, literalmente estaría armando un cluster HTC.

La producción de discos pirata es una tarea bastante simple y sin embargo tarea que consume tiempo. Si tuviera 3 hijos que les llamaremos Hugo, Paco y Luis, a cada uno les asignaría una torre de discos y los pondría a grabar a cada uno en una PC diferente distribuyendo la carga y haciendo mi tarea de una forma más eficiente y en menor tiempo.

Llevandolo al mundo de la computación es similar a la producción de paquetes en software como distcc o icecream, donde un paquete escrito en C/C++ se compone de varios archivos .cpp los cuales se traducen en los nodos del cluster y se linkean en el nodo maestro distribuyendo la carga y aprovechando al máximo los recursos de las pc’s sin que esto involucre una alta comunicación entre nodos.

Clusters para procesamiento(de Alto Desempeño – HPC):

Por ultimo pero no menos importantes estan los clusters de la elite. Hagamos de nuevo una analogía, si nuestros gobernantes fueran nodos en un cluster, prácticamente Guatemala estaría resuelta ¿porque?.

Un cluster de alto desempeño es un cluster bastante acoplado donde se utilizan algoritmos para resolver problemas o simulaciones. Cada nodo procesa información y ejecuta programas. A diferencia del anterior caso un cluster HPC actua con api’s de PVM o MPI (en traducción no aprobada, maquina de paralelismo virtual  e interfaz de paso de mensajes), que son basicamente api’s de comunicación para que los algoritmos que corren en paralelo puedan compartir información entre si.

Si ese fuera el caso de nuestro gobierno la tarea seria «gobernando un pais». No existirían problemas de comunicación o peleas de gatas entre la oposición y el partido oficial. Existiría alta cooperación entre dependencias del estado y al final todos trabajarían con el único fin de sacar al país adelante.

Espero que con esta explicación se entienda mejor que tipos de cluster existen. Si se lo preguntan lo de Danny Phantom fue una gran mentira al igual que lo del Flash Player. Danny Phantom lo dan en nickelodeon y el Flash Player no se puede utilizar en clusters ya que no se puede mejorar porque es codigo cerrado :(.

Para que no me metan al bote aclaro que todas las marcas se utilizaron en forma de chiste y son de sus respectivos autores :P.

8 Replies to “Que no te vendan HPC por HTC”

  1. Usando IceWeasel 3.0.6 IceWeasel 3.0.6 en Debian GNU/Linux Debian GNU/Linux

    Excelente, Tuxtor. Nada más, para que de veras sea «for dummies» explicá qué son las siglas «api’s de PVM o MPI» (y ya estará perfecto).

  2. Usando Firefox 3.5.1 Firefox 3.5.1 en GNU/Linux GNU/Linux

    @carocr: Empezando a editar estaba /me ya no ha hecho más post y tiene horario japones 😛 (gracias por tus sugerencias)

    @talishte: Ya va el troll ¬¬

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *