Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Clustering en Linux

ridiculum's Diary
Por ridiculum
departamento cuando menos es mas , Sección Diarios
Puesto a las Wed Mar 30th, 2005 at 01:50:59 AM CET
Algunas veces, resulta mas barato comprar un par de maquinas para repartir carga, que comprar un maquina el doble de rapida. En otros casos, resulta imposible comprar una maquina el doble de rapida. Para casos como esos, hay una solucion de clustering que se llama SSI (Single System Image).

 


Un sistema SSI simula tener una maquina SMP repartida entre varios sistemas que no comparten mas que conectividad y poco mas. Es muy tipico usarlas para renderizar imagenes y cuando pretendes tener un entorno heterogeneo, donde unos compilan otros renderizan y otros hacen simulaciones. Los procesos van y vienen y tu ni te enteras (o al menos esa es la idea).

Uno de los proyectos mas conocidos en Linux es OpenMosix, pero hay algunos mas.

La idea es muy buena, pero hay un detalle que no llego a pillar. ¿Que sucede cuando las herramientas tienen GUI?. Pongamos un par de ejemplos bastante cercanos a la realidad: ISE y ModelSim. El primero un "compilador" (si hay alguien de hardware por ahi, que no me tire los trastos a la cabeza) de VHDL/Verilog y el segundo un simulador.

Para poder distrubuir la carga que genera el ISE, en teoria es sencillo por que se supone que todo el proceso de sintesis, place & route y demas corre en procesos que lanza el GUI mediante un fork/exec. De hecho, puedes ver en la consola del ISE los comandos que lanza. Asi que en un principio, los procesos podrian ir de una maquina a otra sin problemas.

Pero, ¿y el ModelSim?. Las veces que lo he tenido que usar, no he visto que nada que me indujera a pensar que existe por debajo un proceso que hace las simulaciones, sino que es un todo en uno, asi que como se migra una aplicacion con GUI incluido? ¿Como se reparte la carga en un caso como este?.

ModelSim, tiene la posibilidad de trabajar de manera coordinada con algunos balanceadores de carga como GridWare, de Sun, mediante una tecnologia que llaman JobSpy. Pero..., siempre tiene que haber un pero. Esto vale una pasta y solo compensa a empresas tipo Nvidia, ATI, Intel, Lucent, etc, etc, pero no a empresas que aun siendo mas o menos grande, no se tienen a mas de 40 personas empleando esta tecnologia.

En una lectura rapida, lo que hacen estos balanceadores es salvar el estado de la simulacion y en caso de que haya una maquina con mas recursos que donde esta actualmente corriendo la simulacion, parar todo el proceso, y reiniciar la simulacion partiendo de los datos salvados en la maquina que estaba libre en ese instante. Es una migracion un poco tosca, pero supongo que funcionara.

Asi que la segunda pregunta del dia es: ¿Como tener un server-farm para este tipo de productos a un precio asequible? Y lo que es mejor, ¿como hacerlo en Linux?

< Jugando con sleuthkit (6 comments) | Los anónimos ya no pueden enviar noticias (18 comments) >
Enlaces Relacionados
· OpenMosix
· Cluster Infrastruture
· OpenSSI
· kerrighed
· OSCAR
· ISE
· ModelSim
· JobSpy
· More on ridiculum's Diary
· Also by ridiculum

Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

Ver: Modo: Orden:
Clustering en Linux | 1 comentarios (1 temáticos, editoriales, 0 ocultos)
OpenMOSIX (none / 0) (#1)
por bolinches (luis.bolinches@ODIO-EL-SPAM-hispalinux.es) a las Thu Mar 31st, 2005 at 04:51:56 PM CET
(Información Usuario) http://www.bolinches.info

Respecto a los otros sistemas de clusters que mencionas no puedo hablar porque no tengo experiencia directa, pero de OpenMOSIX, si.

No existe mucha diferencia entre procesos, o fork de procesos (esto es lo realmente importante en OpenMOSIX) tengan GUI o no. Los GUI migrán igualmente a otros PC's si bien esa GUI genera más tráfico en la red OpenMOSIX.

Las propias X migrán, Mozilla, OpenOffice, tambien lo hacen.

Como tú muy bien indicas se trata de tener maquinas multiprocesador por software. Solo tienes que cambiar los buses de la placa base por los cables de lared de datos.

La latencia es la piedra de roseta. Lo es porque la mayoria del tráfico son pequeños paquetes, que cuestan más de generar que de transmitir.

Para clusters "profesionales" (leer con la pasta suficiente) Myrinet es la opción. Para casa, un simple switch hace el trabajo con OpenMOSIX, en mi casa, lo hace.

Es un campo fascinante y muy agradecido, por lo menos lo es para mi.


Saludetes

"Computer science is not about computers any more than astronomy is about telescopes." -- Edsger W. Dijkstra (1930-2002)


 
Clustering en Linux | 1 comentarios (1 temáticos, editoriales, 0 ocultos)
Ver: Modo: Orden:

ecol Logo Powered by Scoop
Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
Los comentarios son propiedad del que los escribe.
Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
El Resto © 2002 Escomposlinux.org y aledaños.

Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

El proyecto escomposlinux.org está dedicado a la memoria de tas

crear cuenta | faq | búsqueda