Preview

Труды Института системного программирования РАН

Расширенный поиск
Том 38, № 3: часть 1. май-июнь
Скачать выпуск PDF
7-32
Аннотация

В статье предложена модель кластеризованной распределённой сети для обработки запросов. В такой сети узлы являются вычислительными единицами, и каждый узел может запросить ту или иную услугу, которая может быть оказана каким-то другим, но заранее неизвестным, узлом сети. Для этого осуществляется опрос сети аналогичный поиску в ширину для того, чтобы найти ближайший узел с необходимыми свойствами. При этом обеспечивается достижимость узлов, отсутствие дублирования сообщений, а обмен сообщениями с найденным узлом идёт по кратчайшему пути. Модель нацелена на предотвращение перегрузки сети и ориентирована на минимизацию как времени выполнения опроса, так и размера требуемой для этого памяти в узлах и размеров сообщений. Кластеризованность распределённой сети означает, что сеть состоит из множества кластеров, каждый из которых есть подмножество узлов сети и соединяющих их рёбер. Рёбра графа, которые не принадлежат никакому кластеру, не используются для передачи сообщений, а переход из кластера в кластер осуществляется через общие узлы кластеров. Для того чтобы не было дублирования сообщений, требуется, чтобы граф кластеров был деревом. В данной статье показано, что необходимым требованиям удовлетворяет связный блоковый граф, то есть связный граф, блоки (компоненты двусвязности) которого являются кликами. Эти блоки и выбираются в качестве кластеров.

33-44
Аннотация

Гомоморфное шифрование позволяет обрабатывать данные без их расшифровки в удаленном пространстве (таком как облачной системы обработки данных). Несмотря на то, что это одна из ключевых перспективных технологий защиты персональных данных пользователей в современном мире, она сталкивается с проблемой низкой производительности. Для повышения скорости обработки данных большинство основных систем гомоморфного шифрования используют модулярный код через систему остаточных классов (СОК) как арифметическую основу для высокопроизводительных вычислений. Среди сложных операций, необходимых для гомоморфных шифров, особое место занимает операция расширения системы оснований СОК. Наибольшую популярность имеет ранее предложенный подход к этой операции, основанный на вычислении приближенного ранга числа в СОК использований числа с плавающей запятой. Для оптимизации алгоритма расширения оснований СОК ранее были получены оценки точности, с которой необходимо выполнять вычисления приближенного ранга числа, причем авторы использовали классическую теорию погрешности, не учитывающую свойства модулярного кода. Мы предлагаем теоретическое исследование позволявшее оценить точность вычисления приближенного ранга числа. Доказанная теорема позволяет уменьшить длину операндов более, чем в 3 раза по сравнению с оценками других авторов. Результаты моделирования показывают, что ранее предложенная оптимизация алгоритма позволяет повысить скорость алгоритма масштабирования чисел в системе остаточных классов в среднем на 46.15%.

45-70
Аннотация

Традиционные языки описания аппаратуры Verilog/SystemVerilog и VHDL не предоставляют средства для эффективного описания структуры и режимов работы подсистемы питания. Для решения этой проблемы в стандарте IEEE 1801 был представлен формат Unified Power Format (UPF), позволяющий формализовать структуру и правила управления питанием в цифровых системах. Однако, большинство современных САПР, поддерживающих интерпретацию UPF-описаний, являются коммерческими и нередко имеют отклонения от стандарта. При этом некоммерческие инструменты значительно отстают от коммерческих аналогов в степени поддержки конструкций формата и редко включают средства анализа корректности описания подсистемы питания. В работе представлен инструмент для интерпретации UPF-описания и статического анализа модели подсистемы питания, который обеспечивает полную поддержку стандарта IEEE 1801-2018.

71-86
Аннотация

