Регистрация / Вход
Прислать материал

Технология и инструменты разработки портируемого прикладного ПО для неоднородных многоядерных встраиваемых систем.

Номер контракта: 14.575.21.0021

Руководитель: Шейнин Юрий Евгеньевич

Должность: директор института

Организация: федеральное государственное автономное образовательное учреждение высшего образования "Санкт-Петербургский государственный университет аэрокосмического приборостроения"
Организация докладчика: Федеральное государственное автономное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный университет аэрокосмического приборостроения"

Аннотация скачать
Постер скачать
Ключевые слова:
технология программирования, многоядерные процессоры, многоядерные системы-на-кристалле, встраиваемые системы, портируемость, переносимость, визуальное программирование, модельно-ориентированный подход, средне-гранулярные параллельные вычисления, генерация кода.

Цель проекта:
Цель проекта - исследование и разработка комплекса научно-технических решений, направленных на создание технологии разработки высокоэффективного программного обеспечения для многоядерных неоднородных встраиваемых систем обработки информации и управления. Задача проекта - создание технологии параллельного программирования, предоставляющей механизмы обеспечения с предсказуемой производительностью вычислений при работе на различных программно-аппаратных платформах на каждом этапе разработки, начиная с моделирования системы, ее реализации и до этапа выполнения задачи на встраиваемой системе, обеспечить портируемость в широком диапазоне неоднородных многоядерных аппаратных платформ и их конфигураций, в том числе на неоднородные процессоры и СнК.

Основные планируемые результаты проекта:
Основными планируемыми результатами проекта являются:
- Метод построения крупноблочных предметно-ориентированных языков на основе существующих программных библиотек предметных областей и программный компонент визуальной интерактивной среды разработки с использованием этих языков;
- Метод, алгоритм и программный компонент ранней оценки, измерения и анализа производительности приложений, разработанных с использованием крупноблочных предметно-ориентированных языков параллельного программирования;
- Метод, алгоритм и программный компонент генерации платформо-зависимого кода приложений работы с крупноблочными предметно-ориентированными библиотеками, разработанными с использованием крупноблочных предметно-ориентированных языков параллельного программирования;
Все результаты будут объединены в едином комплексе методов и экспериментальном образце программного комплекса. Будут проведены экспериментальные исследования разработанного экспериментального образца для оценки и подтверждения соответствия заявленным технологическим характеристикам.
По итогам проекта будут разработаны рекомендации по внедрению результатов ПНИ в реальном секторе экономики и проект технического задания на выполнение ОКР по теме: «Разработка программного комплекса создания портируемого прикладного ПО для неоднородных многоядерных встраиваемых систем».

Краткая характеристика создаваемой/созданной научной (научно-технической, инновационной) продукции:
Создаваемой научно-технической продукцией является единая технология и комплекс инструментов разработки программного обеспечения для многоядерных встраиваемых систем. Такая технология и инструментальные средства разработки ПО представляют всю схему приложения в целом, автоматизируют существенный ряд этапов разработки, обеспечивают удобный интерфейс для разработки, сборки и тестирования приложений, простоту адаптации программ для изменяющихся задач и конфигураций встраиваемых систем при портировании, предсказуемость характеристик портируемого ПО. Кроме того, разработка программ для встраиваемых систем становится доступной не столько профессиональным программистам, сколько специалистам предметной области, алгоритмистам, инженерам целевых приложений встраиваемых систем.
Решение проблемы сложности программирования неоднородных многоядерных встраиваемых систем через создание проблемно-ориентированных языков (Domain-Spesific Languages) и поддерживающих их систем программирования существует на мировом рынке в виде единичных систем и практически не представлено на отечественном рынке. Выбранная область представляет собой перспективную рыночную нишу для внедрения результатов предлагаемого проекта как на российском, так и на мировом рынке.

