- PVSM.RU - https://www.pvsm.ru -

SPTDC 2020 — третья школа о практике и теории распределённых вычислений

Theory is when you know everything but nothing works.
Practice is when everything works but no one knows why.
In distributed systems, theory and practice are combined:
nothing works and no one knows why.

Чтобы доказать, что шутка в эпиграфе — абсолютная глупость, мы уже в третий раз проводим SPTDC (school on practice and theory of distributed computing). Об истории школы, её сооснователях Петре Кузнецове и Виталии Аксёнове, а также об участии JUG Ru Group в организации SPTDC мы уже рассказывали [1] на Хабре. Поэтому сегодня — о школе в 2020 году, о лекциях и лекторах, а также об отличиях школы от конференции.

Школа SPTDC пройдёт с 6 по 9 июля 2020 года в Москве.

Все лекции будут на английском языке. Основные темы лекций: persistent concurrent computing, cryptographic tools for distributed systems, formal methods for verifying consensus protocols, consistency in large-scale systems, distributed machine learning.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 1
Сразу догадались, в каком воинском звании персонажи на картинке? Я вас обожаю.

Лекторы и лекции

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 2Нир Шавит (Nir Shavit) — профессор в MIT и Тель-Авивском Университете, соавтор великой книги The Art of Multiprocessor Programming [2], обладатель премии Дейкстры [3] за разработку и реализацию программной транзакционной памяти [4] (STM) и премии Гёделя [5] за работу по применению алгебраической топологии к моделированию вычислений с разделяемой памятью, сооснователь компании Neural Magic [6], создающей быстрые алгоритмы машинного обучения для обычных CPU, и, разумеется, — обладатель собственной страницы в Википедии [7] с лихой и знойной фотографией. Нир уже участвовал в нашей школе в 2017 году, где сделал исчерпывающий обзор техник взятия блокировок (часть 1 [8], часть 2 [9]). О чём Нир расскажет в этом году, мы пока не знаем, но надеемся на новости с переднего края науки.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 3Майкл Скотт (Michael Scott) — исследователь в Рочестерском университете [10], известный всем Java-разработчикам как создатель неблокирующих алгоритмов и синхронных очередей [11] из стандартной библиотеки Java. Разумеется, с премией Дейкстры за разработку алгоритмов синхронизации для вычислений с разделяемой памятью [12] и собственной страницей в Википедии [13]. В прошлом году Майкл прочёл на нашей школе лекцию о неблокирующих структурах данных (часть 1 [14], часть 2 [15]). В этом году он расскажет [16] о программировании с использованием энергонезависимой памяти [17] (NVM), которая уменьшает сложность программ и накладные расходы на работу с памятью по сравнению с «обычной» памятью со случайным доступом (DRAM).

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 4Идит Кейдар (Idit Keidar) — профессор в Технионе и обладательница индекса Хирша [18] около 40 (что очень и очень немало) за две сотни научных статей [19] в области распределённых вычислений, многопоточности и отказоустойчивости. Идит впервые участвует в нашей школе, где она прочтёт лекцию [20] о базовых аспектах работы распределённых хранилищ данных: эмуляции распределённой памяти, выработке консенсуса и изменении конфигурации.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 5Родриго Родригез (Rodrigo Rodrigues) — профессор в Técnico, член лаборатории INESC-ID [21] и автор исследовательских работ [22] в области распределённых систем. В этом году в нашей школе Родриго расскажет [23] о консистентности и изоляции в распределённых хранилищах данных, а также проанализирует с помощью CAP-теоремы [24] реализуемость на практике нескольких моделей консистентности и изоляции.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 6Чэнь Цзин (Jing Chen) — профессор в Университете штата Нью-Йорк в Стоуни-Брук, автор исследовательских работ [25] в области блокчейна и ведущий учёный в Algorand [26] — компании и блокчейн-платформе, использующей алгоритм консенсуса, полностью основанный на Proof of Stake [27]. В этом году в нашей школе Чэнь расскажет о блокчейне Algorand и способах достижения его интересных свойств: нетребовательности к вычислительным ресурсам сети, невозможности расщепления истории транзакций и гарантии окончания обработки транзакции после её добавления в блокчейн.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 7Кристиан Кашин [28] (Christian Cachin) — профессор в Бернском университете, возглавляющий исследовательскую группу в области защиты данных, соавтор книги «Introduction to Reliable and Secure Distributed Programming [29]», разработчик блокчейн-платформы Hyperledger Fabric [30] (о ней даже был пост на Хабре [31]) и автор исследовательских работ [32] в области криптографии и безопасности в распределённых системах. В этом году в нашей школе Кристиан прочитает лекцию [33] из четырёх частей о критографических инструментах для распределённых вычислений: симметричной и асимметричной криптографии, а также о криптографии с разделяемым ключом [34], псевдослучайных числах и верифицируемой генерации случайных чисел [35].

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 8Марко Вуколич [36] (Marko Vukolic) — исследователь в IBM Research, автор работ [37] в области блокчейна и разработчик Hyperledger Fabric. Мы пока не знаем, о чём Марко расскажет в нашей школе в этом году, но надеемся, что узнаем о его новейших разработках в области блокчейна: исследовании деградации производительности [38] протоколов распределённого консенсуса на кластерах до 100 машин, широковещательном протоколе Mir [39] с глобальным порядком и Византийской отказоустойчивостью [40] или безблочном блокчейне StreamChain [41], минимизирующем время обработки транзакций.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 9Прасад Джаянти (Prasad Jayanti) — профессор в Дартмутском колледже, входящем в элитную Лигу Плюща [42], и автор исследовательских работ [43] в области многопоточных алгоритмов. В этом году в нашей школе Прасад прочитает лекцию [44] о синхронизации потоков и алгоритмах для реализации различных вариантов мьютекса [45]: с функциями прерывания или восстановления в моделях энергонезависимой памяти, а также с раздельными операциями чтения и записи.

