Разработка алгоритмического и программного обеспечения управления сложными, распределенными и облачными системами на базе нейропроцессоров | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 28 декабря, печатный экземпляр отправим 1 января.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №17 (97) сентябрь-1 2015 г.

Дата публикации: 31.08.2015

Статья просмотрена: 534 раза

Библиографическое описание:

Романчук, В. А. Разработка алгоритмического и программного обеспечения управления сложными, распределенными и облачными системами на базе нейропроцессоров / В. А. Романчук. — Текст : непосредственный // Молодой ученый. — 2015. — № 17 (97). — С. 24-26. — URL: https://moluch.ru/archive/97/21793/ (дата обращения: 19.12.2024).

Рассматриваются вопросы разработки алгоритмического и программного обеспечения для управления многопроцессорными параллельными вычислительными системами распределенного и облачного типа на базе концептуально нового поколения вычислительной техники — нейрокомпьютеров, принцип функционирования которых основан на принципах мышления человека. Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 14–07–00261 а.

Ключевые слова: нейрокомпьютер, управление, распределенные системы, облачные системы, параллелизм.

 

В настоящее время нейрокомпьютерная технология является одним из наиболее быстроразвивающихся разделов вычислительной техники и новым — “интеллектуальным” этапом ее развития. Использование нейропроцессоров позволяет при решении некоторых задач повысить скорость обработки до 2048 раз, а энергоэффективность до 100 раз. Но для дальнейшего развития в этой области существует ряд проблем, одной из которых является небольшая частота нейрочипов (30–150 МГц). Для ее решения одним из лучших методов является использование многопроцессорных архитектур, для которых практически отсутствует математическое, алгоритмическое и программное обеспечение различного назначения, в том числе и для управления [1,2].

Цель работы: разработка алгоритмического обеспечения и программных средств управления вычислительными системами различного типа на базе нейропроцессоров.

Для решения поставленных задач будем рассматривать пример использования нейропроцессора семейства NM640x, разрабатываемые НТЦ «Модуль» в качестве вычислительного узла системы. Введем понятие host-процессора — процессора, который будет осуществлять непосредственное управление системой и nm-процессора — нейропроцессора [3–11].

Host-интерфейс проектировался исходя из следующих предпосылок и требований:

-          наиболее распространённым прикладным сценарием взаимодействия PC-машины и целевых устройств конструктива PCI с разделяемой памятью является сценарий, в котором инициатором взаимодействия является host-процесс: он инициализирует устройство, загружает прикладную задачу, принимает и отображает результаты её работы. В таких сценариях nm-процесс играет подчинённую роль;

-          базовый интерфейс библиотеки должен быть инвариантен относительно разных типов устройств (но всё того же класса PCI-устройств с разделяемой памятью);

-          интерфейс библиотеки должен обеспечивать инвариантность кода прикладных host-программ относительно разных процессоров многопроцессорных устройств (или, как минимум, лёгкую перенацеливаемость);

-          интерфейс библиотеки должен быть минимальным.

Host-интерфейс библиотеки достаточно универсален, чтобы покрыть большой класс устройств с общей памятью и произвольным количеством процессоров:

-          сокрытие особенностей доступа к конкретному устройству и особенностей взаимодействия с процессорами устройства достигается за счёт использования дескрипторов доступа к экземплярам устройств процессоров;

-          в функциях выдачи дескрипторов доступа экземпляры устройств и процессоров идентифицируются порядковыми номерами в 32-разрядном слове.

Имена типов дескрипторов в фиксированы и от реализаций библиотеки для разных устройств не зависят. Благодаря этому host-часть прикладной программы возможно перенацеливать на иное устройство без изменения существенного кода, простой заменой заголовочного файла. Используя динамическую загрузку host-части библиотеки, возможно параметризовать выбор реализации библиотеки во время исполнения, в таком случае для перенацеливания перекомпиляция прикладной программы не требуется вовсе.