Мандатный контроль целостности (МКЦ) в операционной системе (ОС) Astra Linux как в ряде других ОС, например, семейства Microsoft Windows или IBM AIX, традиционно применяется для защиты системного высокоцелостного (доверенного) программного обеспечения от несанкционированной модификации или захвата управления со стороны пользовательского низкоцелостного (недоверенного) нарушителя. Для управления доступом к пользовательским данным, как правило, используется штатное для ОС семейства Linux дискреционное управление доступом. Оно не задает четких правил управления доступом, что часто приводит к ошибкам при администрировании и затрудняет научное обоснование безопасности. Более гибкое и развитое ролевое управление доступом потенциально могло бы решить эту задачу, но оно еще полнофункционально не реализовано в ОС Astra Linux. Изначально используемое в рассматриваемой ОС мандатное управление доступом (МРД) позволяет задавать учетным записям пользователей, субъектам (процессам) и сущностям (файлам, каталогам) неиерархические категории конфиденциальности, отражающие либо содержание данных, либо их принадлежность к структурным подразделениям организации, где используется ОС Astra Linux. Однако правила МРД накладывают жесткие ограничения на управление доступом, избыточные для случаев, когда не требуется предотвращение утечки конфиденциальных данных. В статье предлагается для защиты пользовательских данных рассмотреть возможность применения МКЦ, который также использует неиерархические категории. Если термин «целостность» дополнить «доверием», то уровни целостности (доверия) МКЦ хорошо соотносятся с должностными иерархиями организаций или многодоменными сетевыми структурами, поскольку правила МКЦ по умолчанию запрещают доступ на запись «снизу-вверх» (от менее целостного к более целостному), а при необходимости с применением специального флага сущностей SSI позволяют запретить и доступ на чтение «снизу-вверх». В качестве примера практической апробации предлагаемого подхода в статье рассматривается технология использования МКЦ для управления доступом к пользовательским данным в сетевых файловых системах Samba и NFS. В целом этот подход не требует существенной доработки МКЦ в ОС Astra Linux, а для научного обоснования его безопасности уже разработана мандатная сущностно-ролевая ДП-модель управления доступом и информационными потоками в ОС семейства Linux (МРОСЛ ДП-модель).

87-114
Аннотация
В работе рассматриваются сети эхо-состояний (Echo State Network, ESN), которые являются одними из самых распространенных способов реализации резервуарных вычислений. Они состоят из рекуррентной нейронной сети, веса которой выбираются один раз и не обучаются, и выходного, обычно линейного, обучаемого слоя. Такой подход позволяет создавать энергоэффективные и быстрые нейронные сети, способные обучаться в режиме реального времени. Но так как веса ESN не обучаются, их выбор становится отдельной задачей, требующей анализа. Работа представляет собой сравнительных анализ и обзор различных архитектур ESN и методов обучения выходного слоя. Анализ построен на практическом опыте использования и теоретических основах, которые включают в себя исследование зависимости динамики резервуара от топологии графа связей и спектра матрицы связей. Для анализа структуры резервуара применяются такие инструменты, как конденсация графа связей, линеаризация динамики и вводится новое понятие графовой памяти. Кроме известных архитектур ESN, в обзор входят менее популярные или ранее не используемые в контексте резервуарных вычислений модели, такие как система реакции-диффузии, один нейрон с запаздыванием с FORCE обучением и нейронные поля. Эффективность подходов проверяется в ходе всесторонних экспериментов по прогнозированию хаотического временного ряда Макки-Гласса. Работа не только служит практическим руководством по выбору архитектуры ESN и метода обучения выходного слоя, но и обосновывает перспективные направления для дальнейших исследований.

 

115-128
Аннотация

Статья посвящена задаче построения графа вызовов для программ, написанных на популярных языках программирования (C/C++, Java, Kotlin, Scala, Go, Python). Описываются открытые инструменты, поддерживающие создание графа вызовов программы на одном из этих языков, и предлагается собственный инструмент определения графа вызовов, который поддерживает все перечисленные языки. Описываются ключевые компоненты предложенного инструмента, в частности, перехват сборки и межмодульная компоновка для точного построения внутреннего представления программы, а также применяемые алгоритмы девиртуализации. Представляются экспериментальные результаты работы инструмента на ряде проектов с открытым исходным кодом, а также результаты работы открытых инструментов на тех же проектах. 

129-142
Аннотация

