Воскресенье 11 октября: "Модели памяти языков программирования: проблемы, решения и направления развития" (А. Подкопаев)

31 views
Skip to first unread message

Alexander V. Smal

unread,
Oct 5, 2020, 11:19:13 AM10/5/20
to pdmic...@googlegroups.com
Добрый день!

В воскресенье 11 октября в 18:00 Антон Подкопаев (MPI-SWS, JetBrains Research, ВШЭ) прочтёт лекцию "Модели памяти языков программирования: проблемы, решения и направления развития" https://compsciclub.ru/courses/csseminar/2020-autumn/classes/6061/

Лекция будет читаться через zoom. Подробные инструкции будут опубликованы в новостях курса (их получат те, кто запишется на курс) и продублированы в эту рассылку.

Анонс лекции:
Использование компиляторных и процессорных оптимизаций приводит к тому, что современные языки программирования не гарантируют модель памяти последовательной консистентности (sequential consistency, SC, [Lamport:TC79]) для многопоточных программ. Вместо этого, такие языки обладают слабыми моделями памяти, допускающими больше возможных результатов исполнения программ. Такие модели памяти балансируют между производительностью, как следствие свободы, предоставляемой компилятору и процессору, и гарантиями на разумность поведения программы, предоставляемыми программисту.

В этом докладе вводятся слабые модели памяти, рассматриваются требования к моделям памяти языков программирования, а также обсуждаются достоинства и недостатки моделей, используемых в индустрии (C/C++11 [Batty-al:POPL11] и Java [Manson-al:POPL05]). Далее рассматриваются новые модели памяти (RC11 [Lahav-al:PLDI17], MRD [Paviotti-al:ESOP20], Promising 1.0 [Kang-al:POPL17], Promising 2.0 [Hwan-al:PLDI20], Weakestmo [Chakraborty-Vafeiadis:POPL19]), призванные решить упомянутые недостатки. В заключении обсуждается то, как стоит подходить к выбору и/или модификации модели памяти для языка программирования или виртуальной машины.

Целевая аудитория:
  • интересующиеся низкоуровневым многопоточным программированием;
  • разработчики языков и виртуальных машин.

Основные идеи доклада:
  • Модели памяти популярных языков (C/C++ и Java) имеют существенные недостатки.
  • Существуют модели без них, но с разными компромиссами.
  • Предлагается способ подбора или модификации модели памяти под требования языка и/или виртуальной машины.

Саша

--
Alexander V. Smal
St. Petersburg Department of Steklov Mathematical Institute
27 Fontanka, St. Petersburg, 191023, Russia

Alexander V. Smal

unread,
Oct 11, 2020, 8:50:16 AM10/11/20
to pdmic...@googlegroups.com
Добрый день!

Ссылка на сегодня:
https://us02web.zoom.us/j/89018272832?pwd=SFpsRmNIMWhKbmN1SVVOVnNBZ1Zidz09

Идентификатор конференции: 890 1827 2832
Код доступа: 620051

Саша
Reply all
Reply to author
Forward
0 new messages