Доступ к разным процессорам многопроцессорного устройства не может осуществляться полностью идентичным образом; при переходе от одного процессора устройства к другому host-процесс должен задействовать иные связи, иные адреса разделяемой памяти. Данная проблема решается путём использования функциями пересылки блоков памяти целевой адресации — функции принимают в качестве аргумента дескриптор целевого процессора и адрес в адресном пространстве этого процессора, скрывая от пользователя библиотеки сложности пересчёта целевого адреса в смещение разделяемой памяти. Таким образом для перенацеливания host-части программы на работу с nm-частью, загруженной на другой процессор устройства достаточно изменить индекс процессора при вызове.

Для успешной работы модуля управления необходимы следующие параметры [5]:

1.         Количество нейропроцессорных модулей.

2.         Вид структуры: конвейерная, векторная, конвейерно-векторная (несколько параллельных векторных потоков обрабатываются по принципу конвейера), векторно-конвейерная (параллельно обрабатываются несколько потоков, которые, в свою очередь, обрабатываются по принципу конвейера) или произвольная.

3.         Если была выбрана произвольная структура, то необходима идентификация активных связей между нейропроцессорными модулями.

4.         Выбор используемого аппаратного обеспечения: модель нейропроцессора или модель эмулятора.

Для управления сложной вычислительной системой на базе нейропроцесоров реализованы следующие функции nm-части: определение номера текущего процессора; барьерная синхронизация с host-процессом, скаляром (то есть передача одного элемента); барьерная синхронизация с host-процессом, массивом (то есть передача нескольких элементов на нейропроцессор).

Для управления сложной вычислительной системой на базе нейропроцесоров реализованы следующие функции host-части: определение номера версии библиотеки для использования нужного драйвера; определение количества доступных экземпляров модуля (то есть количество элементов в системе); получение дескриптора доступа к экземпляру модуля; завершение работы с модулем; перезагрузка экземпляра модуля; загрузка кода начальной инициализации (код передается автоматически); получение дескриптора доступа к процессору модуля; получение дескриптора доступа к процессору модуля; маскирование прерываний с процессоров модуля на PC; ожидание прерывания с процессоров модуля на PC; загрузка и исполнение пользовательской программы; запись блока данных в разделяемую память модуля; чтение блока из разделяемой памяти модуля; барьерная синхронизация с nm-процессом, скаляром (взаимодействует с аналогичной функцией для nm-части); барьерная синхронизация с nm-процессом, массивом (взаимодействует с аналогичной функцией для nm-части); установка времени ожидания функциям синхронизации; посылка прерывания на процессор; перезагрузка экземпляра модуля и запуск на исполнение внутренний загрузочный код модуля; запрос статуса.

Для более эффективного управления нейропроцессорной системой можно использовать также порт JTAG, имеющийся во всех нейропроцессорах, выпускаемых Texas Instruments и НТЦ «Модуль». Это интерфейс предназначен для подключения сложных цифровых микросхем или устройств уровня печатной платы к стандартной аппаратуре тестирования и отладки.

Для возможности управления распределенными связями между нейропроцессорами кластера или облачного цетра обработки данных было необходимо реализовать возможность множественных удаленных подключений к нейропроцессорам, распределенным в пространстве. В качестве провайдера подключения была выбрана технология организации IIS сервера и технология XML для обеспечения интерфейса подключения к процессору. Полностью были реализованы вышеперечисленные функции в виде ссылок XML для подключения и доступа к нейропроцессору. Также сохранены необходимые для работы глобальные XML-переменные.

Далее были реализованы алгоритмы подключения к удаленным нейропроцессорным устройств и двусторонней передачи данных. На рисунке 1 показана диаграмма управления нейропроцессорной системой. Модуль управления работает в зависимости от выбранной нейропроцессорной структуры (конвейерная, векторная, конвейерно-векторная и т. д.).

Рис. 1. Схема действий при работе с удаленным нейропроцессором

 

Операции «Запрос статуса» и «Получение статуса» являются необязательными и используются в случае отсутствия сигналов от какого-либо процессора или подозрительных результатов выполнения операции.

 

Литература:

 

1.         Галушкин А. И. Нейронные ЭВМ — перспективное направление развития вычислительной техники — М.: Препринт, 1991.-615 с.

2.         Головкин Б. А. Вычислительные системы с большим числом процессоров. М.: Радио и связь, 1995. — 320 с.