Статья посвящена разработке метода выявления ошибок модификации коллекций во время их перечисления в языке C#. Подобные ошибки приводят к исключению InvalidOperationException и аварийному завершению программы во время выполнения. Предлагаемое решение реализовано в рамках промышленного статического анализатора SharpChecker и использует межпроцедурный символьный анализ, чувствительный к потоку управления и путям выполнения. Детектор отслеживает как прямые изменения коллекций в цикле foreach, так и модификации, происходящие через цепочки вызовов методов. Тестирование на проектах с открытым исходным кодом показало точность около 69%. Результаты демонстрируют эффективность подхода для обнаружения сложных случаев модификации коллекций.

143-152
Аннотация

Текущее состояние индустрии машинного обучения (Machine Learning, ML) требует, чтобы процессы обучения и развертывания моделей были надежны, своевременны и масштабируемы для сохранения конкурентоспособности. Время вывода решений на рынок может быть существенно сокращено, если специалисты будут обладать инструментом, который автоматизирует специфические задачи, возникающие в процессе разработки ML-моделей, такие как отслеживание экспериментов, версионирование моделей и другие. Несмотря на то, что существующие инструменты MLOps с открытым исходным кодом частично покрывают эти потребности, большинство из них обладает ограниченными возможностями контроля доступа и переиспользования кода экспериментов. Чтобы решить эту проблему, мы представляем платформу MLManagement. Наш основной вклад заключается в следующем: во-первых, мы вводим переиспользуемые абстракции-строительные блоки, позволяющие пользователям быстро создавать автоматизированные ML-эксперименты по принципу “plug-and-play”. Во-вторых, мы способствуем улучшению коллаборации в крупных командах и организациях с несколькими командами, реализуя модель контроля доступа на основе атрибутов (Attribute-Based Access Control, ABAC) для всех сущностей платформы – моделей, артефактов, данных, а также для распределения аппаратных ресурсов.

153-170
Аннотация

Автодополнение кода является ключевой функцией интегрированных сред разработки (IDE), повышающей продуктивность разработчиков за счёт подсказок релевантных фрагментов кода. Большие языковые модели (LLM) представляют перспективный способ реализации этой функциональности, однако существующие LLM испытывают трудности при работе с контекстом уровня всего репозитория. В статье предлагается новый подход к автодополнению кода уровня репозитория для Python на основе модели кода IDE. Метод формирует запрос к LLM из двух компонентов: In-File Context, который объединяет типовую информацию и релевантные фрагменты из открытого файла, и Repository Context, извлекающий значимые участки кода из всего проекта. Эксперименты на бенчмарке RepoEval-Updated с использованием двух LLM – CodeGemma-2b и Qwen-2.5-Coder-14b – показали существенный прирост качества автодополнения: метрика Exact Match (EM) увеличилась на 30% для CodeGemma-2b и на 7% для Qwen-2.5-Coder-14b по сравнению с современными подходами No-RAG, Shifted-RAG и GraphCoder. Исследования подтвердили ключевую роль In-File Context и преимущество комбинирования методов поиска релевантного кода, особенно для задач уровня API. Полученные результаты демонстрируют ценность интеграции специфичной для Python семантики кода в системы автодополнения на базе LLM. Обобщаемость метода на модели разных размеров указывает на его широкую применимость. В дальнейшем возможно расширение экспериментов на дополнительные LLM и задействование большего числа возможностей модели кода. Проведённые исследования демонстрируют существенное повышение точности автодополнения кода в сложных проектах на Python при использовании предложенного метода.

171-186
Аннотация

Статья посвящена разработке инфраструктуры для удаленного доступа к лабораторному оборудованию с использованием средств виртуализации. Создана система, позволяющая удаленно взаимодействовать с установленными на платах программируемых логических интегральными схемами (ПЛИС) и выполнять научные исследования и практические работы. Виртуализация лабораторных стендов, состоящих из персональных компьютеров и подключенных к ним плат, позволяет централизовать управление оборудованием и уменьшить количество физических устройств, необходимых для организации работы и проведения экспериментов. Проведен анализ существующих решений, разработана архитектура удаленного доступа, реализованы методы виртуализации существующих стендов, организована сетевая инфраструктура для удаленного доступа к платам ПЛИС. В рамках апробации разработанной системы проведена косимуляция сетей на кристалле.

