Los fundadores de la teoría de sistemas distribuidos en los brazos de la hidra

Los fundadores de la teoría de sistemas distribuidos en los brazos de la hidraEs Leslie Lamport — autor de obras fundamentales en computación distribuida, y quizás lo conozcan por la letra La en la palabra LaTeX — «Lamport TeX». Fue él quien introdujo por primera vez, en 1979, el concepto de consistencia secuencial, y su artículo «How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs» recibió el premio Dijkstra (de hecho, en 2000 el premio se conocía como el antiguo: «PODC Influential Paper Award»). Hay un artículo sobre él en Wikipedia, donde se pueden encontrar algunos enlaces interesantes más. Si te entusiasma resolver problemas de happens-before o los problemas de los generales bizantinos (BFT), debes entender que detrás de todo esto está Lamport.

Y además, pronto vendrá a nuestra nueva conferencia sobre computación distribuida — Hydra, que se llevará a cabo del 11 al 12 de julio en San Petersburgo. Veamos de qué se trata.

Hydra 2019

Temas como la programación multihilo son algunos de los más populares en nuestras conferencias, siempre lo han sido. Justo estaba vacío en esta sala, pero de repente aparece una persona en el escenario hablando sobre el modelo de memoria, happens-before o la recolección de basura multihilo y — ¡boom! — ya cerca de mil personas ocupan todo el espacio disponible para sentarse y escuchar atentamente. ¿Cuál es la clave de este éxito? ¿Tal vez es porque todos tenemos algún hardware que puede organizar computación distribuida? ¿O porque subconscientemente entendemos nuestra incapacidad para aprovecharlo al máximo? Hay una historia real de un cuantitativo de San Petersburgo (es decir, un analista y desarrollador cuantitativo financiero) que tenía a su disposición un clúster de computación cuya potencia solo puede utilizar él. ¿Y qué harías al obtener una potencia mucho mayor de la que tienes actualmente para realizar tus tareas?

Debido a tal popularidad, el tema del rendimiento y la computación eficiente tiende a extenderse por el programa de conferencias. ¿Cuánto de los dos días de presentaciones se puede dedicar al rendimiento — un tercio, dos tercios? En algunos lugares hay limitaciones artificiales que limitan este crecimiento: además del rendimiento, siempre debe haber espacio para nuevos frameworks web, para algún devops o astrofísica arquitectónica. ¡No, rendimiento, no te comerás a todos nosotros por completo!

Podemos optar por un camino diferente, rendirnos y hacer una conferencia que sea completamente sobre computación distribuida y solo sobre eso. Y ahí está, Hidra.

Seamos honestos, hoy en día todos los cálculos son de alguna manera distribuidos. Ya sea en una máquina de múltiples núcleos, un clúster de computación o un servicio distribuido a gran escala, siempre hay numerosos procesos que realizan cálculos independientes en paralelo, sincronizándose entre sí. La teoría de cómo funciona esto y su aplicación práctica serán el enfoque de Hydra.

Programa de la conferencia

El programa está actualmente en fase de formación. Debería incluir presentaciones de los pioneros en teorías de sistemas distribuidos y de ingenieros que trabajan con ellos en producción.

Por ejemplo, ya se conoce la participación de Leslie Lamport de Microsoft Research y Maurice Herlihy de la Universidad de Brown.

Los fundadores de la teoría de sistemas distribuidos en los brazos de la hidra Maurice Herlihy es un profesor muy conocido y respetado en Ciencias de la Computación, también hay una página en Wikipedia, donde se pueden explorar enlaces y trabajos. Allí pueden observar dos premios Dijkstra: el primero, por su trabajo en «Wait-Free Synchronization», y el segundo, más reciente — «Transactional Memory: Architectural Support for Lock-Free Data Structures». Por cierto, los enlaces no llevan a SciHub, sino a la Universidad de Brown y a la Universidad de Virginia Tech, se pueden abrir y leer.

Maurice tiene previsto dar una keynote titulada «Blockchains from a distributed computing perspective». Si les interesa, pueden ver la grabación de su charla en JUG de San Petersburgo. Evalúen cuán clara y comprensible presenta el tema.

Reproducir video

Los fundadores de la teoría de sistemas distribuidos en los brazos de la hidraLa segunda keynote titulada «Dual Data Structures» será presentada por Michael Scott de la Universidad de Rochester. Y adivinen qué — también tiene su página en Wikipedia. En Wisconsin es conocido por su trabajo como decano en la Universidad de Wisconsin-Madison, y a nivel mundial, es la persona que junto con Doug Lea desarrolló esos algoritmos no bloqueantes y colas de sincronización en las que se basan las bibliotecas de Java. Su premio Dijkstra lo recibió tres años después de Herlihy, por su trabajo «Algorithms for scalable synchronization on shared-memory multiprocessors» (como corresponde, está disponible públicamente en la biblioteca en línea de la Universidad de Rochester).

