Monthly Archive for julio, 2008

Haizea TP 1.1

Hace un par de semanas anuncié el lanzamiento de la primera versión de Haizea, el software que estoy produciendo en mi investigación doctoral. Hoy he lanzado una versión actualizada (Technology Preview 1.1), disponible en:

La principal novedad de esta versión es que incluye soporte para OpenNebula 1.0, también lanzado hoy mismo (el grupo de investigación con el que trabajo este verano es el mismo que desarrolla OpenNebula). OpenNebula y Haizea, utilizados juntos, permiten gestionar máquinas virtuales Xen o KVM en un cluster utilizando distintos tipos de reservas (como reserva de recursos en avance). Hay muchos más detalles en la web de OpenNebula y de Haizea. Y, por supuesto, lanzo mi enhorabuena al equipo de OpenNebula por lo currada que está la primera versión estable de su software, y por el infinito buen rollo que me han mostrado al colaborar con ellos.

Otra novedad interesante: Nos han publicado la noticia del lanzamiento de OpenNebula y Haizea en la portada de Barrapunto :-)

El doctorado está bien, pero…

Ayer estuve en la Universidad de Deusto para dar mi ya habitual charla de julio. A lo largo del día hablé con la ínclita R (comentarista ocasional del blog) que, tras ponerle al día de cómo me iba todo en EEUU, me dijo que en el blog doy una visión muy romántica y optimista del doctorado en EEUU: muchos más recursos que en España, un sueldo digno, aventuras científicas, congresos, vivir la vida universitaria americana, charlas de investigadores famosos, etc. Todo eso es cierto, pero también tiene su lado negativo, al que sólo he aludido en una ocasión. Aunque suelo ser una persona generalmente optimista reconozco que, como me dijo R, puede haber gente que lee el blog y se imagina que lo del doctorado en EEUU es una gozada de principio a fin. Pues bien, para variar un poco, voy a ponerme pesimista y hacer un repaso de las cosas malas sobre hacer un doctorado en EEUU (al menos las que sufro y padezco yo; a otras personas seguro que le incordian cosas distintas)

  • Es mucho trabajo. La respuesta breve estandar a “¿Cómo es el doctorado en EEUU?” suele ser “Está muy bien, te exigen mucho y hay que trabajar mucho, pero está muy bien”. Sin embargo, me da la impresión de que a veces ese “hay que trabajar mucho” no termina de calar. Así que para ser claros: trabajo en mi tesis 10-12 horas al día, 6-7 días a la semana. Raramente tengo un fin de semana “entero” libre, y las vacaciones son contadisimas: las vacaciones más largas que me he pillado en los cuatro años que llevo en EEUU no exceden la semana de duración, y siempre en navidades. El resto del año de vez en cuando me concedo el capricho de pillarme un fin de semana de 3 o 4 días. Puede sonar a explotación laboral, pero no lo es, porque prácticamente todo ese trabajo me beneficia a mi, porque estoy trabajando en mi tesis (es decir, que el jefe, o “explotador”, vengo a ser yo). No hay un contrato que me diga que tengo que trabajar eso (o menos), ni hay un sindicato de estudiantes porque sinceramente no nos sentimos explotados. Es sencillamente la cantidad de trabajo que hay que meter para doctorarse aquí. Y punto.
  • El mundo científico no es el mundo del colegueo. Cuando llegué a EEUU, yo me imaginaba que el mundo de la ciencia era un club de colegas donde un montón de científicos cogidos de la mano trabajaban por el bien de la humanidad. No niego que, para muchos de nosotros, esa sea nuestra motivación abstracta, pero en la práctica el mundo de la ciencia es igual de competitivo (o más) que el mundo empresarial. Por ejemplo, hay que producir artículos, hay que presentarlos en las mejores conferencias (léase: las más competitivas), y hay que tenerlos listos para ayer. ¿Por qué? Por un lado, porque hay que convencer al gobierno de que te dé dinero para investigar, y para ello tienes que haber publicado más artículos y en mejores conferencias que el resto de grupos que se presentan para la misma beca. Por otro lado, tú mismo querrás conseguir un buen trabajo después de doctorarte, y para eso cuentan bastante las publicaciones y otros méritos donde habrás tenido que competir contra otras personas. Las publicaciones no son el único criterio, pero si uno muy importante y donde más se nota la competición.
  • La vida personal suele quedar en segundo plano. Yo soy de los que creen que hay que encontrar un balance entre la vida profesional y la personal, y que no se puede sacrificar una por otra. Sin embargo, tengo que admitir que es muy jodido mantener ese balance cuando tu trabajo consume tanto tiempo. Estos dos últimos años he visto como varios amigos de Bilbao ya se han casado (o están co-habitando con su pareja), y alguno incluso ya tiene un crío en camino. Yo me siento como que me estoy quedando atrás en ese sentido (aunque, como me corrigió un amigo en Bilbao, “ya, pero te estás adelantando en muchas otras cosas”), y que tendré que pillar carrerilla cuando me doctore…
  • Y la de cosas que me han pasado que no cuento en el blog… Como saben los lectores “de toda la vida”, el blog tiene sus límites y todas las cosa de naturaleza personal se quedan fuera (estos lectores lo saben porque son los amigos de toda la vida con lo que tengo ocasión de quedar en persona para contarles todo lo que no cuento aquí). Sólo diré que en el doctorado me ha tocado pasar por situaciones muy intensas (e incluso por cabronadas de espanto). Gustosamente se lo cuento a la gente que quiera escucharme en persona :-)

