VIPE- интегрированная среда параллельного программирования для неоднородных многоядерных платформ.
Программный комплекс VIPE предназначен для разработки прикладных параллельных программ, эффективно выполняющихся на неоднородных многоядерных платформах общего назначения.
Среда обеспечивает полный цикл разработки ПО: от фазы проектирования до получения готового к использованию машинного кода. VIPE позволяет создавать полнофункциональные, алгоритмически корректные, отлаженные и платформонезависимые программы единожды и использовать их многократно. Среда позволяет портировать разработанное ПО на различные платформы за прогнозируемое время с предсказуемыми затратами.
Процесс разработки ПО в среде VIPE разделен на три этапа: разработка ПО (проектирование и программирование), оценка характеристик ПО, размещение на целевой платформе.
VIPE
На первом этапе эксперт предметной области проектирует ПО в визуальной среде разработки. Благодаря графическому языке VPL, все участники процесса разработки имеют общее видение проекта и единый терминологический словарь. Использование визуальных предметно-ориентированных библиотек (DSL библиотек) позволяет активно вовлекать в процесс разработки ПО экспертов различных предметных областей. На одном уровне абстракции эксперт предметной области разрабатывает алгоритм решения задачи, используя имеющуюся DSL библиотеки при необходимости дополняя их новыми элементами. На другом уровне абстракции, квалифицированный программист может на традиционном языке программирования (Си) написать реализацию дополнительных функций обработки данных, которые включаются как дополнительные типы операторов в VPL-программу.
Программисту доступны инструменты валидации и интерактивной отладки VPL-программы. Совместно команда разработчиков формирует полностью функциональное, алгоритмически корректное и отлаженное прикладное ПО.
На втором этапе итеративный процесс разработки поддерживается инструментами оценки производительности VIPE. Программа статического анализа производительности крупноблочных параллельных приложений выполняет поиск узких мест (bottlenecks) в разрабатываемой программе, выявляет проблемы с ее распараллеливанием, позволяет доработать ПО для получения требуемых характеристик работы на целевой платформе. Информация об архитектуре и характеристиках целевой аппаратной платформы позволяет исполнять программы на настраиваемой модели вычислительной платформы в симуляторе.
Симулятор позволяет оценивать различные конфигурации платформ — многопроцессорные, многоядерные, распределенные, что позволяет подготовить программу к исполнению на различных конфигурациях ЭВМ.
На третьем этапе выполняется размещение разработанной программы на целевой вычислительной платформе. При анализе и генерации кода в VIPE учитываются такие свойства целевых платформ, как неоднородность и многоядерность. Среда автоматически генерирует С код из разработанной высокоуровневой программы на графическом языке VPL. Этот код будет использован в качестве входного штатным набором инструментов сборки, компиляции, линковки и т. д. программ на высокоуровневом языке программирования, поставляемого вместе с конкретной аппаратной платформой. Полученный и скомпонованный с функциями организации многопроцессорного/многопоточного выполнения программ машинный код загружается загрузчиком платформы на целевую платформу.
Программный комплекс VIPE предоставляет средства разработки программ для персональных ЭВМ общего назначения, в том числе включающих процессорные ядра общего назначения и процессорные ядра графических акселераторов.
Разработчиками VIPE являются наши партнеры — Институт Высокопроизводительных Компьютерных и Сетевых Технологий (vkist.guap.ru).
Подробнее о VIPE: vipetech.ru.
Программная библиотека работы с командами протокола удаленного доступа к памяти RMAP
(Remote memory access protocol, ECSS-E-ST-50-52C) позволяет разрабатывать программное обеспечение со стандартизированным подходом к конфигурированию сети SpaceWire, управлению устройствами SpaceWire и сбору данных и информации о состоянии этих устройств.

Функции и возможности
  • Предоставляет разработчику интерфейс для создания и выполнения полного набора команд RMAP (команды чтения, записи, чтения – модификации – записи) с требуемым набором опций (наличие/отсутствие подтверждения, наличие/отсутствие верификации, наличие/отсутствие инкрементации).
  • Позволяет разрабатывать программное обеспечение со стандартизированным подходом к организации конфигурирования сетей SpaceWire, управления и сбора данных о состоянии коммутаторов и терминальных узлов сетей SpaceWire: установка рабочих параметров (таблица маршрутизации, скорости передачи, режимы работы), определение статуса работы, чтение и запись памяти и регистров.
  • Позволяет ускорить и упростить процесс разработки и отладки программно-аппаратных комплексов для бортового авиационного и космического оборудования сетей SpaceWire.

  • Форма поставки: статическая библиотека
  • Программная платформа: операционные системы на базе ядра Linux
  • Язык программирования: Си
RMAP