Публикации

Методы и инструменты конструирования программ

Под редакцией доктора физ.-мат. наук, профессора, чл.-корр. РАЕН В.Н. Касьянова
Серия "Конструирование и оптимизация программ"
Новосибирск 2007

Является пятнадцатым в серии сборников, издаваемых Институтом систем информатики имени А.П.Ершова СО РАН. Описывает проблемы интеллектуализации и качества систем информатики.

Сборник представляет интерес для системных программистов, а также студентов и аспирантов, специализирующихся в области системного и теоретического программирования.




Статьи сборника

Арапбаев Р.Н.
Экспериментальное исследование новой стратегии тестирования

В данной работе проведено экспериментальное сравнение результатов наиболее известных алгоритмов анализа зависимостей по данным, таких как новая стратегия тестирования, Эпсилон-тест и алгоритм Майдана. Эксперимент проведен с использованием инструмента Petit, разработанного в Мэрилендском университете как расширенный вариант инструмента tiny и с использованием системы SUIF, разработанной в Стенфордском университете. Для эксперимента использованы два вида данных. Первый вид - набор тестовых научных программ NASA и PERFECT Club benchmarks, где каждая программа включает от 500 до 18000 строк. Второй вид - набор из 16 циклов, собранный из работ, аналогичных нашей.

Евстигнеев В.А., Турсунбай кызы Ы.
Динамический распределенный ПН-алгоритм для раскраски w-совершенных графов

Данная работа посвящена раскраске w-совершенных графов в рамках распределенной модели вычислений, которая использует широко известную стратегию ПН-алгоритма. Класс w-совершенных графов довольно широкий и содержит в себе такие практически интересные классы графов, как, например, класс хордальных графов, который является одним из наиболее изученных и широко применяемых классов графов.

Идрисов Р.И.
Временная развёртка внутреннего представления IR2 языка Sisal 3.1

Язык Sisal реализует потоковую модель вычислений и является одним из самых известных языков такого типа. Он также позиционируется как замена языка Fortran для вычислений, поскольку в отличие от других потоковых языков имеет синтаксис, более схожий с привычными языками программирования, такими как Pascal. Потоковая организация вычислений обеспечивает более естественное распараллеливание кода. Механизм однократного присваивания сильно упрощает анализ зависимостей.

Целью данной работы является формулирование задачи распараллеливания в терминах внутреннего представления компилятора Sisal 3.1 IR2.

Идрисов Р.И.
Методы межпроцедурного анализа

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

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

Касьянов В.Н., Стасенко А.П.
Язык программирования Sisal 3.2

В статье описывается синтаксис и семантика новой версии входного языка Sisal 3.2 системы параллельного программирования SFP, разрабатываемой в Институте систем информатики имени А.П. Ершова СО РАН. Язык Sisal 3.2 является языком функционального программирования, ориентированным на написание потоковых программ для научных вычислений. К основным нововведениям в языке Sisal 3.2 относительно языка Sisal 3.1 относится поддержка многомерных массивов, пользовательских типов с параметрами, обобщенных процедур, инородных типов и процедур.

Крайниковский С.С.
Вейвлет-обработка данных в геофизических исследованиях скважин

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

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

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

Марчук П.А.
Использование неспецифических онтологий для хранения фактографических данных

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

Несговорова Г.П.
Организация историко-культурного пространства в Интернете с использованием информационных технологий

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

Пыжов К.А.
Внутренние представления среднего уровня для компиляторов языка Sisal

Рассматриваются технологии оптимизации использования памяти в компиляторах языка Sisal. Описываются внутренние представления среднего уровня IR2 и IR3, разработанные для компилятора Sisal 3.1 системы функционального программирования SFP, разрабатываемой в Институте систем информатики имени А.П. Ершова СО РАН. Кратко описаны механизмы построения и трансляции этих представлений, а также их оптимизирующие преобразования.

Стасенко А.П.
Автоматная модель визуального описания синтаксического разбора

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

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

В статье рассматриваются проблемы современных коммерческих банков, связанные с существенным ростом числа финансовых сервисов и контролем легальности операций. Дается описание автоматизированной системы анализа финансовых документов: архитектура и логика работы. Описаны внутренние лингвистические алгоритмы поиска и процесс интеграции с информационной системой банка. Разработка ведется в соответствии с положениями центрального банка РФ (207-П) и требованиями бизнеса.

Шпак М.В.
О некоторых методах моделирования аппаратуры электромагнитного каротажа

В статье описаны математические постановки задач электрического и электромагнитного каротажа, и приведен перечень методов их решения.