Назначение и область применения, эффекты от внедрения результатов проекта:
Рынок использования встраиваемых систем уже сейчас чрезвычайно обширен и продолжает расти высокими темпами как в информационно-телекоммуникационных системах, так и в других областях. Архитектуры встраиваемых систем постоянно меняются, улучшаются их характеристики, но при этом также усложняется их внутренняя структура. Однако потребители часто очень долго не внедряют новые
архитектурные решения, потому что перенос разработанного программного обеспечения почти всегда требует большого объема работ по портированию разработанного ПО на новую архитектуру с учетом ее специфики. Кроме того, для принятия решений о переходе на новую архитектуру необходимо четко понимать, какие преимущества принесет переход на новую архитектуру, насколько улучшатся потребительские свойства решения, за счет чего удастся компенсировать затраты на сам переход. Всё это сужает рынок встраиваемых систем, не позволяет производителям архитектур внедрять новые решения, повышает стоимость решений и снижает их характеристики.
Предлагаемый проект направлен, в первую очередь, на решение этой проблемы путем предоставления инструментария, обеспечивающего технологию разработки портируемых программ. В то же время, с ростом возможностей и производительности встраиваемых систем растет количество и сложность задач, которые хотят решать на них потребители этих систем. При этом задачи областей применения характеризуются сложными математическими формулировками, алгоритмами и методами решения, требующими высокой квалификации специалистов в предметной области. Однако специалисты предметной области, являющиеся в то же время достаточно квалифицированными программистами,
практически не встречаются. В результате возникают сложности, часто неразрешимые, в практическом применении встраиваемых систем. И это сужает как рынок продаж аппаратных платформ встраиваемых систем, так и программного обеспечения встраиваемых систем. А кроме того потребители встраиваемых систем не получают всей полноты возможностей, которые потенциально способны решать современные встраиваемые системы. Концептуальные и технологические решения проекта позволят специалистам предметной области разрабатывать решения сложных задач на уровне их понимания, в близких им терминах предметной области, без глубокого погружения в особенности вычислительных платформ и деталей их программирования.
Рынок многоядерных процессоров и СнК в мире составляет для встраиваемых систем миллиарды изделий в год (в 2012 выпушено 8,7 млрд.шт, из них 2,2 млрд.шт – не для мобильных устройств). К 2020 г. только для встроенных устройств с подключенностью к Internet («Internet of Things») годовой выпуск оценивается в 10 млрд. шт.: в подавляющем большинстве это будут неоднородные многоядерные процессоры и СнК. Эффективное применение этого огромного парка многоядерных устройство невозможно без эффективных средств программирования, учитывающих как технические характеристики самих устройств (многоядерность, неоднородность), так и требования применений встроенных систем (энергоэффективность, работа с учетом ограничений реального времени), что создает широкий рынок для
систем программирования, учитывающих весь комплекс указанных факторов. В России также идет и расширяется выпуск многоядерных процессоров и СнК: ОАО ЭЛВИС, НИИСИ РАН, МЦСТ. Выпускаемые процессоры отличаются оригинальной архитектурой, как на общесистемном уровне, так и на уровне разнообразных процессорных ядер и ядер аппаратных акселераторов. Их успешное применение и продвижение на отечественном и мировом рынке создает устойчивый спрос на технологии и инструментальные системы их программирования пользователями, разработчиками прикладных программных систем.

Текущие результаты проекта:
На текущий момент выполнены все необходимые аналитические исследования и патентный поиск. Завершена разработка всех заявленных методов, алгоритмов и программных компонентов:
- технология построения крупноблочных предметно-ориентированных языков на основе существующих программных библиотек предметных областей и визуальной интерактивной разработки с использованием этих языков (получено свидетельство о государственной регистрации программы для ЭВМ №2015619719);
- технология ранней оценки, измерения и анализа производительности приложений, разработанных с использованием крупноблочных предметно-ориентированных языков параллельного программирования (подана заявка на регистрацию программы для ЭВМ);
- технология генерации платформо-зависимого кода приложений работы с крупноблочными предметно-ориентированными библиотеками, разработанными с использованием крупноблочных предметно-ориентированных языков параллельного программирования (подана заявка на регистрацию программы для ЭВМ).
В настоящий момент выполняется интеграция программных компонент в единый экспериментальный образец программного комплекса, завершается подготовка к проведению экспериментальных исследований программного комплекса.