Homework for the course of Concurrency Programming, ITMO CT, Autumn 2020
Homework for the course of Concurrency Programming, ITMO CT, Autumn 2020
Выполнил студент группы М3337, Хлытин Григорий.
Лекции:
Курс лекций Романа Елизарова и Никиты Коваля:
- Введение и Мотивация
- Определения и Формализм
- Stacks and Queues
- Relaxed Algorithms
- Практические построения на списках
- Построение атомарных объектов и блокировки
- Алгоритмы без блокировок: Построения на регистрах
- Алгоритмы без блокировок: Консенсус
- Hash tables
- FAA-Based Queue & Flat Combining
- Мониторы и ожиание
- Сложные блокировки
- Dual Data Structures
- Железо и спинлоки
- CASN
- Fair Locks and Semaphores
- Транзакционная память
Домашние задания:
- 1. Possible Executions Analysis
- 2. Stack with Elimination
- 3. Michael-Scott Queue
- 4. Parallel Dijkstra with Multi-Queue
- 5. Lock-Free Set via Linked Lists
- 6. Fine Grained Bank
- 7. Lamport Lock Fail
- 8. Monotonic Clock
- 9. Universal Construction
- 10. Dynamic Array
- 11. Hash Table (НЕОБЯЗАТЕЛЬНО)
- 12. Skip List (НЕОБЯЗАТЕЛЬНО)
- 13. FAA-Based Queue
- 14. Flat-Combining Priority Queue
- 15. MSQueue-Based Synchronous Queue
- 16. MCS Lock
- 17. Lock-Free Bank
- 18. CASN (НЕОБЯЗАТЕЛЬНО)
- 19. Blocking Stack (НЕОБЯЗАТЕЛЬНО)
- 20. STM Bank