30479

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

Научная статья

Информатика, кибернетика и программирование

Существенным недостатком современных систем отладки параллельных и распределенных вычислений является отсутствие отображения динамики программных процессов. Причем каких-либо вариантов представления последовательности кода

Русский

2015-01-19

42 KB

4 чел.

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

В.Л. Авербух, А.Ю. Байдалин, Д.Р. Исмагилов, Т.А. Флягина

ИММ УрО РАН, УрГУ, Екатеринбург

В прошлом десятилетии был создан целый ряд интересных систем визуального программирования, отладки правильности и настройки производительности параллельных программ. В настоящее время, судя по анализу текущей литературы, интерес к данной проблематике снизился, хотя потребность в средствах визуализации программного обеспечения параллельных и распределенных вычислений остается. Одна из причин этого явления – несоответствие между большими возможностями системной составляющей отладчиков и ограниченными возможностями по выбору методик визуализации. Даже в тех случаях, когда для визуализации использовались среды виртуальной реальности, сами виды отображения чаще всего основаны на выводе двумерной статичной графики. Вместе с тем, имеют место несколько интересных примеров использования трехмерных метафор для визуализации программного обеспечения. Например, для нужд инженерии программного обеспечения используется метафора ландшафта, метафора географического или городского пространства. Такие свойства метафоры как неограниченный контекст, естественность, возможность организация внутренней структуры позволяют использовать ее при проектировании средств визуализации для систем отладки и настройки производительности. Однако потребности таких систем требуют модификации метафоры по сравнению с существующей практикой.

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

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

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

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

3-D and Dynamical Metaphors in Software Visualization for Parallel and Distributed Computing

V.L. Averbukh, A.Yu. Baydalin, D.R. Ismagilov, T.A. Fliagina

Ekaterinburg

Last decade a number of interesting systems of visual programming, visual debugging and performance tuning for parallel programs was developed. Now, the analysis of literature shows that the interest to these themes is reduced though the need for means of software visualization for the parallel and distributed computing remains. One of the reasons of this phenomenon is discrepancy between the opportunities of a system component of debuggers and the limited opportunities of visualization techniques. Even when virtual reality environments were used for visualization, the views often are based on bidimentional static graphics. At the same time, some interesting examples of use of three-dimensional metaphors for software visualization take place. For example, for needs of software engineering the metaphors of a landscape, a metaphor of geographical or city space are used. Such properties of metaphors as a unlimited context, naturalness, an opportunity the organization of internal structure allow to use it in visualization of debugging and performance tuning systems. However such systems demand updating metaphors in comparison with existing practice. In particular for needs of debugging it is useful to show connection between the data and program constructions. For this purpose in elaboration of a landscape metaphor the metaphor of the shell is offered. In this case the visualization of data and program objects is located on one above another surfaces similar to a surface of the ground and heavenly sphere (or to flying islands). The objects located on these surfaces, can communicate among themselves, showing intraprogram connections and dataflows. The given metaphor can be used to present the parallel programs constructed on the basis of models of the shared memory and data parallel.

Essential lack of modern debugging systems for parallel and distributed computing is absence of display of program process dynamics. Variants of code sequence presentations, for example, as a program trace, frequently appear insufficiently.

In this connection dynamic updating of a metaphor of city is offered. This metaphor may be used for tracking abnormal program execution, such as dead lock, constant deferment, etc. Within the framework of the given metaphor program processes are represented by dynamics of a street crossroads. Some objects (traffic lights) control moving objects (automobiles). Traffic lights are connected among themselves. Automobiles reacts on the control and also interact among themselves. This metaphor easily extends due to inclusion of the additional factors represented by objects existing in reality of street.

Shell metaphor and crossroad metaphor may form a basis for view construction in debuggers, testing systems and monitors of work of the parallel and distributed programs, as well as the programs processing events and providing reactions to them Their use is justified in training courses on the given subjects.


 

А также другие работы, которые могут Вас заинтересовать

34840. Управление инвестициями в Российской Федерации 38.5 KB
  Элементами механизма реализации инвестиций является: Российская венчурная компания венчурные управленческие компании венчурные фонды инновационные предприятия. капитал → венчурные управленческие компании 100 частный капитал → венчурные фонды 5 частный капитал 49 гос. ОАО РВК на конкурентной основе утверждает ВУК венчурные управленческие компании которые в свою очередь учреждают венчурные фонды. Венчурные фонды вкладывают деньги в инновационные предприятия т.