3.         Романчук В. А., Ручкин В. Н., Колмыков М. В. Возможности программного комплекса NM Model для разработки и отладки программ обработки изображений // Вестник РГРТУ. — Рязань: РГРТУ, 2008. — № 2. — Вып. 24. — С.83–85.

4.         Vladimir Ruchkin, Vladimir Fulin, Vitaliy Romanchuk           , Boris Kostrov and Ekaterina Ruchkina. Parallelism in Embedded microprocessor System Based on Clustering // Proceedings of the 4nd Mediterranean Conference on Embedded Computing (MECO). — Budva, Montenegro, 2015. — С.45–50.

5.         Романчук В. А., Ручкин В. Н. Алгоритмы анализа вычислительных структур на базе нейропроцессоров // Вестник РГРТУ. — Рязань: РГРТУ, 2012. — № 2. — Вып.40. — С.60–66.

6.         Романчук В. А., Ручкин В. Н. Разработка алгоритмов определения вида структуры нейропроцессорной системы на основе описания связей ее элементов // Информатика и прикладная математика: межвуз. сб. науч. тр. — Рязань: РГУ имени С. А. Есенина, 2011. — Вып.17. — С.106–109.

7.         Злобин В. К., Григоренко Д. В., Ручкин В. Н., Романчук В. А. Кластеризация и восстанавливаемость нейропроцессорных систем обработки данных // Известия тульского государственного университета. Технические науки. — Тула: Издательство ТулГУ, 2013. — Вып.9. — Ч.2. — С.125–135.

8.         Романчук В. А., Ручкин В. Н. Оценка результатов моделирования вычислительных систем на базе нейропроцессоров // Известия тульского государственного университета. Технические науки. — Тула: Издательство ТулГУ, 2013. — Вып.9–2 — С.194–203.

9.         Романчук В. А., Лукашенко В. В. Разработка математической модели реструктуризуемого под классы задач, виртуализируемого кластера GRID-системы на базе нейропроцессоров // Вестник РГУ имени С. А. Есенина. — Рязань: РГУ имени С. А. Есенина, 2014. — № 1(42). — C. 177- 182.

10.     Романчук В. А. Инновационный программный комплекс моделирования вычислительных систем на базе нейропроцессоров «НейроКС» // Современные научные исследования и инновации. — Декабрь, 2012 [Электронный ресурс]. — URL: http://web.snauka.ru/issues/2012/12/19407.

11.     Романчук В. А. Разработка алгоритмов определения связей элементов вычислительной структуры на базе нейропроцессоров // Информатика и прикладная математика: межвуз. сб. науч. тр. — Рязань: РГУ имени С. А. Есенина, 2011. — Вып.17. — С.102–105.

Основные термины (генерируются автоматически): XML, разделяемая память, процессор устройства, IIS, JTAG, барьерная синхронизация, вычислительная техника, нейропроцессорная система, прикладная программа, программное обеспечение.


Похожие статьи

Системы поддержки принятия управленческих решений на основе байесовских интеллектуальных технологий (БИТ)

Эффективным инструментом поддержки функционирования сложных систем в настоящее время может служить методология байесовских интеллектуальных технологий (БИТ). Информационно-аналитические системы на основе БИТ используются в самых разных прикладных зад...

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

Обоснована целесообразность и перспективность разработки СППР оперативного развертывания, обновления многокомпонентных распределенных информационных веб-систем на основе мультиагентных технологий. Представлены модели и алгоритмы оптимизации оперативн...

Динамическое программирование в решении задачи оптимального размещения электронных компонентов системы управления

В статье изложен способ повышения эффективности проектирования электромонтажных схем системы управления технологическим оборудованием с использованием метода Р. Беллмана. Разработана математическая модель, позволяющая наилучшим образом разместить эле...

Моделирование технических систем в среде Unity 3D

В статье предложена концепция трёхмерного моделирования технических систем и процессов с помощью программных средств разработки компьютерных игр, одним из которых является среда Unity 3D. Применение указной концепции открывает широкие возможности по ...

Разработка системы автоматизированного управления режимом изолированной микроэнергосистемы

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

Применение цифровых платформ для совместной работы с пространственными данными

