Оригинальная методика изучения принципов работы многоядерного процессора, естественным образом расширяющая традиционный курс архитектуры ЭВМ



Автор: Еремин Евгений Александрович, кандидат физико-математических наук, доцент
ФГБОУ ВПО Пермский государственный гуманитарно-педагогический университет
Предложена методика изучения базовых принципов работы многопроцессорного компьютера, которая естественным образом продолжает традиционный курс архитектуры. Разработана учебная модель "Е14", реализованная в виде компьютерной программы для обычного ПК. Методика опробована на занятиях и показала свою полезность.

Глубокое понимание принципов работы вычислительной техники – важное свидетельство качества профессиональной подготовки ИТ-специалиста. Методика изучения устройства традиционных однопроцессорных компьютеров хорошо разработана, но сейчас даже в бытовых ПК используются многоядерные процессоры, что требует совершенствования преподавания в этой области.

Здесь нас подстерегает ряд принципиальных трудностей. Во-первых, сразу охватить разумом нескольких одновременных процессов удается не всем, а при параллельном программировании очень важно избегать ошибок синхронизации, например, когда значение берется из ячейки ОЗУ раньше, чем туда поместит результат другой процессор. Во-вторых, при объяснении работы нескольких ядер требуется много вспомогательных сведений, в частности, по распределению работ в многозадачной ОС [1].

Автор разработал простую и наглядную методику изучения параллельного программирования для системы с несколькими процессорами. Для ее поддержки написано учебное программное обеспечение с хорошей визуализацией, способное работать на любом ПК (не обязательно многоядерном).

Преподавание предлагается строить на базе учебной модели, подобно тому, как это часто делается при изучении классической архитектуры [2]. Разработанная методика обеспечивает четкую преемственность по отношению к однопроцессорной архитектуре: все механизмы взаимодействия между процессорами базируются на изученных ранее идеях о шине, портах ввода-вывода, режиме прямого доступа к памяти. Студенту даже не придется переходить к новой системе команд, поскольку многопроцессорная модель специально сделана программно совместимой с освоенной ранее однопроцессорной.

Учебная модель «Е14» [3] состоит из пяти процессоров, один из которых руководит работой остальных. Это похоже на организацию процессора Cell [4], только в «Е14» система команд у всех процессоров одинакова. Так как программа распределения вычислений и управления ими помещается в центральный процессор, никакая внешняя программа-супервизор уже не требуется.

Работая с «Е14», студент понимает, как непросто распараллелить алгоритм и как обмен данными между процессорами способен «съедать» тот выигрыш во времени, который дает распределение вычислений. Наиболее подготовленные могут дополнительно исследовать зависимость скорости выполнения своей программы от количества используемых процессоров или сравнить эффективность различных алгоритмов.

Изложенная методика опробована на занятиях и показала свою полезность.

 

Список использованных источников
  1. Семенов А.А. Многоядерная архитектура универсальной 32-ух разрядной учебной машины. http://www.rae.ru/forum2011/153/1794
  2. Еремин Е.А. Популярные лекции об устройстве компьютера. СПб.: BHV-Петербург, 2003. 272 с.
  3. Еремин Е.А. О выборе подхода к построению компьютерной поддержки для изучения многопроцессорных систем. Вестник ПГПУ, серия ИКТ в образовании. Вып. 10. Пермь: ПГГПУ, 2014. С.5-14.
  4. Cell Broadband Engine Programming Handbook. IBM, 2009. 876 p.
Тип выступления  Стендовый доклад
Уровень образования  Среднее профессиональное
Ключевые слова  многоядерный процессор, архитектура ЭВМ, методика изучения, учебное ПО