Теория функционирования распределённых вычислительных систем
(весна 2014, ВМ-05, ВМ-06)

Лекции (семестр 1)

Лекции доступны на сайте http://www.slideshare.net/apaznikov

Лекция №1. Надежность вычислительных систем (ВС). Производительность ВС. Вычислительные системы со структурно избыточностью. Стохастические модели функционирования ВС со структурно избыточностью. Показатели надежность ВС.

http://www.slideshare.net/apaznikov/2014-2-31752533|Лекция №2. Показатели надежность ВС. Методика расчета показателей надежности ВС.

Лекция №3. Расчет показателей надежности ВС для переходного режима.

Лекция №4. Расчет показателей надежности ВС для стационарного режима.

Лекция №5. Потенциальный контроль ВС. Численное исследование надежности ВС.

Лекция №6. Живучие ВС. Потенциальная и структурная живучесть ВС. Показатели потенциальной живучести ВС.

Лекция №7. Методичка расчета показателей живучести ВС. Континуальный подход к анализу живучести большемасштабных ВС.

Лекция №8. Расчет функции потенциальной живучести вычислительных систем.

Лекция №9. Показатели структурной живучести распределенных ВС.

Лекций №10. Осуществимость решения задач на вычислительных системах.

Лекций №11. Технико-экономическая эффективность функционирования вычислительных систем.

Лекции (семестр 2)

Лекции доступны на сайте http://www.slideshare.net/apaznikov

Лекция №1. Организация функционирования распределённых вычислительных систем

Лекция №2. Мультипрограммный режим обслуживания набора параллельных задач

Лекция №3. Приближённый алгоритм распределения задач набора по элементарным машинам в распределённой ВС

Лекция №4. Приближённый алгоритм распределения задач набора по элементарным машинам распределённой ВС

Лекция №5. Режим обслуживания потока задач

Лекция №6. Методы решения матричных игр в смешанных стратегиях

Лекция №7. Организация функционирования распределённых ВС с привлечением аппарата стохастического программирования (часть 1)

Лекция №8. Организация функционирования распределённых ВС с привлечением аппарата стохастического программирования (часть 2)

Лекция №9. Организация функционирования распределённых ВС с привлечением аппарата стохастического программирования (часть 3)

Лекция №10. Децентрализованная диспетчеризация параллельных задач

Лекция №11. Вложение параллельных программ

Лекция №12. Алгоритмы формирования оптимальных подсистем

Лекция №13. Алгоритмы коллективных обменов

Лабораторные работы

n.b. Лабораторные работы выполняются в операционной системе Linux на языке программирования C++. Оформление исходных текстов программ должно соответствовать принятым в рамках курса соглашениям или альтернативным: Google C++ Style Guide, Code Conventions for the Java, Linux kernel coding style.

Лабораторная работа №1. Исследование среднего времени наработки до отказа и среднего времени восстановления распределенных вычислительных систем со структурной избыточностью

Лабораторная работа №2. Исследование функций оперативной надежности, восстановимости и коэффициента готовности распределенных вычислительных систем со структурной избыточностью

Лабораторная работа №3. Исследование среднего времени наработки до отказа и среднего времени восстановления живучих распределенных вычислительных систем

Лабораторная работа №4*. Поиск оптимальных Dn-графов

Курсовой проект

Задание на курсовой проект

Шаблон пояснительной записки

Успеваемость

Группа ВМ-05

Группа ВМ-06


Литература

Вычислительные системы

  1. Хорошевский В.Г. Архитектура вычислительных систем. – М.: МГТУ им. Н.Э. Баумана, 2008. - 520 с.
  2. Евреинов Э.В., Хорошевский В.Г. Однородные вычислительные системы. – Новосибирск : Наука. Сибирское отд-е, 1978. – 319 с. (/home/public/dcsft/doc/cs/evr-khor87-ovs)

Анализ вычислительной сложности алгоритмов (/home/public/dcsft/doc/algs)

  1. Ахо А., Хопкрофт Дж., Ульман Дж. Структуры данных и алгоритмы. - М.: Издательский дом “Вильямс”, 2000. - 384 с. (страницы 28-37).
  2. Седжвик Р. Фундаментальные алгоритмы на C++. - М.: ДиаСофт, 2001. - 688 с. (страницы 56-69).
  3. Кормен Т., Лейзерсон Ч., Штайн К. Алгоритмы: построение и анализ, 2-е издание. : Пер. с англ. – М.: Издательский дом “Вильямс”, 2005.

Язык программирования C

  1. Керниган Б., Ритчи Д. Язык программирования С, 3-е изд. - М.: Невский диалект, 2001. - 352 с.
  2. Керниган Б., Пайк Р. Практика программирования. - М.: Издательский дом “Вильямс”, 2004. - 288 с

Язык программирования C++

  1. http://www.cplusplus.com (http://www.cplusplus.com/doc/tutorial/)
  2. Стэнли Липпман. С++ для начинающих.
  3. Стивен Прата. Язык программирования C++.
  4. Герберт Шилдт. C++: базовый курс (Самоучитель C++, Полный справочник C++).
  5. Бьерн Страуструп. Язык программирования С++.
  6. Бьерн Страуструп. Программирование. Принципы и практика использования C++.
  7. Бьерн Страуструп. Дизайн и эволюция языка C++.
  8. Николай Джосьютис. С++ Стандартная библиотека. Для профессионалов.
  9. Скотт Мейерс. Эффективное использование С++.
  10. Скотт Мейерс. Наиболее эффективное использование C++.
  11. Скотт Мейерс. Эффективное использование STL.
  12. Николас Солтер. С++ для профессионалов.
  13. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования.

О разработке ПО

  1. Стив Макконнелл. Совершенный код.
  2. Мартин Фаулер. Рефакторинг. Улучшение существующего кода.
  3. Фредерик Брукс. Мифический человеко-месяц, или Как создаются программные системы.

Система контроля версий Git

  1. Scott Chacon. Pro Git (перевод на русский язык)
  2. Vincent Driessen. A successful Git branching model (перевод на русский язык)
  3. TryGit - интерактивное введение в Git и GitHub