187-196
Аннотация

В данном исследовании мы предлагаем полностью автоматическую методологию генерации данных, построения словаря правил исправления и обучения модели разметки последовательностей, специально ориентированную на исправление грамматических ошибок. Наш подход работает на уровне подслов SentencePiece, используя базовые преобразования – сохранение, добавление, замену и удаление, которые универсально применимы во всех языках, тем самым устраняя необходимость в грамматически-специфичных операциях. Используя алгоритм Левенштейна для генерации истинных исправлений и редакционных предписаний, мы получили полностью неконтролируемый и независимый от языка процесс генерации наборов данных. Мы применили наш метод к модели разметки последовательностей GECToR и достигли сопоставимых результатов качества для английского языка с оценками F0.5 62,4 на CoNLL-2014 (тестовый набор) и 61,9 на BEA-2019 (тестовый набор), без ручного конструирования правил и аннотации типов ошибок. Это показывает, что универсальные правила на уровне подслов могут стать альтернативой грамматическим операциям, при этом требуя только параллельные тексты – с ошибками и без ошибок.

197-208
Аннотация

В работе рассматривается возможность анализа тональности неочевидных по передаваемой эмоции потребительских отзывов на парфюмерную продукцию. Применялись две большие языковые модели Alice AI (разработчик – Яндекс) и GigaChat (разработчик – ПАО „Сбербанк“). Выбор указанных моделей продиктован их способностью предлагать обратную связь, указывая на мотивы предпочтений. Материал исследования составили отзывы на парфюм на платформе fragrantica.ru. Целью работы представляется выявление особенностей сентимент-анализа большими языковыми моделями на материале отзывов без четких индикаторов эмоционального состояния. Полученные в ходе эксперимента результаты позволяют сделать вывод о наличии некоторых устойчивых схем анализа тональности.

209-222
Аннотация

Данная статья посвящена оценке трудоемкости разработки тестовых систем на основе конвейеризированных генераторов контрольных кодов и эффективности использования подобных тестовых систем для выбора способа обеспечения сбоеустойчивости системы на базе ПЛИС с точки зрения трудоемкости всего проекта. Для оценки трудоемкости предлагается использовать модель COCOMO II, коэффициенты которой адаптированы для HDL-кода. В статье рассмотрен пример имплементации трех способов обеспечения сбоеустойчивости в разработанную систему на базе ПЛИС. Была сделана оценка трудоемкости разработки защищенной системы для двух маршрутов проектирования. В первом случае было разработано три версии целевой защищенной системы, после чего была выбрана лучшая по заданным критериям. Во втором случае до начала разработки защищенной целевой системы был проведен дополнительный анализ с использованием тестовой системы на основе конвейеризированного генератора контрольных кодов, в ходе которого был выбран лучший по заданным характеристикам способ обеспечения сбоеустойчивости, который и был имплементирован в целевую систему. Далее было проведено сравнение трудоемкостей этих маршрутов проектирования и сделан вывод об эффективности применения методики выбора способа обеспечения сбоеустойчивости на основе использования тестовой системы. Оценка эффективности по критерию трудоемкости была проведена на основе количества строк кода в проекте и состояла из нескольких последовательных шагов: от оценки количества строк кода в проекте целевого устройства без имплементации методов обеспечения сбоеустойчивости и целевого устройства, защищенного каждым из рассмотренных методов обеспечения сбоеустойчивости, до сравнения изменения трудоемкости этапа выбора и имплементации способа обеспечения сбоеустойчивости и общего изменения трудоемкости проекта.

223-240
Аннотация

