-->
Mostrando entradas con la etiqueta grid. Mostrar todas las entradas
Mostrando entradas con la etiqueta grid. Mostrar todas las entradas

martes, 7 de julio de 2009

Instrument Element

martes, 7 de julio de 2009 2 comentarios
Terminé la entrada anterior de la serie con un gráfico que representa los servicios principales del middleware gLite:


Como se puede ver hay servicios como StorageElement o ComputingElement, que nos permiten hacer uso de los recursos de almacenamiento y cómputo respectivamente, al mismo nivel que estos se sitúa InstrumentElement.

Un InstrumentElement se define como un conjunto de servicios que permiten el control remoto de instrumentos físicos. Es importante el plural, instrumentos, ya que pretende ser una entidad abstracta independiente del instrumento físico que haya por debajo.

Un instrumento se abstrae como cualquier aparato que hay que configurar, calibrar, controlar o monitorizar y que a veces requiere intervención humana. De esta forma podemos crear una interfaz o esqueleto común para todos los dispositivos, que habrá que rellenar, ampliar y adaptar con diferentes módulos para cada caso concreto. A este esqueleto básico, sus creadores le han dado el nombre de Tiny Instrument Element y permite agregar nuevos dispositivos al grid casi como añadimos nuevo hardware a nuestro PC: añadiendo un "driver" al middleware al tiempo que simplifica la creación de estos "drivers" o Instrument Manager.

Para probar las ventajas del proyecto se llevó a cabo un caso de estudio. Utilizando el Tiny Instrument Element, dos programadores (que no eran los creadores, obviamente) fueron capaces de aplicarlo a 6 tipos de instrumentos, extenderlos con un indice distribuido de agregación de datos (??) y completarlos con una interfaz de usuario en menos de dos meses. El dato me llama la atención porque yo, junto con un compañero, tardé el año pasado, 3 meses a full time en hacer un driver (tambien hay que decir que el diseño del programa que tenía que hacer uso del driver deja bastante que desear y dificultó mucho la tarea y tambien que seguro estos programadores tienen más experiencia que nosotros :p).

Por cierto que esto está recien salidito del horno, el artículo que presenta el Tiny Instrument vio la luz en Mayo de este mismo año en 4a Conferencia Internacional de Grid y Pervasive Computing

Fuentes: The Tiny Instrument Element Project, Instrument Element
[Seguir leyendo]

martes, 23 de junio de 2009

Arquitecturas Orientadas a Servicios y Grid

martes, 23 de junio de 2009 1 comentarios

Hoy voy a hablar de SOA (Servide Oriented Arquitecture) y como se aplica al Grid

Un servicio es un componente software accesible, típicamente desde la red, y que provee funcionalidad a quien la solicite.

Una arquitectura orientada a servicios es un estilo arquitectónico que contempla la implementación de componentes como servicios modulares que pueden ser descubiertos, utilizados y ensamblados, como piezas de Lego, por los usuarios (clientes, consumidores). Esto permite la creación de sistemas muy escalables y a la vez provee un estándar para acceder a los servicios.
Los servicios pueden a su ver actuar como clientes de otros servicios y comunicarse unos con otros. Para esto es necesario que tengan una definición formal independiente de la plataforma o el lenguaje de programación, un protocolo que describa cómo se comunican entre sí y una serie de metadatos que describa sus características (lo que hace, los recursos que necesita...). De este modo cuando un cliente necesita que alguien le resuelva una tarea puede consultar los servicios disponibles y ver si alguno puede ejecutarla.
Si los servicios están distribuidos por una red que el cliente no conozca tiene que haber alguien que se encargue de averiguar qué servicio puede ejecutar qué tarea, el encargado de esto es el Service Broker.

Supongo que ya se ven las similitudes ;).

Cada elemento del grid (ya sea un PC, un clúster, un instrumento de medida, una base de datos....) provee de ciertos recursos. Estos recursos son accesibles desde el middleware, que no es más una serie de componentes software que proporcionan el acceso controlado a estos recursos, es decir, proporcionan un servicio.


Estos son los servicios de gLite, un middleware desarrollado por, entre otras 11 instituciones, el CERN (Consejo Europeo de Investigación Nuclear), el sitio donde hacen la antimateria en Angeles y Demonios :p.

Por supuesto todo esto es una visión simplificada, pero ni domino el tema ni quiero aburrir a mis lectores, en cualquier caso se aceptan sugerencias y correcciones.

En la próxima entrada os hablaré de InstrumentElement, la abstracción para integrar instrumentos en el Grid.

Fuentes: An Overview of Service-oriented Architecture, Web Services and Grid Computing, Wikipedia (es, en)
[Seguir leyendo]

jueves, 18 de junio de 2009

Instrumentación Remota: Hacia una infraestructura científica comunitaria

jueves, 18 de junio de 2009 0 comentarios
El instrumental científico por lo general es muy caro y no está al alcance de todas las instituciones. Además hay algún tipo de instrumental que tiene que estar en determinadas localizaciones (telescopios, sismógrafos...). ¿No sería interesante que cualquier científico de cualquier parte del mundo pudiera hacer uso de este instrumental sin tener que desplazarse? Podriamos plantearnos la misma pregunta en el ámbito universitario, ¿No sería interesante que alumnos de varias universidades puedan hacer uso de equipo común para las prácticas?
La respuesta a estas preguntas existe y es lo que se conoce como instrumentación remota.

