Теория и практика многопоточного программирования
- Лектор: Доктор физико-математических наук, Александр Геннадьевич Тормасов,
- Расписание: по средам в 18:30 в 115 КПМ.
- Первая лекция состоится 15 февраля.
Цель курса
Обучение созданию эффективно работающих алгоритмов и программ на многоядерных платформах.
Особенности курса: нетрадиционный курс параллельного программирования. В нем не найдете слов «семафор», «MPI», “Grid”, кластеры, распределенные системы, топология...
Словарь перевода терминов
bandwidth - полоса пропускания
bounded wait-free progress - ограниченный от ожидания прогресс (метода)
bus - шина
Byzantine faults - намеренные сбои
cache - кэш
concurrent - соисполняемые (события, потоки, интервалы), которые могут перекрываться во времени
consistency - непротиворечивость
context switch - контекстное переключение
critical section - критическая секция
deadlock - взаимная блокировка, тупик
deadlock freedom - свобода от взаимной блокировки
distributed - распределенные
event - событие
fairness - честность
false sharing - ошибочно разделяемые данные
interconnect - соединитель
interlocked - встроенная блокировка (в инструкции процессора)
intrinsics - встроенные функции
invocation - начало вызова (метода)
load balancing - балансировка нагрузки
lock-free - свобода от блокировок (метода)
lock contention - конфликт при блокировке
live lock - активная блокировка, или взаимная блокировка с безрезультативным прогрессом
multiple assignment - множественное присваивание
mutual exclusion - взаимное исключение
nonblocking - неблокируемость (потоков)
obstruction free - свободный (метод)
partial - частичный (метод)
pattern - шаблон
population oblivious - совокупно независимый
quiescent - покоящийся (объект)
quiescent consistency - согласованность по периодам покоя (вызовов методов)
race condition - состояние гонки, или состояние конкурентного доступа
reentrant - повторно входимые (программы)
regular - обычный
relaxed memory order - свободный доступ к памяти, неопределенность последовательности доступа к памяти
response - конец вызова (метода)
scalability - масштабируемость
sequential - упорядоченные (события, потоки, интервалы), которые не могут перекрываться во времени
sequential consistency - упорядоченная согласованность
skip list - список с пропусками, многослойный список
snapshot - снимок памяти (множественное чтение)
starvation - зависание (потока при исполнении)
starvation freedom - отсутствие зависаний
state machine - конечный автомат
thread - поток, поток исполнения
thread pool - пул потоков
thread-safe - потоко-безопасные
total - тотальный (метод)
wait-free - свобода от ожидания
well formed - оформлена (история)