SPTDC 2020 — третья школа о практике и теории распределённых вычислений - 10Алексей Гоцман (Alexey Gotsman) — профессор в IMDEA и автор исследовательских работ [46] в области программной верификации алгоритмов. Мы пока не знаем, о чём Алексей прочитает лекцию в нашей школе в этом году, но рассчитываем на тему на пересечении программной верификации и распределённых систем.

Почему это школа, а не конференция?

Во-первых, лекторы выступают в академическом формате и читают каждую большую лекцию две пары: «полтора часа — перерыв — ещё полтора часа». Через много лет после университета, с привычкой к часовым докладам на конференциях да 10-минутным роликам на Ютубе — это может быть непросто. Хороший лектор сделает все три часа интересными, но за пластичность собственного мозга [47] каждый отвечает сам.

Полезный совет: потренируйтесь на видеозаписях лекций школы в 2017 году [48] и в 2019 году [48]. Прощай, работа — привет, византийские генералы.

Во-вторых, лекторы фокусируются на научных исследованиях и рассказывают как о фундаментальных основах распределённых систем и параллельных вычислений, так и о новостях с переднего края науки. Если ваша цель — на следующий день после школы по горячим следам быстро что-нибудь запрограммировать и задеплоить в продакшн — это тоже может быть непросто.

Полезный совет: поищите исследовательские работы лекторов школы на Google Scholar [49] и arXiv.org [50]. Если вам по кайфу читать научные пейперы, школа тоже понравится.

В-третьих, школа SPTDC 2020 — не конференция, потому что конференция о распределённых системах и параллельных вычислениях — это Hydra 2020 [51]. Недавно на Хабре был пост с обзором её программы [52]. В прошлом году SPTDC и Hydra проходили одновременно и на одной площадке. В этом году они не пересекаются по датам, поэтому не конкурируют друг с другом за ваше время и внимание.

Полезный совет: посмотрите программу конференции Hydra и подумайте о том, чтобы после школы посетить ещё и конференцию. Это будет неплохая неделька.

Как попасть в школу?

  • Запишите в календарь даты с 6 по 9 июля 2020 года (а лучше — по 11 июля, чтобы после школы сходить на конференцию Hydra).
  • Соберитесь с духом, подготовьтесь.
  • Выбирайте билеты [53] и идите в школу.

Автор: Игорь Луканин

Источник [54]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/algoritmy/349322

Ссылки в тексте:

[1] рассказывали: https://habr.com/ru/company/jugru/blog/453952/

[2] The Art of Multiprocessor Programming: https://www.amazon.com/Art-Multiprocessor-Programming-Revised-Reprint-dp-0123973376/dp/0123973376/

[3] премии Дейкстры: https://en.wikipedia.org/wiki/Dijkstra_Prize

[4] программной транзакционной памяти: https://en.wikipedia.org/wiki/Software_transactional_memory

[5] премии Гёделя: https://en.wikipedia.org/wiki/G%C3%B6del_Prize

[6] Neural Magic: https://neuralmagic.com

[7] страницы в Википедии: https://en.wikipedia.org/wiki/Nir_Shavit

[8] часть 1: https://www.youtube.com/watch?v=FsXB-tKUeUw&list=PLVe-2wcL84b9G9o7KPubp6NO0nqI1a-Qp&index=2

[9] часть 2: https://www.youtube.com/watch?v=RPVKu4UtpWo&list=PLVe-2wcL84b9G9o7KPubp6NO0nqI1a-Qp&index=3

[10] Рочестерском университете: https://www.cs.rochester.edu/~scott/

[11] неблокирующих алгоритмов и синхронных очередей: https://docs.oracle.com/en/java/javase/13/docs/api/java.base/java/util/concurrent/package-summary.html

