Теория параллельного программирования для практиков
Лекция Хит- Computer Science
Доклад Романа Елизарова рассчитан на программистов, которые уже имеют практический опыт написания параллельного кода (прочтение книги “Java Concurrency in Practice” или подобной это большой плюс) и хотели бы узнать теоретические основы, на которых строится практика параллельного программирования. Наверное, почти все из нас проходили в ВУЗе теоретические основы последовательных вычислений (конечные автоматы, регистровые машины, машины Тьюринга и т.п.), а вот аналогичные конструкции для параллельных вычислений, к сожалению, обойдены вниманием в большинстве ВУЗов.
Роман рассказал о моделях параллельных вычислений, о разделяемых объектах и их консенсусных числах, об отношении «произошло до» и линеаризуемости, о разных типах синхронизации без ожидания и об универсальной конструкции, о проблеме ABA и о том, чем помогает GC. Кроме того, он объяснил, почему все «Сoncurrent» алгоритмы основаны на списках, а все алгоритмы на массивах «Blocking».
Информация о встрече на сайте Codefreeze