77332

EXECUTION TRACE VISUALIZATION FOR PARALLEL PROGRAMS

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

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

There re mny interesting systems bsed on execution trce visuliztion. In the report s the review of existing decisions s new pproches to development of execution trce visuliztion will be considered. However the min problem tht occurs when you develop trce visuliztion system is the huge nd evergrowing volume of dt to be nlyzed.

Английский

2015-02-02

26.5 KB

0 чел.

EXECUTION TRACE VISUALIZATION FOR PARALLEL PROGRAMS

Vladimir Averbukh, Dmitriy Manakov

Institute of Mathematics and Mechanics UrB RAS, Ekaterinburg

Execution trace visualization for parallel and distributed programs is the important instrument of correctness and debugging and effectiveness tuning. There are many interesting systems based on execution trace visualization. Considerable experience in the development of such systems is gained. In the report as the review of existing decisions as new approaches to development of execution trace visualization will be considered.

It is obvious that the text of the program is the key view for program debugging. In systems developed of the 90th years as a rule these or those text views are used. Other popular kinds of views were various graphs of program execution with animation of transfer of control chains. However, the main problem that occurs when you develop trace visualization system is the huge and ever-growing volume of data to be analyzed. Therefore, techniques, well helped for data visualization twenty years ago (for example the use of Visual Information Seeking Mantra “Overview first, zoom and filter, then details-on-demand”), do not work.  

Methods of execution trace visualization based on of the various visualization metaphors including animation are actively used. One may find in recently published papers examples of use various metaphors for correctness and effectiveness debugging. There are among them such traditional metaphors as City and Landscape metaphors and also a new one – Brain metaphor. Brain metaphor is based on the idea of brain activity visualization on presentation some stimuli. This idea is adapted to represent program execution (procedure calls, input/ output, etc.) However, the interpretation of animated displays basing on interesting Brain metaphors isn't represented obvious. Analysis of call graph is a useful tool in correctness and effectiveness debugging. 2D representations of call graphs are overcomplicated in cases of large and complex structured programs with big nesting depth and lots of user’s functions. Therefore prototype realizations of the call graphs on the base of 2 ½ D and 3D graphics are developed. Views of call graphs using Building metaphor and Molecule metaphor are realized.

The comparative analysis of metaphors and the constructed on their base 2D and 3D for representation of parallel programming entities (first of all, execution traces) is described. At the same time it is important not only to check the suitability of metaphors for solving the specific problems, but also to formalize the quality evaluation of the views realized under various visualization techniques. Evaluation methods should be developed on the basis of a formal model to follow verification and validation as metaphors and visualization of the results themselves. So one and the same piece of code can run on different processors for different times. Obviously, the resulting time intervals may be considered in the framework of Possibility Theory of or Info-Gap Theory. Theoretical studies are also useful in terms of creating new metaphors.

In some computer visualization systems integrated or multiple views have came to good. This implies the use of multiple views, divide between them by linkages in the process of interpretation and interaction. (One can use the analogy of the technical drawing area when a three-dimensional objects  represent as three projections.) This assumes the use of several types separated mapping between them in the process of interpretation and interaction established relationship. (You can draw an analogy from the drawing area when the three-dimensional body is represented in the form of three projections.)

For consideration and formalization of this example it is possible to enter some groups of basic functions, such as “Informativeness and redundancy” and “Completeness and accuracy”, providing complete perception and specification. Application of a multiple views can be result not only reduction of  volume of data, but also dimensionality reduction, including of the cognitive one.

To visualize execution traces of parallel and distributed programs we suggest using of the complex view including for example such elements as:

-  Call graph representation using Industrial Landscape or Molecule metaphors;

  •  Text of programs;
  •  Information Murals or Parallel Coordinates views to represent data of parallel program effectiveness;
  •  The possibility of "flight" over "software landscape" or between "atoms" of the molecule;  where route the "flight" is linked to the output of the program text;
  •  The possibility of changing the level of detail as 'metaphorical' and text output tracks by “lifting/lowering” during the flight (semantic zooming).

We need to develop visual supporting means for maintenance processes of software development, analyzing and debugging. Realization of system of visualization has to be carried out together with users, that is developers of the parallel and distributed computing software. It is necessary to consider their daily activities for debugging of correctness and efficiency of program complexes.


 

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

