1 сентября 2011 г.

Использование офисной компьютерной сети для нераспределенных вычислений

В данной заметке я в двух словах расскажу о способе использования множества офисных компьютеров для решения отдельных задач (по задаче на один компьютер) без беспокойства хозяина компьютера :)
Источник изображения: https://secure.flickr.com/photos/dnorman/3263654347/















Существует два способа использования группы компьютеров для отдельных (не распределенных) вычислений.

1. Солвер-агент на каждом компьютере
На каждом компьютере устанавливается и настраивается солверагент. Мы подключаемся к этим солверагентам по IP адресу машины, сохраняем все данные на тот же компьютер, работаем как обычно.

Минусы подхода:
  • каждый раз, когда нужно поменять настройки солверагента, придется беспокоить хозяина компьютера с просьбой перезапустить службу. 
  • В некоторых случаях это возможно только перезагрузкой. 
  • Результаты придется доставать по сети. Для запуска и контроля солверов придется многократно переключаться между разными солверагентами.Это утомляет.

Плюсы подхода: сохранение данных происходит не по сети , т.е. происходит быстрее.

2. Запуск солверов происходит с вашего компьютера с использованием MPI

На всех офисных компьютерах должен стоять только MPICH, солверагент нужен только один и настроен он должен быть только на вашей машине.

Плюсы подхода:
  • беспокоить хозяина компьютера не придется ни по каким поводам.Даже солвер убить будет просто.
  • данные сразу сохраняются на ваш компьютер и не занимают место на диске чужого компьютера
  • будет работать только один солверагент, в котором будет множество строчек для запуска солверов на разных компьютерах. Т.е. не придется многократно переключаться между компьютерами
Минусы подхода:сохранение данных по сети будет происходить дольше; нужно обеспечить права для запуска MPI процессов на всех компьютерах для какого-то пользователя.

Ниже кратко описывается принцип настройки работы по второй методике.