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
courses:high_performance_computing:lectures [2024/09/15 19:11] kelcourses:high_performance_computing:lectures [2025/01/13 01:12] (current) kel
Line 3: Line 3:
   - Тенденции развития вычислительных систем, обуславливающие необходимость применения распределённых (параллельных) методов вычислений. Примеры вычислительно ёмких задач из разных областей науки.   - Тенденции развития вычислительных систем, обуславливающие необходимость применения распределённых (параллельных) методов вычислений. Примеры вычислительно ёмких задач из разных областей науки.
   - Классификация параллельных систем (SIMD, MISD..., SMP, MPP)   - Классификация параллельных систем (SIMD, MISD..., SMP, MPP)
-  - Современные высокопроизводительные системы: начиная от расширений SSE, через многоядерность к узлам кластеров+  - Расширения процессоров SSE/AVX...
   - Понятия ускорения, эффективности (закон Амдала)   - Понятия ускорения, эффективности (закон Амдала)
   - План курса   - План курса
Line 25: Line 25:
     * примеры кода в glibc     * примеры кода в glibc
   - Сравнение различных потоков (POSIX, C++, Java)   - Сравнение различных потоков (POSIX, C++, Java)
 +  - Разница pthread / kthread
   - Проброс исключений между потоками   - Проброс исключений между потоками
 +  - Напоминание о user space / kernel space и соответствующей стоимости syscall
  
 ===== 3. Примитивы синхронизации ===== ===== 3. Примитивы синхронизации =====
-  - Напоминание о user space / kernel space и соответствующей стоимости syscall 
   - Необходимость синхронизации: простые гонки данных   - Необходимость синхронизации: простые гонки данных
   - Реализация примитивов синхронизации: алгоритм булочника   - Реализация примитивов синхронизации: алгоритм булочника
Line 78: Line 79:
   - Средства анализа производительности   - Средства анализа производительности
     * Утилита time     * Утилита time
-    * Intel Parallel Studio +    * Intel VTune 
-    * Valgrind (модули callgrind, cachegrind)     +    * Valgrind (модули callgrind)     
   - Пример поиска узких мест   - Пример поиска узких мест
   - Профилирование промашек по кэшу и метрика CPI   - Профилирование промашек по кэшу и метрика CPI
Line 138: Line 139:
  
 ===== 17. Шаблоны || программирования ===== ===== 17. Шаблоны || программирования =====
 +  - Общий взгляд на виды организации вычислений
   - Структурные шаблоны:   - Структурные шаблоны:
     * Декомпозиция по задачам     * Декомпозиция по задачам
Line 143: Line 145:
     * Recursive Data     * Recursive Data
     * Pipeline     * Pipeline
-  - Некоторые программные структуры: 
-    * Parallel loops 
-    * Boss/Worker 
   - Разное:   - Разное:
     * Double check     * Double check
courses/high_performance_computing/lectures.1726416674.txt.gz · Last modified: 2024/09/15 19:11 by kel