La arquitectura Grid, se puede ver como una herramienta para la integración de recursos distribuidos. De forma que no sólo controle los recursos computacionales sino tambien dispositivos de medición y adquisición de datos (lo de la webcam del otro día no iba tan desencaminado :p)

Con el propósito definir recomendaciones para el diseño de los servicios de instrumentación remota de próxima generación se desarrolló proyecto RINGrid (Remote instrumentation in Next-Generation Grids), en el que colaboraron diversos paises de Europa y Latinoamérica.
El proyecto se cerró en Mayo del 2008 presentando los beneficios de la técnica, además de un modelo de arquitectura para el marco de trabajo y un prototipo de pequeña escala.

Las ventajas son bastante obvias: Mejor armotización del instrumental, permite colaboración directa entre instituciones lejanas y explotación de las capacidades clásicas de almacenamiento y cómputo del Grid.
En cuanto a las carencias, uno de los puntos débiles es el acceso en tiempo real a recursos, aunque se puede considerar que ya se tiene en la mayoría de los casos , hace falta definir estándares al respecto.

Basandose en los resultados de, entre otros, este proyecto nació el proyecto DORII, (Deployment Of Remote Instrumentation Infraestructure) pero de eso hablaré otro día ;)

La proxima entrada de la serie será sobre Arquitecturas Orientadas a Servicios

Fuentes: Grid Enabled Remote Instrumentation, RINGrid Whitepaper, EducaUse

[Seguir leyendo]

sábado, 13 de junio de 2009

Computación Grid: ¿Cómo funciona?

sábado, 13 de junio de 2009 0 comentarios

Un usuario accede al grid a través de un software instalado en su ordenador, o una interfaz web. Tras loguearse en el sistema puede enviar tareas a la red. Todo lo que ocurre después es transparente: a los ojos del usuario es como si estuviese trabajando con un único ordenador muy potente. ¿Y qué es lo que ocurre por debajo?


Tu ordenador se comunica con la red Grid a través del Resource Broker. El Resource Broker es el intermediario encargado de encontrar el mejor sitio para ejecutar tu tarea en toda la red.


Esto lo consigue a través de un Servicio de Información, que mantiene información actualizada de los recursos software hardware y los servicios que éstos proveen.


También tiene que consultar al Catálogo de Réplicas, que hace las veces de "páginas amarillas" y guarda la información sobre la localización de los archivos

Una vez encontrados los recursos la tarea se ejecuta y finalmente el Resoure Broker te devuelve los resultados.

Y la próxima entrada de la serie será "Instrumentación Remota: Hacia una infraestructura científica comunitaria"

Fuentes: The Grid Cafe
[Seguir leyendo]

miércoles, 3 de junio de 2009

Computación Grid (Indice)

miércoles, 3 de junio de 2009 0 comentarios
[Seguir leyendo]

miércoles, 27 de mayo de 2009

Computacion GRID: ¿Qué es?

miércoles, 27 de mayo de 2009 0 comentarios
Como sabéis me voy un par de meses a pelearme con el GRID, así que voy a explicar un poco de qué va

¿Qué es?
Supongo que todos los lectores del blog tienen claro de qué va el P2P.
El p2p es un sistema por el cual podemos descargar ficheros directamente de otros usuarios, y estos otros usuarios se pueden descargar ficheros nuestros. Esto presenta ventajas no se sobrecarga un único servidor, la descarga no falla si el servidor cae y hay otros usuarios compartiendo el mismo archivo, cualquier usuario puede compartir lo que quiera etc y lo mejor de todo es que todo lo gestiona un programita, el usuario no tiene que hacer casi nada.

Imagina que ahora además de compartir archivos puedes hacer uso del procesador, la RAM, la webcam (vale, ahí me he colado) ... etc de cualquier equipo conectado a la red, y además tienes un sistema que, al igual que el P2P, te gestiona los recursos de forma transparente. En líneas generales esto es un GRID.

¿Y esto en qué me beneficia?
La verdad es que al usuario final esta tecnología no le aporta demasiado, por ahora. Pero a la comunidad científica, el poder acceder a recursos remotos y distribuir la carga le resulta muy útil. Por ejemplo el CERN ha implementado un GRID para tratar las ingentes cantidades de información que generará el LHC. Los usuarios, por nuestra parte, podemos donar ciclos muertos de nuestra CPU a la ciencia en numerosos proyectos como el famoso SETI@home, Folding@Home (del que ya hablé en este blog) , y otros muchos más que se pueden encontrar en WorldCommunityGrid

Un proyecto curioso: EDUTAIN@GRID