Aún queda mucho tiempo hasta mediados de julio. Sobre los demás ponentes y sus temas iremos informando a medida que se concrete el programa y nos acerquemos a julio.

De hecho, surge la pregunta: ¿por qué hacemos Hydra en verano? Después de todo, es temporada muerta, vacaciones. El problema es que entre los ponentes hay profesores universitarios, y en cualquier otro momento están ocupados. Simplemente no podíamos elegir otras fechas.

Zonas de discusión

En otras conferencias, a veces sucede que el ponente presenta lo que debe y se va. Los participantes ni siquiera tienen tiempo para buscarlo, ya que casi sin intervalo comienza la siguiente conferencia. Esto es muy doloroso, especialmente si hay personas tan importantes como Lamport, Herlihy y Scott presentes, y en realidad, vas a la conferencia solo para encontrarte con ellos y discutir algo.

En nuestro caso, este problema está resuelto. Justo después de su presentación, el ponente se dirige a una zona de discusión especial, equipada con al menos una pizarra y marcadores, y tienes un margen de tiempo bastante amplio. Formalmente, el ponente promete estar allí al menos todo el tiempo del descanso entre conferencias. En realidad, estas zonas de discusión pueden pueden extenderse durante horas (depende del deseo y la resistencia del ponente).

En cuanto a Lamport, si entendí bien, quiere convencer al mayor número posible de personas de que TLA+ — es algo bueno. (Artículo sobre TLA+ en Wikipedia). Quizás sea una buena oportunidad para que los ingenieros aprendan algo nuevo y útil. Leslie propone esta opción: quienes estén interesados pueden ver sus conferencias anteriores y venir con preguntas. Es decir, en lugar de una keynote, podría haber una especie de sesión de preguntas y respuestas especializada, y luego también una zona de discusión. Investigé un poco y encontré un excelente curso sobre TLA+ (oficialmente duplicado en una lista de reproducción en YouTube) y una conferencia de una hora "Thinking Above the Code" en la Microsoft Faculty Summit.

Si has considerado a todas estas personas como nombres grabados en piedra de Wikipedia y en las portadas de libros, ¡es el momento de conocerlos en persona! Hablar y hacer preguntas que las páginas de artículos científicos no responderán, pero cuyos autores estarán encantados de contactar.

Convocatoria de Ponencias

No es un secreto que muchos de los que están leyendo este artículo también están dispuestos a contar algo bastante interesante. Desde un punto de vista ingenieril, científico, o de cualquier otro tipo. La computación distribuida es un tema muy amplio y profundo, donde hay espacio para todos.

Si quieres presentar junto a Lamport, es completamente posible. Para convertirte en ponente, necesitas haz clic en el enlace, léelo detenidamente y sigue las instrucciones.

Mantén la calma, una vez que te unas al proceso, recibirás ayuda. El comité organizador tiene suficientes recursos para asistir con la presentación, su contenido y formato. El coordinador te ayudará con los temas organizativos, entre otros.

Presta especial atención a la imagen con las fechas. Julio es una fecha bastante lejana para un participante, pero el ponente necesita comenzar a trabajar desde ahora.

Los fundadores de la teoría de sistemas distribuidos en los brazos de la hidra

Escuela SPTDC

La conferencia se llevará a cabo en el mismo lugar que la escuela SPTDC, por lo que para todos los que compren un ticket para la escuela, los tickets para la conferencia serán con un 20% de descuento.

Summer School on Practice and Theory of Distributed Computing (SPTDC) es una escuela que ofrece una amplia gama de cursos sobre aspectos prácticos y teóricos de los sistemas distribuidos, impartidos por expertos reconocidos en sus respectivos campos.

La escuela se impartirá en inglés, así que aquí tienes una lista de los temas que se tratarán:

  • Estructuras de datos concurrentes: corrección y eficiencia;
  • Algoritmos para memoria no volátil;
  • Computabilidad distribuida;
  • Aprendizaje automático distribuido;
  • Replicación de máquinas de estado y Paxos;
  • Tolerancia a fallos bizantinos;
  • Fundamentos algorítmicos de blockchains.

Los siguientes ponentes hablarán:

  • Leslie Lamport (Microsoft);
  • Maurice Herlihy (Universidad de Brown);
  • Michael Scott (Universidad de Rochester);
  • Dan Alistarh (IST Austria);
  • Trevor Brown (Universidad de Waterloo);
  • Eli Gafni (UCLA);
  • Danny Hendler (Universidad Ben Gurion);
  • Achour Mostefaoui (Universidad de Nantes).

Lista de reproducción con las presentaciones de la escuela anterior se puede ver libremente en YouTube:

Reproducir video

Próximos pasos

El programa de la conferencia aún se está formando. Mantente informado a través de Habr o en redes sociales (fb, vk, twitter).

Si realmente crees en la conferencia (o quieres aprovechar el precio especial de lanzamiento conocido como "Early Bird") — puedes ir al sitio web y comprar boletos.

¡Nos vemos en Hydra!

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster