Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


courses:high_performance_computing:lectures

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
courses:high_performance_computing:lectures [2022/01/03 21:00] kelcourses:high_performance_computing:lectures [2023/11/06 14:45] kel
Line 1: Line 1:
 ====== Программа ====== ====== Программа ======
-===== 1. Введение =====+===== 0. Введение =====
   - Тенденции развития вычислительных систем, обуславливающие необходимость применения распределённых (параллельных) методов вычислений. Примеры вычислительно ёмких задач из разных областей науки.   - Тенденции развития вычислительных систем, обуславливающие необходимость применения распределённых (параллельных) методов вычислений. Примеры вычислительно ёмких задач из разных областей науки.
   - Классификация параллельных систем (SIMD, MISD..., SMP, MPP)   - Классификация параллельных систем (SIMD, MISD..., SMP, MPP)
   - Современные высокопроизводительные системы: начиная от расширений SSE, через многоядерность к узлам кластеров   - Современные высокопроизводительные системы: начиная от расширений SSE, через многоядерность к узлам кластеров
   - Понятия ускорения, эффективности (закон Амдала)   - Понятия ускорения, эффективности (закон Амдала)
-  - Многопоточность или IPC 
   - План курса   - План курса
 +  - Старт потока (Java): реализация Runnable vs наследование от Thread
  
-===== 2. Создание/завершение потоков ===== +===== 1Многопоточность или IPC ===== 
-  - Механизм запуска потока+  - Виды IPC 
 +  - Преимущества многопоточности: 
 +    * Простота 
 +    * Скорость (TLB) 
 +  - Преимущества IPC: 
 +    * Безопасность 
 +    * Надёжность 
 +  - Сложности реализации shmem  
 + 
 +===== 2. Завершение потоков =====
   - Корректное завершение потоков:   - Корректное завершение потоков:
     * cancellation points     * cancellation points
Line 43: Line 52:
     * lock-free     * lock-free
     * wait-free      * wait-free 
-  - SWMR-регистры 
   - Lock-free snapshot   - Lock-free snapshot
   - Wait-free snapshot   - Wait-free snapshot
Line 58: Line 66:
  
 ===== 7. Модель памяти ===== ===== 7. Модель памяти =====
 +  - Пример ошибки в ядре ОС
   - Устройство кэшей процессора   - Устройство кэшей процессора
   - Пример на протоколе MESI   - Пример на протоколе MESI
Line 192: Line 201:
   - Потокобезопасные контейнеры   - Потокобезопасные контейнеры
  
-===== 24. Wait-free MRMW снимок регистров ===== +===== 24. Средства поиска ошибок =====
-  - Напоминание о MRSW алгоритме +
-  - Переход к //bounded// версии на битовых //handchake// +
-  - Расширание до MRMW +
- +
-===== 25. Средства поиска ошибок =====+
   - Google Thread Sanitizer   - Google Thread Sanitizer
   - Intel Parallel Studio   - Intel Parallel Studio
Line 203: Line 207:
   - Пример использования   - Пример использования
    
-===== 26. Lock-free изнутри =====+===== 25. Lock-free изнутри =====
   - Feldman Multi Array   - Feldman Multi Array
   - Схемы управления памятью:   - Схемы управления памятью:
Line 209: Line 213:
     * Hazard pointer     * Hazard pointer
  
-===== 27. Оптимизации в реализации контейнеров =====+===== 26. Оптимизации в реализации контейнеров =====
   - Relaxed SkipList   - Relaxed SkipList
 +
 +===== 27. Системы потоковой обработки данных =====
 +  - Analytics vs Streaming
 +  - Гарантии обработкии данных:
 +      * Exactly once
 +      * At least once
 +      * At most once
 +  - Windows
 +      * Session
 +      * Sliding
 +      * Tumbling
 +      * Hopping
 +  - Linear scalability
 +  - Fault tolerance
 +  - Back pressure
 +  - Isolation
 +  - Qutoing
 +  - MillWheel/Checkpointing
 +  - Yandex Query
  
courses/high_performance_computing/lectures.txt · Last modified: 2024/01/25 00:04 by kel