34841. Предварительная оценка коммерческой привлекательности инвестиционного проекта 40 KB
  ценность проекта проверяется в 2 этапа: 1 предварительная экспертиза 2 основная экспертиза проекта Цель предварительной экспертизы провести формальный и неформальный анализ окружения проекта выявить все угрозы и проблемы которые ожидают проект в будущем. Для этого формируются группы экспертов которые проводят тестирование проблем связанные с реализацией проекта. В результате тестирования машина рассчитывает рейтинг проекта она же вычерчивает профиль проекта.
34842. Основная оценка коммерческой привлекательности инвестиционного проекта 56.5 KB
  Финансовые показатели проекта рассчитываются по трем прогнозным формам: бух. Баланс составляется на первый год проекта помесячно второй год поквартально последующие года годовые балансы. Из всех финансовых показателей наиболее важными для проекта являются показатели ликвидности и платежеспособности и показатели рентабельности.
34843. Жизненный цикл инвестиционного проекта. Матрица ответственности проекта 36 KB
  Матрица ответственности проекта Жизненный цикл проекта это промежуток времени от момента начала финансирования проекта до момента утилизации основных средств проекта. Инвестиционный показывает продолжительность подготовительной и производственной стадии проекта. доходы 3 начало конец 1 годы затраты 2 1 прединвестиционная фаза 2 инвестиционная фаза 3 фаза эксплуатации проекта На первой фазе разрабатывается бизнесплан это относительно небольшие деньги.
34844. Чистый денежный поток. Простой срок окупаемости капитальных вложений 49.5 KB
  Простой срок окупаемости капитальных вложений NCF = чистая прибыль амортизация основных средств и нематериальных активов отложенные налоговые платежи Обычно рассчитывают годовые денежные потоки. Если чистый денежный поток имеет знак то это означает что инвестор получает приток амортизации и чистой прибыли NCF. Если чистый денежный поток отрицательный NCF это означает что в проект инвестируются денежные средства либо инвестиции в капитальные вложения либо оборотные средства проекта. На величину NCF влияют отложенные...
34845. Простые методы оценки экономической эффективности капитальных вложений. Достоинства и недостатки 38.5 KB
  Достоинства и недостатки Среди простых методов оценки экономической эффективности капитальных вложений является расчет простых показателей а именно: простого срока окупаемости инвестиций и показателя прибыли на вложенный капитал. Простой срок окупаемости PP это срок возврата инвестиций. нормативный срок окупаемости РР например если он установлен не более 3 лет то все проекты со сроком окупаемости более 3 лет отвергаются. В общем случае они зависят: 1 от отрасли ее динамики развития например в электронике нормативы окупаемости...
34846. Дисконтирование и компаундирование денежных потоков. Схемы приведения денежных потоков 50.5 KB
  Дисконтирование и компаундирование денежных потоков. Схемы приведения денежных потоков. i процентная ставка доходности инвестиций PV FV годы t = 1Т PV Present Vlue текущая настоящая стоимость денежных потоков FV Future Vlue будущая стоимость денежных потоков Для того чтобы сравнивать денежные потоки зафиксированные в разные моменты времени эти денежные потоки нужно...
34847. ЧДД как критерий эффективности инвестиций 99 KB
  Здесь инвестициям приписывается знак а доходам проекта знак . Этот индекс показывает во сколько раз приведенная к определенному моменту времени доходы проекта больше приведенных к этому же моменту времени затрат капитальных вложений проекта. В формуле 4 доходы и затраты проекта приведены к нулевому году в формуле 5 к концу жизненного цикла проекта. При расчете этих показателей следует иметь ввиду 4 особенности инвестиционного проекта.
34848. Внутренняя норма доходности капитальных вложений простого проекта 36.5 KB
  ВНД проекта это единственный положительный корень уравнения NPV = ∑Tt=0NCFt 1xt = 0 Неудобство такого определения в том что если жизненный цикл проекта больше двух лет то необходимо искать корни уравнения третьей четвертой и т. ВНД это такая процентная ставка при которой чистый дисконтированный доход проекта обнуляется. Основной показатель эффективности проекта это показатель NPV.