En fin, en este post estoy siendo negativo a propósito. Reitero que hacer el doctorado en EEUU es, para mi, un verdadero privilegio a la que pocas personas pueden acceder, y que no me arrepiento ni una iota de haber decidido, hace cuatro años, de dejar Bilbao para irme a vivir a Chicago. De hecho, estoy seguro que muchos doctorandos en España se cambiarían conmigo sin pensarselo dos veces. No olvidemos que, en España, los doctorandos generalmente ni se les paga un sueldo digno, ni pueden trabajar a tiempo completo en su tesis, ni se les proporcionan los recursos adecuados para su investigación. Todo lo que he dicho arriba no es para quejarme de vicio, sino para que no quede duda de que, a pesar de todas las ventajas que supone hacer el doctorado en EEUU, también tiene su coste (y si estás pensando en hacer el doctorado en EEUU, ten muy claro en qué te estás metiendo).

Charla: Computación a lo Grande

Como ya viene siendo habitual, este año voy a dar una charla en los Cursillos de Julio de ESIDE. En concreto, voy a dar una charla titulada “Computación a lo Grande” en el que voy a proporcionar una introducción divulgativa a la supercomputación. La charla tendrá lugar este viernes, 18 de julio, a las 12:00 en la Sala de Videoconferencias de ESIDE (Facultad de Ingeniería de la Universidad de Deusto). Aquí tenéis el resumen de la charla:

Todos hemos oído hablar de superordenadores, enormes máquinas capaces de tareas gigantescas, como simular una supernova hasta el más ínfimo detalle. Pero… ¿cómo funcionan estos enormes maquinones? ¿Acaso son como un ordenador de sobremesa, pero con un procesador de 2.7 hipermegasuperherzios? ¿Cómo se realiza una computación cuando tengo a mi disposición decenas de miles, o incluso cientos de miles, de procesadores? ¿Acaso se parte mi programa en “cachitos”? ¿Cómo se hace esto?

Esta charla responderá a estas preguntas, y proporcionará una introducción de alto nivel al funcionamiento de superordenadores y clusters dedicados a la computación científica. La charla no tiene ningún prerequisito y está dirigida a un público informático general.

Como todos los años, la asistencia es libre y no hay que apuntarse o matricularse previamente.

Haizea

Hoy he llegado a un punto relativamente importante en mi investigación, ya que el trabajo que he estado haciendo recientemente ha alcanzado por fin suficiente masa crítica como para publicarlo no sólo en forma de artículo sino también en forma de proyecto de software. Hoy he lanzado públicamente el proyecto Haizea:

¿Qué es Haizea? Bueno, la respuesta a esa pregunta se encuentra en la web, pero intentaré resumir y dar poco el tostón (aunque voy a tener que asumir un mínimo de conocimiento informático). Suponed que tenéis un cluster de ordenadores, y que queréis compartir ese cluster entre varios usuarios. Evidentemente, cada usuario tendrá necesidades distintas: algunos querrán ejecutar programas en modo batch y otros querrán control exclusivo de parte o la totalidad del cluster durante un tiempo (p.ej., imaginad un profesor que quiere impartir un laboratorio de programación paralela de 14:00 a 16:00 todos los miércoles). Y cada usuario, claro, quiere un entorno software distinto. Hay soluciones que abordan partes de este problema y suelen estar muy especializados para un caso de uso concreto. Por ejemplo, los gestores de jobs son muy buenos para ejecución batch desatendida, pero suelen ser nefastamente malos para reservas en tiempos concretos (y de darte exactamente el entorno software que quieres, ni hablar). Por contra, sistemas como Amazon EC2 son excelentes para conseguir exactamente el entorno software que quieres, pero hay que pedirlo en el instante en el que se quiere. Similarmente, VMWare y compañía ofrecen gestores de infraestructura virtual pero principalmente orientados a servidores con alta disponibilidad.