Исследуется процесс нестационарного дозвукового ламинарного обтекания тел простой формы двухфазным потоком аэровзвеси (объемная доля воды в аэровзвеси составляет 1%). Поставленная задача может быть описана системой уравнений Навье-Стокса с дополнением как уравнений концентрации и соответствующих фазам аэровзвеси уравнений состояния, так и слагаемых, обеспечивающих учет межфазного взаимодействия жидких частиц со спутным потоком воздуха и обтекаемым телом. Решение строится в рамках подхода Эйлера на основе библиотеки multiphaseEulerFoam пакета OpenFoam. Приводятся и анализируются поля распределения физических величин (давление, скорость, концентрация) в фиксированные моменты времени. В результате исследования выявлено и показано, что структура течения аэровзвеси вблизи обтекаемого тела (до и после), характеризуется формированием области торможения потока вблизи тела, областями локального изменения параметров потока по боковой границе обтекаемого тела и формированием области пониженного давления и вихреобразования за телом. Выявлены и показаны особенности формирования и развития (в том числе топологические особенности) течений в ближнем следе. Показано, что форма тела оказывает существенное влияние на физические параметры потока вблизи обтекаемого тела, оценены перепады давления в области торможения и в области разряжения течения за обтекаемым телом, а также длин области торможения и ближнего следа. Отмечено, что вихревой след за телом, преимущественно, заполнен воздушной фазой аэровзвеси. Показано, что наличие частиц воды приводит к расширению границ вихревых течений за телом, в том числе к некоторому увеличению амплитуд пульсаций вихревых структур. Оценка влияния силы тяжести на течение аэровзвеси вблизи обтекаемого тела и в ближнем следе показала необходимость ее учета.

241-256
Аннотация

В работе сформулирована математическая модель речного потока для протоки Пемзенская реки Амур. Средствами информационной системы «Амур» выполнена конечно-элементная реализация решателя задачи. Выполнена верификация модели и алгоритмов расчета. Информация о рельефе донной поверхности русла и графики уровня реки Амур, необходимые для определения краевых условий задачи, были получены из информационной системы «Амур». Приведены расчетные отметки уровней воды и скоростные поля течения протоки при выбранном коэффициенте шероховатости.

257-268
Аннотация

В статье рассматривается возможность решателя iceFoam, разработанного в ИСП РАН на базе открытой библиотеки OpenFOAM, для моделирования процесса обледенения изолятора линии электропередач (ЛЭП). Исследуются возможности применения открытых программных комплексов OpenFOAM, Paraview для моделирования процессов обледенения изолятора ЛЭП с использованием решения системы уравнений Навье-Стокса для многофазной среды на динамической подвижной сетке. Моделирование проведено для случая обтекания модели изолятора ЛЭП, расположенного в расчетной области, с заданным распределением начальных физических параметров для скорости, температуры, водности, размера капель. В результате расчета получены поля скорости, давления, температуры, масса льда. Расчетная область представляла собой куб с размеров стороны в 5.6 метра. Расчетная неструктурированная сетка включала в себя 1.5 млн расчетных ячеек. Были выполнены расчеты для случая обтекания и обледенения изолятора с напряжением 110 кВ по времени на 200 секунд. Один типовой расчет запускался на 96 вычислительных ядрах и выполнялся по времени около 4 суток. Визуализация результатов расчета выполнена в пакете Paraview с использованием технологии фильтров и программных скриптов. Показано, что картина льда на внутренних фрагментах изолятора существенно отличалась от картины на краевых деталях. Значительные величины турбулентной вязкости наблюдались в подветренной области изолятора. Расчеты были проведены на вычислительном кластере ИСП РАН UniHUB.

269-282
Аннотация

В работах, связанных с анализом данных из нескольких источников, возникает задача гармонизации представлений, устраняющей расхождения, обусловленные техническими особенностями сбора. Мы описываем воспроизводимый программный конвейер для данных многоэховой функциональной МРТ (фМРТ), нацеленный на приведение сигналов от различных эхо-каналов к согласованному латентному пространству. Конвейер основан на открытых данных и инструментах (BIDS, DataLad) и включает этапы предобработки, формирования временных окон и обучения легковесных моделей выравнивания представлений. Эффективность оценивается протоколом на основе приращения межэховой корреляции первой главной компоненты (ΔPC1). На выборке из 100 сессий, при фиксированной конфигурации процедур и гиперпараметров, медианный прирост ΔPC1 составил ≈ +0.11, доля сессий с положительным эффектом ≈ 61%, что подтверждает умеренный, но устойчивый выигрыш; 95%-й доверительный интервал медианы не включает ноль. Представленный конвейер служит открытой воспроизводимой базовой линией для сравнения с более сложными методами гармонизации. 



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)