Конспект занятия: Архитектуры вычислительных систем и оценка производительности

Педагогический конспект проведения учебного занятия по дисциплине «ОП.02 Архитектура аппаратных средств» (СИЭУиП, пара 18). Содержит поминутный план для регламентов 80 и 60 минут, развернутую прямую речь преподавателя, интерактивные вопросы и разбор проблемных ситуаций.

1. Учебно-организационный паспорт занятия

Официальная тема Вычислительные системы. Классификация по потокам. Классификация по способу обработки потоков. Оценка производительности вычислительных систем
Продолжительность 80 минут (основной сценарий) / 60 минут (сокращенный сценарий)
Планируемый результат Классифицирует вычислительную систему и повторяет логические блоки курса.
Оценочный продукт Индивидуальный кейс классификации плюс тренировочная расчетная задача (4 балла: корректность 2, объяснение 1, проверка 1; сдача до следующей пары).

2. Структура и тайминг занятия

Этап занятия Основной регламент (80 мин) Сокращенный регламент (60 мин) Дидактическое содержание
1. Вводный этап 5 мин 5 мин Организация группы, актуализация, парадокс масштабирования ядер.
2. Изложение теории 35 мин (25 лекция + 10 показ) 25 мин (18 лекция + 7 показ) Таксономия Флинна, память UMA vs NUMA, SIMD/AVX-512, Linpack, законы Амдала и Густафсона.
3. Практическое действие 30 мин (20 действие + 10 разбор) 22 мин (15 действие + 7 разбор) Очное решение индивидуальных кейсов в zanyatie.html по 4 вариантам.
4. Итог и рефлексия 10 мин 8 мин Подведение итогов, проверка автосохранения и экспорта в PDF, резервное задание.

3. Развернутый сценарий занятия и прямая речь преподавателя

Этап 1. Организационный момент и формулировка проблемы (5 мин)

Преподаватель: «Здравствуйте, коллеги! Присаживайтесь. Сегодня у нас занятие 18 — рубежная тема, объединяющая архитектуру систем и методы оценки их реального быстродействия. Задумайтесь над вопросом: если мы возьмем программу, работающую на 1 процессоре 100 секунд, и запустим её на суперкомпьютере с 1000 процессоров, выполнится ли она за 0.1 секунды? Практика показывает: в большинстве случаев ускорение не превысит 10–20 раз, а то и вовсе начнется замедление! Почему так происходит? Ответ кроется в способе организации памяти и законах параллельного масштабирования. Сегодня мы научимся классифицировать любые вычислительные комплексы и математически точно рассчитывать их ускорение».

Этап 2. Изложение нового материала и демонстрационный показ (35 мин / 25 мин)

Преподаватель: «Обратите внимание на слайды 3–7 презентации. В 1966 году Майкл Флинн разделил все вычислители по двум потокам: поток команд (Instruction Stream) и поток данных (Data Stream).
1. SISD: Классический компьютер фон Неймана. Даже современный суперскалярный конвейерный Core i9 при выполнении одного потока команд остается машиной SISD!
2. SIMD: Одна инструкция командует сотнями АЛУ. Это векторные расширения AVX-512 в процессорах и шейдерные ядра современных видеокарт (GPU).
3. MISD: Долгое время считался экзотикой. Но именно на нем построена аэрокосмическая отказоустойчивость: несколько разных процессоров параллельно выполняют разные программы над одним потоком показаний датчиков ракеты или самолета.
4. MIMD: Основа современных суперкомпьютеров и многоядерных серверов.
Перейдем к организации памяти (слайд 8). В малых системах используется SMP (UMA) — все процессоры подключены к общей шине памяти с одинаковым временем доступа. Но при 8+ сокетах шина захлебывается. Поэтому современные серверы строятся по архитектуре NUMA: каждый процессор имеет свой локальный банк ОЗУ. Доступ к чужой памяти через межпроцессорные линки UPI/Infinity Fabric требует дополнительного времени — это и есть NUMA ratio (штраф за удаленный доступ).
А теперь посмотрим на закон Амдала (слайд 11). Если в программе хотя бы 5% кода строго последовательны ($s = 0.05$), то при любом числе процессоров ускорение ограничено пределом $1 / s = 1 / 0.05 = 20$ раз! Закон Густафсона (слайд 12) дает другой взгляд: если с ростом числа процессоров мы пропорционально увеличиваем размер задачи (Weak Scaling), ускорение масштабируется почти линейно. Разберем демонстрационный расчет на экране...»

Этап 3. Самостоятельное очное выполнение расчетного кейса (30 мин / 22 мин)

Преподаватель: «Откройте на своих компьютерах интерактивный рабочий лист zanyatie.html. Введите свои ФИО, группу и выберите закрепленный вариант кейса (1–4):
— Вариант 1: Симулятор аэродинамики CFD на 128 узлах.
— Вариант 2: Банковская транзакционная СУБД на 4-сокетном NUMA-сервере.
— Вариант 3: Обучение нейросетей LLM на кластере из 32 GPU.
— Вариант 4: Бортовой отказоустойчивый комплекс космического аппарата.
Вам необходимо заполнить матрицу таксономии Флинна, рассчитать пиковую производительность $R_{peak}$, провести расчет ускорения по Амдалу и Густафсону и выдать инженерные рекомендации. Все изменения непрерывно сохраняются в браузере. Приступайте к работе!»

Этап 4. Контроль, проверка и подведение итогов (10 мин / 8 мин)

Преподаватель: «Завершаем ввод данных. Разберем главные ошибки: многие забыли перевести частоту в герцы при расчете $R_{peak}$, а в варианте 2 не учли, что транзакционные блокировки таблиц резко увеличивают долю последовательного кода $s$.
Нажмите кнопку "Распечатать / Сохранить в PDF" и сохраните чистовой отчет с решениями. Оценивание производится по 4-балльной матрице до следующей пары. Резервное домашнее задание domashnee_zadanie.html выполняют только те, кто пропустил пару или получил балл ниже 2. Всем спасибо за продуктивную работу!»