Pues bien, Haizea (y buena parte de la investigación que realizo) tiene como objetivo proporcionar una solución general al problema del aprovisionamiento de recursos. El software que he desarrollado, utilizado en combinación con OpenNebula (un gestor open source de infraestructura virtual desarrollado por el grupo de Arquitectura de Sistemas Distribuidos de la Universidad Complutense de Madrid), permite gestionar un cluster Xen o KVM (y pronto también clusters VMWare) y desplegar máquinas virtuales dinámicamente en el cluster satisfaciendo varios casos de uso simultáneamente y eficientemente. Lo mismo puedes pedir “quiero una máquina con 2 CPUs y la quiero ahora“, o “dame 10 máquinas, cuando puedas, pero que se ejecuten durante 2 horas”, o “dame 20 máquinas mañana de 14:00 a 16:00″. Por cierto, “eficientemente” es la palabra clave aquí. Una de las razones por las que las soluciones existentes se centran en un caso de uso concreto es porque no suele ser posible combinar varios eficientemente. Ojo que la versión actual es todavía un “technology preview”, así que todavía le falta bastante funcionalidad, pero el proyecto irá creciendo bastante en los próximos meses.

Por supuesto, detrás de todo esto hay unos rollos macabeos tremendos de investigación. Al que se sienta aventurero, le animo a que se lea el artículo donde presenté las ideas principales de Haizea: Combining Batch Execution and Leasing Using Virtual Machines. Aunque no lo parezca, el contexto de esta investigación sigue siendo la computación grid, donde el aprovisionamiento eficiente de recursos es un problema. Más recientemente, Haizea también podría enmarcarse como una contribución dentro de la “computación cloud“, donde los recursos tipicamente se gestionan con tecnologías de virtualización (a los que estamos en el mundo de la grid, el término “cloud” nos resulta un poco marketing-iano porque toma muchas ideas de la grid, únicamente añadiendo el uso de máquinas virtuales). En fin, si alguien no ve claro algo de lo que digo aquí o en la web de Haizea, o qué utilidad tiene esto, o cuanto son 400 dracmas, que lo diga en los comentarios y yo respondo ipso facto.

Por cierto, no lo he dicho explícitamente, pero Haizea es, evidentemente, open source. Ya iba siendo hora de que, después de tanto predicar a favor del software libre y el código abierto, hiciese mi propia contribución. Y, sinceramente, lo que más me anima de este proyecto es saber que estoy devolviendo algo a la comunidad a través de un proceso abierto y colaborativo.

P.D.- Como ya saben los lectores euskaldunes, “Haizea” significa “viento” (vale, vale, más correctamente “el viento”). Inicialmente escogí ese nombre (hace ya casi un año) simplemente porque quería que mi sistema tuviese un nombre en euskera que sonase bien tanto en inglés como en castellano y me dio por “haizea”. Eso si, durante el último año han estado saliendo todo tipo de juegos de palabras en relación a la “computación cloud”. No se paran de ver artículos tipo “Are clouds a nebulous concept?”, “Will clouds go up in smoke?”, “Cloud Computing: Eyes on the skies”, etc, etc. Así que “haizea” resultó ser, sin querer, otro juego de palabras más… porque las nubes no se mueven sin un poco de viento… (eeeeeeh, eeeeeeh, ¿lo pillas? ¡viento! ¡nubes! si es que soy un caso perdido… xD )

P.P.D.- En la web doy los agradecimientos de rigor, pero la verdad es que tengo agradecer especialmente el apoyo del Grupo de Arquitectura de Sistemas Distribuidos de la Universidad Complutense de Madrid, con el que estoy trabajando este verano. Si no llega a ser por ellos, que me ofrecieron la oportunidad de desarrollar una versión más estable de Haizea para utilizar en combinación con OpenNebula, no creo que Haizea hubiese llegado a ver la luz del día (o, al menos, habría tardado bastante más). Y tampoco hay que olvidad, claro, que me han traido a España durante todo el verano ;-)

¡Ballenas!