El número de jugadores por sesión de un juego online que suporta un servidor depende de la carga que éste sea capaz de soportar. Típicamente se pueden distinguir dos tipos de juegos: Los Massive-multiplayer, con poca acción (RPGs) y los rápidos (Shooters) que soportan pocos jugadores por sesión ¿Y si distribuimos una parte de esta carga entre los jugadores y voluntarios? Uno de los objetivos de este proyecto, que cuenta con financiación europea, es el desarrollo de un massively multi-player shooter en primera persona
[Seguir leyendo]

jueves, 23 de abril de 2009

And the winner is.....

jueves, 23 de abril de 2009 2 comentarios
Santander.

Bueno, ya tengo mi respuesta de IBM. Es un "no, pero". "No" porque no tengo experiencia, y todos los estudiantes que tienen allí tienen experiencia previa. "Pero" porque están contentos conmigo, porque les ha gustado mi proyecto, y porque piensan que voy por el buen camino, me recomiendan que consiga algo de experiencia (eso ya está arreglado :)) y ademas me han mandado deberes (otra presentación, esta vez más técnica) porque quieren seguir discutiendo cosas conmigo, lo cual pienso que va a ser muy enriquecedor.

Así que nada, este verano a hacer computación GRID en Santander, que tampoco es ninguna tontería
[Seguir leyendo]

martes, 21 de abril de 2009

Introducción a la Investigación en el CSIC

martes, 21 de abril de 2009 0 comentarios

Investigar es mirar lo que otros miran y no han visto

Severo Ochoa


Esta mañana he estado en la central del CSIC (Consejo Superior de Investigaciones Científicas) en Madrid -un poco por encima de la embajada japonesa :p-, junto con otros 350 jóvenes promesas, todos ilusionados por ser la próxima generación que luchará, en precarias condiciones, que si no parece como que no tiene mérito, por potenciar el I+D español XD.

Primero nos han dado una "charla institucional", han presentado el CSIC y las condiciones de la beca JAE-Introducción a la investigación:
La beca tiene un periodo de disfrute de dos meses con posibilidad de incorporación el 1 de Junio, Julio o Agosto y posibilidad de vacaciones en Agosto para los que se incorporen en Julio. La dotación es de 1000€/mes para aquellos empadronados a más de 60km del destino (algo menos para el resto) más gastos de transporte y un seguro de accidentes (por si las baterías explosivas y esas cosas) y si publicamos algo, pertenece al CSIC.

Despues nos han divido por áreas y nos hemos ido con los coordinadores de nuestros respectivos grupos, en mi caso Ciencias y Tenologías Físicas, para que nos informen de nuestro destino y resolver dudas concretas. Como no cabíamos en el Instituto de Óptica porque eramos demasiados, nos han reunido en un jardín al solecito, muy bohemio todo.

Mi destino es el grupo de Computación Grid en Santander, les he planteado el tema de la entrevista que tuve la semana pasada en IBM. Me han dicho que no me lo piense y que si me conceden la estancia en Zürich rechace la beca (eso ya lo tenía claro yo, preguntaba por el protocolo), que el año que viene lo ponga como méritos académicos y vuelva a solicitarla :)

Me he llevado la grata sorpresa de encontrarme a un viejo amigo de Valencia al que tambien han concedido la beca, aunque para otro área: Felicidades R.!!

Y eso es todo por hoy, de nuevo en el metro me han robado la cartera de publicidad que nos han dado, el carterista ha hecho su agosto, dentro había un mini-bolígrafo con el logo del MEC! :p

PD: Gracias a L. por avisarme de la convocatoria de la beca e invitarme a comer :)
[Seguir leyendo]

viernes, 22 de febrero de 2008

Los herederos de SETI

viernes, 22 de febrero de 2008 2 comentarios
Supongo que todos recordareis el proyecto SETI@home, aquel salvapantallas con el que desde finales del siglo pasado podemos buscar aliens desde nuestro PC. Se trata de un proyecto de computación distribuida en el que los internautas podemos donar los "ciclos muertos" de nuestro procesador a la ciencia. No sé que imagen se tendría en aquel momento el proyecto en la comunidad científica pero lo cierto es que a día de hoy la computación distribuida se perfila como la próxima revolución e en el mundo de la informática, o al menos eso dicen los padres biológicos de la web

Quiero presentaros otro proyecto, menos conocido pero que ha recibido algunos premios, que sigue esta misma filosofía en la Universidad de Stanford (que a muchos os sonará de los creadores de google). Se trata de Folding@home, un proyecto que pretende investigar el plegado de las proteínas así como las enfermedades relacionadas por plegamientos "malformados" (Alzheimer, Parkinson y vacas locas son algunos ejemplos).

¿El plegado de proteínas? Sí, la función que cumplen las proteinas depende de la forma en que se plieguen, pero los mecanismos de este proceso de plegado son aun desconocidos; por tanto uno de los objetivos del proyecto es simular este plegado para descubrir cómo funciona y cómo falla.

Coste computacional: Una proteína se pliega en, aproximadamente, una millonésima de segundo, sin embargo simular este proceso, teniendo en cuenta que son modelos tridimensionales, conllevaría unos 30 años de cómputo (en una máquina del 2000, ahora serán algunos menos), por eso se hace necesaria la distribución.
[Seguir leyendo]