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.


 

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

32870. РЕВОЛЮЦИЯ И РЕФОРМА 79.5 KB
  Современные ученые выделяют несколько видов революции: социальная экономическая политическая культурная идеологическая и т. По Марксу социальные революции являются выражением сущности естественно исторического процесса развития общества. Открытый марксизмом закон социальной революции указывает на объективную необходимость в смене одной общественноэкономической формации другой более прогрессивной. Спенсер сравнивал социальные революции с голодом бедствиями повальными болезнями проявлениями неповиновения и âагитацией разросшейся до...
32871. РУССКАЯ АКСИОЛОГИЯ 49.78 KB
  Проблемы ценностей в философии Человека интересует не просто истина а значение объекта для человека для удовлетворения его потребностей. Философские направления XX в выдвигают проблему ценностей на первый план. Выработка ценностей: Часть ценностей человек приобретает по наследству от тех традиций в которые он попал в результате рождения. Интерпритация всегда есть переплавка старых ценностей в новые установки.
32872. ИЛЬИН Иван Александрович 25.84 KB
  усматривал главный порок Человека началасередины 20 века во внутренней расколотости в противоречии между разумом умом рассудком и чувствами душой сердцем. Но в выборе направления движения и основных целях его он был прав поскольку без обретения свободы преодоление тоталитарного отчуждения человека его освобождение невозможно и немыслимо. искал пути к снятию противоречий к такой схеме их взаимодействий при которой отедельные части оппозиции становятся разными проявлениями одних и тех же проблем в существовании человека. Пол это...
32873. ФИЛОСОФИЯ КАК МИРОВОЗЗРЕНИЕ. ПРЕДМЕТ ФИЛОСОФИИ 37.61 KB
  ПРЕДМЕТ ФИЛОСОФИИ. ОСНОВНОЙ ВОПРОС ФИЛОСОФИИ. Главное отличие философии от всех иных наук заключается в том что философия является теоретическим мировоззрением предельным обобщением ранее накопленных человечеством знаний. Предмет философии шире предмета исследования любой отдельной науки философия обобщает интегрирует иные науки но не поглощает их не включает в себя все научное знание не стоит над ним.
32874. МИФОЛОГИЯ КАК МИРОВОЗЗРЕНИЕ. ПЕРВОБЫТНАЯ МИФОЛОГИЯ. РЕЛИГИЯ КАК МИРОВОЗЗРЕНИЕ 57.06 KB
  Как правило мифы пытаются дать ответ на следующие основные вопросы: происхождение Вселенной Земли и человека; объяснение природных явлений; жизнь судьба смерть человека; деятельность человека и его достижения; вопросы чести долга этики и нравственности. Религия форма мировоззрения основанная на вере в наличие фантастических сверхъестественных сил которые влияют на жизнь человека и окружающий мир. При религиозном мировоззрении для человека характерна чувственная образноэмоциональная а не рациональная форма восприятия...
32875. АНТИЧНАЯ ФИЛОСОФИЯ. ПИФАГОР, СОКРАТ, ПЛАТОН, АРИСТОТЕЛЬ, ДЕМОКРИТ, ЭПИКУР 64.08 KB
  Подобно тому как математик ставит вопрос что такое единица и дает довольнотаки сложное определение этого казалось бы простейшего понятия так и философ с глубокой древности задается проблемой: что такое бытие что значит быть Эта специфика философии проливает известный свет и на вопрос о том почему и когда философия возникает. Философ ставит все это под сомнение но делает это для того чтобы докопаться до подлинных корней из которых растет сама данная традиция; в этом и состоит смысл его вопроса: что значит быть что такое бытие А...
32876. СРЕДНЕВЕКОВАЯ ФИЛОСОФИЯ. ОТЦЫ ЦЕРКВИ. ВАСИЛИЙ ВЕЛИКИЙ, ГРИГОРИЙ БОГОСЛОВ, ИОАНН ЗЛАТОУСТ, ФОМА АКВИНСКИЙ, ГРИГОРИЙ ПАЛАМА. РЕАЛИЗМ И НОМИНАЛИЗМ 45.65 KB
  которое признавало Бога в качестве высшего существующего начала а весь окружающий мир Его творения. 50 Можно выделить следующие основные черты средневековой теологической философии: теоцентризм главной причиной всего сущего высшей реальностью основным предметом философских исследований являлся Бог; изучению самого по себе космоса природы явлений окружающего мира уделялось мало внимания так как они считались творением Бога; господствовали догматы истины не нуждающиеся в доказательствах о творении всего Богом и откровении...
32877. Географическая среда в развитие общества. Географическое направление в обществоведении 41.93 KB
  Географическая среда в развитие общества. В более узком смысле это часть материи за исключением общества т. Географическая среда имеет историческую обусловленность и расширяется с развитием общества. Географическая среда является важным фактором развития общества: Она влияет на разделение труда на размещение отраслей производства что изучается экономической географией; Она влияет на темпы развития общества может быть боле или менее благоприятной; Она опосредованно влияет на характер политических систем что изучается...
32878. Материальное производство. Труд. Производительные силы. Технологический способ труда. Технократическое направление в обществоведении 41.14 KB
  Технологический способ труда. Лишь для земледельческого труда делалось некоторое исключение. Средневековую цивилизацию многие историки культуры трактуют как цивилизацию труда. ознаменовался новым сдвигом в социальном статусе и образе труда.