Вычислительный агент (проект) — различия между версиями
Материал из Wiki - Факультет компьютерных наук
(Новая страница, с помощью формы Новый_проект) |
м (→Какие начальные требования?) |
||
Строка 19: | Строка 19: | ||
=== Какие начальные требования? === | === Какие начальные требования? === | ||
* Программирование на Python | * Программирование на Python | ||
− | * Умение работать с Linux | + | * Умение работать с Linux (желательно) |
=== Какие будут использоваться технологии? === | === Какие будут использоваться технологии? === |
Версия 17:58, 1 декабря 2014
Ментор | Олег Сухорослов |
Учебный семестр | Весна 2015 |
Учебный курс | 1-й курс |
Проект можно развивать на летней практике | |
Что это за проект?
Целью проекта является реализация вычислительного агента - программы, позволяющей удаленно запускать расчеты на вычислительном ресурсе (ПК, сервере, кластере). Агент выполняется в фоновом режиме на ресурсе и связывается по сети с сервером, который назначает вычислительные задания. Для каждого назначенного задания агент выполняет загрузку входных данных, запуск заданной команды, мониторинг запущенного процесса и передачу на сервер выходных данных. Подобные агенты являются одним из элементов архитектуры многих систем распределенных вычислений, позволяющих, например, проводить расчеты на простаивающих персональных компьютерах.
Чему вы научитесь?
- Знакомство с распределенными вычислительными системами
- Работа с потоками и внешними процессами
- Реализация сетевого взаимодействия на уровне протокола HTTP
Какие начальные требования?
- Программирование на Python
- Умение работать с Linux (желательно)
Какие будут использоваться технологии?
- Python
- HTTP
- git
Темы вводных занятий
- Распределенные вычислительные системы
Направления развития
- Измерение производительности ресурса
- Измерение ресурсов, потребленных заданием
- Реализация ограничений на задания (время выполнения, объем данных)
- Кэширование загруженных файлов
- Обработка отказов
- Мониторинг текущей загрузки ресурса
- Совмещение передачи данных с вычислениями
- Реализация собственного сервера для распределения заданий
- Реализация агента для запуска заданий на кластере
Критерии оценки
TBD