[12] алгоритмов синхронизации для вычислений с разделяемой памятью: https://www.cs.rochester.edu/u/scott/papers/1991_TOCS_synch.pdf

[13] страницей в Википедии: https://en.wikipedia.org/wiki/Michael_L._Scott

[14] часть 1: https://www.youtube.com/watch?v=9XAx279s7gs&list=PL_5iU_mKtf3u-ovgZZJ7xOlqAFiFxEVwE&index=12

[15] часть 2: https://www.youtube.com/watch?v=cQIktrroRL0&list=PL_5iU_mKtf3u-ovgZZJ7xOlqAFiFxEVwE&index=13

[16] расскажет: https://sptdc.ru/2020/msk/talks/3xihhpvmc8asyebrcxvasq/?utm_source=habr&utm_medium=491666

[17] энергонезависимой памяти: https://en.wikipedia.org/wiki/Non-volatile_memory

[18] индекса Хирша: https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81_%D0%A5%D0%B8%D1%80%D1%88%D0%B0

[19] две сотни научных статей: https://scholar.google.com/citations?hl=ru&user=dH_bwg8AAAAJ

[20] прочтёт лекцию: https://sptdc.ru/2020/msk/talks/61getpbw7mokatwtelxjhp/?utm_source=habr&utm_medium=491666

[21] INESC-ID: https://inesc-id.pt

[22] исследовательских работ: https://scholar.google.com/citations?user=mxdX7FYAAAAJ&hl=ru&oi=sra

[23] расскажет: https://sptdc.ru/2020/msk/talks/7jkjdt06do568oeld0xpwq/?utm_source=habr&utm_medium=491666

[24] CAP-теоремы: https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B5%D0%BC%D0%B0_CAP

[25] исследовательских работ: https://scholar.google.com/citations?user=usw1MV0AAAAJ&hl=ru&oi=sra

[26] Algorand: https://algorand.foundation

[27] Proof of Stake: https://en.wikipedia.org/wiki/Proof_of_stake

[28] Кристиан Кашин: https://twitter.com/cczurich

[29] Introduction to Reliable and Secure Distributed Programming: https://www.amazon.com/Introduction-Reliable-Secure-Distributed-Programming/dp/3642152597

[30] Hyperledger Fabric: https://github.com/hyperledger/fabric

[31] пост на Хабре: https://habr.com/ru/company/ibm/blog/444874/

[32] исследовательских работ: https://scholar.google.com/citations?user=c8zferMAAAAJ&hl=ru&oi=ao

[33] прочитает лекцию: https://sptdc.ru/2020/msk/talks/awjsqjnxhbjxgkcshozpn/?utm_source=habr&utm_medium=491666

[34] криптографии с разделяемым ключом: https://en.wikipedia.org/wiki/Threshold_cryptosystem

[35] верифицируемой генерации случайных чисел: https://en.wikipedia.org/wiki/Verifiable_random_function

[36] Марко Вуколич: https://twitter.com/marko_vukolic

[37] работ: https://scholar.google.com/citations?user=YL-VvMEAAAAJ&hl=ru&oi=ao

[38] деградации производительности: https://arxiv.org/abs/1911.07966

[39] протоколе Mir: https://arxiv.org/abs/1906.05552

[40] Византийской отказоустойчивостью: https://en.wikipedia.org/wiki/Byzantine_fault

[41] StreamChain: https://arxiv.org/abs/1808.08406

[42] Лигу Плюща: https://ru.wikipedia.org/wiki/%D0%9B%D0%B8%D0%B3%D0%B0_%D0%BF%D0%BB%D1%8E%D1%89%D0%B0

[43] исследовательских работ: https://scholar.google.com/citations?user=TH512IgAAAAJ&hl=ru&oi=sra

[44] прочитает лекцию: https://sptdc.ru/2020/msk/talks/4vrlarnavxs6zq40609nwy/?utm_source=habr&utm_medium=491666

[45] мьютекса: https://en.wikipedia.org/wiki/Mutual_exclusion

[46] исследовательских работ: https://scholar.google.com/scholar?hl=ru&as_sdt=0%2C5&q=Alexey+Gotsman&btnG=

[47] мозга: http://www.braintools.ru

[48] 2017 году: https://www.youtube.com/playlist?list=PL_5iU_mKtf3u-ovgZZJ7xOlqAFiFxEVwE

[49] Google Scholar: https://scholar.google.com

[50] arXiv.org: https://arxiv.org

[51] Hydra 2020: https://hydraconf.com/?utm_source=habr&utm_medium=491666

[52] обзором её программы: https://habr.com/ru/company/jugru/blog/490246/

[53] Выбирайте билеты: https://sptdc.ru/?utm_source=habr&utm_medium=491666

[54] Источник: https://habr.com/ru/post/491666/?utm_source=habrahabr&utm_medium=rss&utm_campaign=491666