В статье обоснована эффективность использования цифровых платформ. Установлено, что цифровые платформы обладают высокой масштабируемостью и усиливают сетевые эффекты интеграции участников в рамках единого инфраструктурного объекта, что приводит к сок...

Программный комплекс моделирования транспортных и пешеходных потоков на регулируемом перекрестке

В статье изложен способ повышения эффективности управления транспортными и пешеходными потоками на регулируемом перекрестке. Реализованы валидация, проектирование и верификация. Разработан программный комплекс моделирования регулируемого перекрестка...

Программный комплекс оптимального выбора проекта распределенной вычислительной сети

В статье изложен способ повышения эффективности проектирования распределенной вычислительной сети. Разработаны математическая модель и программный комплекс оптимального выбора распределенной вычислительной сети. Результаты математического моделирован...

Разработка системы контроля и управления доступом с применением биометрических методов идентификации

В статье рассмотрены биометрические методы идентификации, применяемые в системах контроля и управления доступом, приведена классификация методов идентификации и основные параметры оценки представленных систем. В качестве базовой технологии выступает ...

Кластеризация диагностических моделей и их выделение из конфигурационных наборов аппаратных архитектур реконфигурируемой системы функционального контроля и диагностики космического аппарата

В работе рассматриваются особенности математической формализации процессов формирования диагностических моделей контролируемых и диагностируемых бортовых систем космического аппарата в реконфигурируемом вычислительном поле. Предложена математическая ...

Похожие статьи

Системы поддержки принятия управленческих решений на основе байесовских интеллектуальных технологий (БИТ)

Эффективным инструментом поддержки функционирования сложных систем в настоящее время может служить методология байесовских интеллектуальных технологий (БИТ). Информационно-аналитические системы на основе БИТ используются в самых разных прикладных зад...

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

Обоснована целесообразность и перспективность разработки СППР оперативного развертывания, обновления многокомпонентных распределенных информационных веб-систем на основе мультиагентных технологий. Представлены модели и алгоритмы оптимизации оперативн...

Динамическое программирование в решении задачи оптимального размещения электронных компонентов системы управления

В статье изложен способ повышения эффективности проектирования электромонтажных схем системы управления технологическим оборудованием с использованием метода Р. Беллмана. Разработана математическая модель, позволяющая наилучшим образом разместить эле...

Моделирование технических систем в среде Unity 3D

В статье предложена концепция трёхмерного моделирования технических систем и процессов с помощью программных средств разработки компьютерных игр, одним из которых является среда Unity 3D. Применение указной концепции открывает широкие возможности по ...

Разработка системы автоматизированного управления режимом изолированной микроэнергосистемы

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

Применение цифровых платформ для совместной работы с пространственными данными

В статье обоснована эффективность использования цифровых платформ. Установлено, что цифровые платформы обладают высокой масштабируемостью и усиливают сетевые эффекты интеграции участников в рамках единого инфраструктурного объекта, что приводит к сок...

Программный комплекс моделирования транспортных и пешеходных потоков на регулируемом перекрестке

В статье изложен способ повышения эффективности управления транспортными и пешеходными потоками на регулируемом перекрестке. Реализованы валидация, проектирование и верификация. Разработан программный комплекс моделирования регулируемого перекрестка...

Программный комплекс оптимального выбора проекта распределенной вычислительной сети

В статье изложен способ повышения эффективности проектирования распределенной вычислительной сети. Разработаны математическая модель и программный комплекс оптимального выбора распределенной вычислительной сети. Результаты математического моделирован...

Разработка системы контроля и управления доступом с применением биометрических методов идентификации

В статье рассмотрены биометрические методы идентификации, применяемые в системах контроля и управления доступом, приведена классификация методов идентификации и основные параметры оценки представленных систем. В качестве базовой технологии выступает ...

Кластеризация диагностических моделей и их выделение из конфигурационных наборов аппаратных архитектур реконфигурируемой системы функционального контроля и диагностики космического аппарата

В работе рассматриваются особенности математической формализации процессов формирования диагностических моделей контролируемых и диагностируемых бортовых систем космического аппарата в реконфигурируемом вычислительном поле. Предложена математическая ...

Задать вопрос