Распределенные вычисления. Украинский ГРИД (UGRID). GRID SDK.
Тема распределенных вычислений в Украине не является новой. В период моего студенчества 2005-2010 гг., распределенные вычисления всегда были на слуху на моей кафедре, однако серьезно данным вопросом никто не занимался. Конечно были различные попытки создания супер компьютера, создания мета-компьютинговой сети из пользовательских компьютеров, так сказать для более рационального использования вычислительного ресурса, но как я описал выше- внедрение не прижилось.
Но сегодня всё резко изменилось. Во многом катализатором развития распределенных вычислений в научной среде Украины является CERN и испытания Большого Адронного Коллайдера (БАК).
Более детально о том, что такое ГРИД (GRID) вы сможете ознакомится и на сайте Википедии, и на других интернет-ресурсах, а скорее всего если вы попали на эту статью, то наверняка владеете этим понятием.
Основное назначение грид — обеспечение условий для использования системы распределенных вычислений для решения сложных научных и прикладных задач, которые требуют для своего решения больших вычислительных ресурсов, ресурсов хранения данных. (с) infrastructure.kiev.ua
Государственная поддержка развития Украинского ГРИД была получена всего несколько лет назад и сейчас со стороны Национальной Академии Наук Украины ведутся активные разработки в этой области.
Украинский Национальный Грид (УНГ) объединяет украинских ученых из различных научных направлений (Физика, экономика, медицина, биология, химия, и.т.д.) с целью разработки единой ГРИД инфраструктуры Украины.
Детально об Украинской ГРИД программе можно узнать из официального сайта: grid.nas.gov.ua
Донецкий Институт Экономики Промышленности НАН Украины (ИЭП НАНУ) совместно с Научно-Исследовательским Центром Информационных Технологий (НИЦИТ) являются участниками проекта «Украинский ГРИД» и представляют разработки из области экономики.
Являясь аспирантом данного института и сотрудником Научно-исследовательского центра данный проект для меня стал плацдармом для проектирования и реализации многих свежих идей развития ГРИД инфраструктуры.
В этом году совместно с кафедрой информационных и компьютерных систем Черниговского Государственного Технологического Университета и кафедрой компьютерных технологий Донецкого Национального Университета было положено начало в разработке инструментария для разработчиков приложений распределенной среды ГРИД под рабочим названием «GRID SDK .NET».
Данная разработка включает комплекс динамических библиотек для платформы Microsoft .NET и позволяет автоматизировать взаимодействия с ГРИД кластерами.
Данная разработка наверняка будет полезна программистам, которые разрабатывают прикладное программное обеспечение.
К примеру научная организация ставит задачу «Необходимо произвести оценку экономического развития промышленных предприятий в городе».
Данная задача предполагает 3 этапа:
-Построение модели;
-Сбор данных;
-Расчет;
Если данная задача является ресурсоемкой и её не возможно оперативно выполнить на персональном компьютере с помощью того же пакета Excel, то необходимо задачу посчитать в ГРИД. И кажется всё очень просто, однако для того чтобы задачу посчитать в ГРИД, её необходимо адаптировать для ГРИД. Как минимум необходимо описать математическую задачу средствами алгоритмического языка совместимого с компиляторами на кластерах+произвести описание на языке xRSL. Следовательно, выполнение этой задачи будет поручено техническим специалистам, которые за определенный срок напишут программу, запустят её в ГРИД и предоставят результаты. Однако всё это временные и финансовые затраты. Хорошо, если эти результаты нужны не так срочно и всего один раз, а если речь идет о сроках равных нескольким часам и динамическому изменению условий задачи? В этом случае дешевле нанять программистов для разработки специализированного программного обеспечения, которое будет автоматически отправлять данные для вычисления в ГРИД. Пользователями данного ПО смогут быть экономические эксперты не имеющие специального технического образования, которым будет предоставлен простой графический инструмент с помощью которого они смогут описывать задачи и получать результаты вычислений (аналогом данного ПО является наша разработка системы «ИАСБП») .
Именно для этих целей нами разрабатывается GRID SDK. Первая версия SDK была проверена при адаптации Информационно-аналитической системы сопровождения бюджетного процесса (ИАСБП), для распределенных вычислений в ГРИД. Собственно изначально для данной системы и предназначалось SDK, и весь её функционал был раздроблен на отдельные модули. Но потом участниками проекта было принято решение объединить весь функционал модулей в единый рабочий инструмент GRID SDK.
В данный момент наши программисты работают над тестированием и отладкой данного SDK и в ближайшее время он будет доступен для свободного скачивания и использования.