28567. Система открытого шифрования RSA, атаки на RSA 15.87 KB
  В настоящее время наиболее развитым методом криптографической защиты информации с известным ключом является RSA названный так по начальным буквам фамилий ее изобретателей Rivest Shamir и Adleman и представляющую собой криптосистему стойкость которой основана на сложности решения задачи разложения числа на простые сомножители. Чтобы использовать алгоритм RSA надо сначала сгенерировать открытый и секретный ключи выполнив следующие шаги: выберем два очень больших простых числа p и q; определим n как результат умножения p на q n = p Ч...
28568. Система электронной подписи Эль Гамаля (EGSA - ElGamal Signature Algorithm) 16.07 KB
  Затем выбирается секретное число х и вычисляется открытый ключ для проверки подписи y=gxmod p Далее для подписи сообщения М вычисляется его хэшфункция т = hM. Выбирается случайное целое k:1 k p1 взаимно простое с р1 и вычисляется r=gkmod p. После этого с помощью расширенного алгоритма Евклида решается относительно s уравнение m=xrksmodp1. Получатель подписанного сообщения вычисляет хэшфункцию сообщения m=hM и проверяет выполнение равенства yrrs=gxrgks=gxrks=gmmod p.
28569. Система открытого шифрования Эль Гамаля 58 KB
  Для шифрования сообщения M проводится следующая процедура: Выбирается случайное число k kP1=1 Вычисляется G=AK mod P Вычисляется H=yK M mod P Пара G H является шифрованным сообщением M При расшифровании вычисляется: H GX mod P = yK M AXK mod P = M mod P Преимуществами системы ЭЦП и ОШ Эль Гамаля является простота генерации открытых и секретных ключей а так же то что параметры P и A могут быть общими для всех участников сети связи.
28570. Общая схема электронной подписи на основе дискретной экспоненты 14.29 KB
  Пусть DATA пеpедаваемое Александpом Боpису сообщение. Александp подписывает DATA для Боpиса пpи пеpедаче: Eebnb{Edana{DATA}}. Боpис может читать это подписанное сообщение сначала пpи помощи закpытого ключа Eebnb Боpиса с целью получения Edana{DATA}= Edbnb{ Eebnb{ Edana {DATA}}} и затем откpытого ключа EeAnA Александpа для получения DATA= Eeana{ Edana {DATA}}. Таким обpазом у Боpиса появляется сообщение DATA посланное ему Александpом.
28571. Однонаправленные хеш-функции Понятие хеш-функции 13.67 KB
  Изменения в тексте сообщения приводят к изменению значения хешфункции. На бесключевые хешфункции накладываются определенные условия. однонаправленность устойчивость к коллизиям устойчивость к нахождению второго прообраза Применение ключевых хэшфункций Ключевые хешфункции применяются в случаях когда стороны имеют общий секретный ключ доверяют друг другу.
28572. Примеры хеш-функций 14.18 KB
  Расширение исходного сообщения Собственно хеширование . Расширение исходного битового сообщения M длины L происходит следующим образом. Алгоритм хеширования работает циклами за один цикл обрабатывается блок исходного сообщения длины 512 бит. Цикл состоит из четырех раундов каждый из которых вычисляет новые значения переменных A B C D на основании их предыдущего значения и значения 64битного отрезка хешируемого 512битного блока исходного сообщения.
28573. Примеры хеш-функций Классификация хеш-функций 13.05 KB
  На бесключевые хешфункции накладываются определенные условия. Предполагается что на вход подано сообщение состоящее из байт хеш которого нам предстоит вычислить. Эту операцию называют проверка хеша hashcheck.
28574. Примеры хеш-функций: применение хеш-функций в системах ЭЦП; хеш-функции с ключом 12.72 KB
  Чтобы избежать этого вместе с цифровой подписью используется хешфункция то есть вычисление подписи осуществляется не относительно самого документа а относительно его хеша. В этом случае в результате верификации можно получить только хеш исходного текста следовательно если используемая хешфункция криптографически стойкая то получить исходный текст будет вычислительно сложно а значит атака такого типа становится невозможной. Также существуют другие преимущества использования хешфункций вместе с ЭЦП: Вычислительная сложность.
28575. Примеры хеш-функций sha 12.54 KB
  Для входного сообщения длина которого меньше 264 бит алгоритм SHA1 выдаёт 160битовый результат. Предназначен SHA1 для использования вместе с алгоритмом цифровой подписи DSA. Цифровая подпись формируется на основе дайджеста SHA1 от сообщения что повышает эффективность процесса подписания.