El lunes pasado volví de Boston. La conferencia fue muy interesante, y mi charla fue bastante bien (después de la charla se acercaron unas cuantas personas para decirme que les había gustado; siempre es una buena señal). Pero voy a dejar los temas académicos a un lado, ya que tengo pensado escribir sobre ellos la semana que viene, coincidiendo con algo que pasará entonces (ahhhhh… tendréis que esperar al post para saber lo que es…) En este post lo que me concierne es lo que pasó después de la conferencia.

La conferencia terminó el viernes y, como mi vuelo no salía hasta el domingo, pues reservé el sábado para hacer turismo. Otro asistente a la conferencia, que también se quedaba en Boston hasta el domingo, se unió junto con otra persona que el susodicho conoció en el hostal donde se hospedaba. Siguiendo los consejos de Arkaitz y R nos aventuramos a seguir el Freedom Trail (un paseo por las zonas historias de Boston) e ir a ver ballenas. Lo de las ballenas básicamente consiste en un viaje de tres horas en el que te pasas una hora yendo a la zona donde suelen estar las ballenas, una hora observándolas, y otra hora volviendo. Y si no ves ballenas, te dan un billete gratis para otro viaje. Afortunadamente, tuvimos suerte y no vimos una sino tres ballenas. Y no sólo eso, eran ballenas jorobadas (humpback whales), unos ballenones de unos 15 metros de largo. Y, nada más llegar, una de las ballenas hizo esta pirueta:

breaching-humpback-hickerphoto-pic-1.jpg

La foto, evidentemente, no es mía. Pero eso es exactamente lo que hizo la ballena. La bióloga que venía en el viaje para narrar la excursión y responder preguntas nos dijo que no era habitual que las ballenas hiciesen esa pirueta, y que en estos viajes generalmente solo les ves aletear, expulsar aire, nadar cerca del barco, etc. Pero vamos, la hora viendo las ballenas fue impresionante. Una de ellas incluso llego a nadar debajo de nuestro barco, con lo cual la vimos muy muy cerca. Si vais a Boston, recomiendo el plan de ir a ver ballenas.

El resto del día lo dedicamos al Freedom Trail. No nos lo hicimos entero, pero si tuvimos ocasión de ver unas cuantos sitios interesantes. Habiendo estudiado en un colegio americano, me parece que lo disfruté un poco más que mis compañeros turísticos porque sabía que significado tenían muchos de los sitios (como la iglesia donde se colgaron las linternas que le indicaron a Paul Revere por donde avanzaban las tropas británicas).

Por cierto, las pocas fotos que hice en Boston están disponibles en la galería.

El domingo, como mi vuelo no salía hasta las seis de la tarde, aproveché para ir a una matinal de Wall·E, la nueva película de Pixar. Im. Presionante. No le falla nada y la animación, como siempre, es una gozada. Lo más sorprendente de la película es que apenas tiene dialogo humano, y casi todas las emociones se comunican, con sorprendente efectividad, a través de ruidos de robots (el protagonista de la película, Wall·E, es un robot). Como dijo el director de la película, es como si hubiese hecho “R2-D2, la película” (de hecho, el editor de sonidos es la misma persona que diseñó los ruidos de R2-D2).

Tras la película, me fui al aeropuerto, donde pude “ver” la final de la Eurocopa. Y por “ver” quiero decir que estaba siguiéndola a través de Internet, porque en el aeropuerto de Boston evidentemente no tenían ninguna razón para ponerlo en la tele. Eso sí, como el vuelo era un vuelo directo a Madrid, la puerta de embarque estaba llena de españoles que, al terminar el partido, pegaron un grito de alegría que pilló por sorpresa a muchos otros pasajeros (que ni siquiera sabían lo que es la Eurocopa). Por cierto, la vuelta la hice con Iberia. Sinceramente, no sé por qué sigo volando con ellos… ha llegado a tal punto que me resulta más atractivo hacer escala en Londres simplemente por poder volar con American Airlines o British Airways. En la clase turista más barriobajera, American y British te ofrecen una pantalla individual en tu asiendo con video-sobre-demanda con una selección más que suficiente para mantenerse entretenido durante siete horas. Los asientos son bastante cómodos (un invento que me encanta es que la parte superior tiene partes móviles que lo convierten en un reposa-cabezas para evitar que tu cabeza se mueva al dormir). Incluso la comida es sorprendentemente buena. En Iberia sigue habiendo un único “canal” de entretenimiento, así que si no te gusta la película que ponen, pues vas listo. Los asientos son claustrofóbicos, y la comida lamentable. Toda la experiencia es de vergüenza ajena, vamos. Menos mal que el retorno a Chicago en septiembre lo hago con British Airways…