Читается в весеннем семестре на третьем курсе бакалавриата МФТИ.
Преподаватель: д.т.н., Шнитман Виктор Зиновьевич.
Цель курса — изучение особенностей архитектур современных компьютеров и систем.
Задачами данного курса являются:
- получение базовых знаний в области архитектур и технологий современных компьютеров;
- получение знаний о развитии принципов параллелизма, методов и средств динамической оптимизации программ, об особенностях архитектуры современных и перспективных высокопроизводительных вычислительных машин и систем, способах организации памяти и ввода-вывода;
- получение консультаций для проведения собственных исследований и разработок в областях, использующих компиляторные технологии для машинозависимой оптимизации программ;
- приобретение навыков работы на современных компьютерных системах.
Планируемые результаты обучения:
- Знать основные характеристики и области применения современных компьютеров и систем различных классов;
- Знать функциональную и структурную организацию современных CISC, RISC, VLIW, EPIC, многопотоковых и многоядерных микропроцессоров;
- Знать иерархию памяти современных компьютеров и систем;
- Знать организацию ввода-вывода;
- Знать цели, задачи и методы динамической оптимизации программ в процессе их выполнения, а также машинно-независимой и машинно-зависимой статической оптимизации программ в процессе их компиляции;
- организацию многопроцессорных систем и многомашинных комплексов;
- Уметь решать задачи из области оптимизации выполнения программ на современных компьютерах и системах;
- Уметь проводить самостоятельные научные исследования по теме дисциплины;
- Уметь применять изученные структуры аппаратных средств для решения поставленных задач;
- Владеть навыками освоения большого объема информации;
- Владеть навыками самостоятельной работы в Интернете;
- Владеть культурой разработки и реализации системного программного обеспечения современных компьютеров.
Рассматриваемые темы:
- Краткая история развития вычислительных систем и классификация компьютеров по областям применения.
- Проблемы оценки производительности вычислительных систем.
- Основные архитектурные понятия.
- Конвейерная обработка.
- Параллелизм уровня выполнения команд.
- Иерархия памяти.
- Архитектура ввода/вывода.
- Многопроцессорные системы.
- Системы высокой готовности и отказоустойчивые системы.
- Перспективные направления исследования архитектур процессоров для будущих микропроцессоров и систем.