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 revision Previous revision
Next revision
Previous revision
courses:high_performance_computing:lectures [2018/05/19 15:08]
kel Всё же лекция по архитектуре не относится к курсу
courses:high_performance_computing:lectures [2020/01/25 13:56] (current)
kel
Line 30: Line 30:
     * использование wait/notify     * использование wait/notify
     * Spurious wakeups     * Spurious wakeups
 +  - Thread Local Storage (TLS) 
  
 ===== 4. Алгоритмы синхронизации ===== ===== 4. Алгоритмы синхронизации =====
Line 62: Line 63:
     * Valgrind (модули callgrind, cachegrind) ​         * Valgrind (модули callgrind, cachegrind) ​    
   - Пример поиска узких мест   - Пример поиска узких мест
 +  - Профилирование промашек по кэшу и метрика CPI
  
 ===== 8. Java.util.concurrent и Fork-Join Framework ===== ===== 8. Java.util.concurrent и Fork-Join Framework =====
   - Пулы потоков,​ корректное завершение пула   - Пулы потоков,​ корректное завершение пула
   - Контроль задач через Future   - Контроль задач через Future
 +  - CompletionStage и CompletableFuture
   - Потокобезопасные контейнеры   - Потокобезопасные контейнеры
  
Line 163: Line 166:
   ​   ​
 ===== 19. Lock-free изнутри ===== ===== 19. Lock-free изнутри =====
-  - User-space RCU+  - Feldman Multi Array
   - Схемы управления памятью:​   - Схемы управления памятью:​
     * Tagged pointers     * Tagged pointers
Line 187: Line 190:
   - Применение в современных языках   - Применение в современных языках
   - Шаблоны применения   - Шаблоны применения
 +
 +===== 24. RCU =====
 +  - Суть RCU и синхронизация на эпохах
 +  - Kernel-space RCU
 +  - User-space RCU
 +
courses/high_performance_computing/lectures.1526731702.txt.gz · Last modified: 2018/05/19 15:08 by kel