Пожалуйста, используйте этот идентификатор, чтобы цитировать или ссылаться на этот ресурс: http://hdl.handle.net/11701/13593
Полная запись метаданных
Поле DCЗначениеЯзык
dc.contributor.advisorМордвинов Дмитрий Александровичru_RU
dc.contributor.authorКиргизов Григорий Валерьевичru_RU
dc.contributor.authorKirgizov Grigoriien_GB
dc.contributor.editorКириленко Яков Александровичru_RU
dc.contributor.editorKirilenko Iakov Аleksаndrovichen_GB
dc.date.accessioned2018-07-26T15:26:23Z-
dc.date.available2018-07-26T15:26:23Z-
dc.date.issued2018
dc.identifier.other040020en_GB
dc.identifier.urihttp://hdl.handle.net/11701/13593-
dc.description.abstractВстраиваемые системы с гетерогенной архитектурой состоят из управляющего и периферийных процессоров. Разработка ПО для таких систем представляет заметные сложности, требуя различные наборы инструментов для каждой составляющей гетерогенной системы. Достижение высокой эффективности также становится сложной задачей. Более того, зачастую встраиваемые системы требуют настройки во время исполнения, что тяжело обеспечить обычными средствами. Эта работа представляет C-подобный предметно-ориентированный язык для метапрограммирования и библиотеку, предоставляющую единый интерфейс для программирования периферийных процессоров с использованием этого языка. Это позволяет разрешить упомянутые проблемы. Подход данной работы — это динамическая кодогенерация. Код, написанный на предметно-ориентированном языке, транслируется в LLVM IR и затем компилируется во время исполнения. Это открывает возможность динамических оптимизаций кода, например, специализации функций для определенных значений, известных только во время исполнения. Гибкая архитектура библиотеки обеспечивает простую расширяемость на любые платформы, поддерживаемые LLVM. В работе также приводятся апробация библиотеки на нескольких системах и демонстрация возможности динамических оптимизаций.ru_RU
dc.description.abstractEmbedded platforms with heterogeneous architecture consist of a primary and one or more secondary processors. Development of software systems for these platforms poses substantial difficulties, requiring a distinct set of tools for each constituent of the heterogeneous system. It also makes achieving high efficiency the more difficult task. Moreover, many use cases of embedded systems require runtime configuration, that can't be easily achieved with usual approaches. This work presents a C-like metaprogramming DSL and a library that provides a unified interface for programming secondary processors of heterogeneous systems with this DSL. Together they help to resolve aforementioned problems. The approach behind the library is a dynamic code generation: the DSL translates to LLVM IR and then compiles to native executable code at runtime. It opens a possibility of dynamic code optimizations, e.g. runtime function specialization for specific parameters known only at runtime. Flexible library architecture allows simple extensibility to any target platform supported by LLVM. Work also provides a system approbation on different platforms and a demonstration of dynamic optimizations capability.en_GB
dc.language.isoru
dc.subjectметапрограммированиеru_RU
dc.subjectкодогенерацияru_RU
dc.subjectвстроенный предметно-ориентированный языкru_RU
dc.subjectгетерогенные системыru_RU
dc.subjectвстроенные системыru_RU
dc.subjectmetaprogrammingen_GB
dc.subjectcode generationen_GB
dc.subjectembedded DSLen_GB
dc.subjectheterogeneous systemsen_GB
dc.subjectembedded systemsen_GB
dc.titleProgramming library for heterogeneous embedded architecturesen_GB
dc.title.alternativeБиблиотека программирования гетерогенных встраиваемых архитектурru_RU
Располагается в коллекциях:BACHELOR STUDIES



Все ресурсы в архиве электронных ресурсов защищены авторским правом, все права сохранены.