49674 (Диалоговая оболочка отладчика MPI-программ), страница 2
Описание файла
Документ из архива "Диалоговая оболочка отладчика MPI-программ", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "49674"
Текст 2 страницы из документа "49674"
В понятие пользовательского интерфейса (ПИ) входит не только, способ визуализации данных (трехмерные, анимированные изображения), но и способы взаимодействия пользователя с системой. Дизайн имеет подчиненное положение, его главная цель – облегчить использование системы [11].
4.1 Создание интерфейса
При создании пользовательского интерфейса первой решается задача: создать способ общения пользователя с компьютером (программой). Первое, на что следует обратить внимание при разработке, это то, для кого создается интерфейс. Здесь необходимо отличать профессиональных пользователей, от непрофессиональных. Профессиональный пользователь располагает достаточным объемом времени и достаточно мотивирован, чтобы освоить сколь угодно сложный и противоестественный интерфейс, особенно, если нет аналогичного средства с более удобным интерфейсом.
Рассмотрим кратко этапы разработки пользовательского интерфейса.
На первом этапе необходимо разработать метафору (интерпретацию). Способы взаимодействия с системой и изображения на экране должны вызывать у пользователя аналогии с реальной ситуацией. Например, оконный интерфейс – интерпретация рабочего стола с документами. Использование метафоры позволяет легче воспринимать и интерпретировать изображение на экране. Аналогия с реальной ситуацией избавляет пользователя от необходимости пользоваться справочной документацией.
Следующий этап – концептуальный дизайн интерфейса. На этом этапе происходит разработка основных интерфейсных элементов, способы изображения элементов и их групп, а также общего изобразительного стиля.
Концептуальный дизайн интерфейса должен базироваться на идее интерфейсной среды. Здесь термин "среда" применяется как обозначение типичной для поведения человека в различных средах связки "сигнал-действие".
Эта идея принадлежит психологу Гибсону [10]. Он утверждает, что восприятие человека основано на мотивации. То есть внимание человека в конкретный момент будет обращено именно на те окружающие его предметы, в которых у него на данный момент существует потребность.
Понятия среды и понятие метафоры близко связаны. Правильно разработанная интерфейсная среда позволяет пользователю быстрее освоить работу с интерфейсом. Выбранная метафора может продиктовать все изобразительные решения дизайна интерфейса.
4.2 Современные подходы к созданию пользовательского интерфейса
Важный принцип построения дизайна интерфейса – баланс между интерактивными возможностями программы и сложностью ее изобразительного ряда.
Во всех центрах, известных разработкой новых интерфейсов (XEROX PARC, MIT Media Lab, Apple Computer, Carnegie Mellon University), разрабатываются концепции дизайна интерфейсов, использующие возможности анимации.
Две анимированные среды интерфейса разработаны в фирме XEROX PARC, в которой была разработана идея оконного интерфейса. Авторство идеи оконного интерфейса принадлежит Стюарду Карду. Обе модели разработаны для отображения файловой системы. Рассмотрим эти модели.
-
«Конические деревья». Система директорий отображается при помощи системы пирамид, с учетом иерархии. Файлы директории отображаются в виде трехмерного кольца под соответствующей пирамидой. Выбор файлов осуществляется «поворотом» кольца, идущим в режиме анимации.
-
«Стена в перспективе». Данная модель не учитывает иерархию файловой системы при ее отображении. Файлы и директории упорядочиваются согласно двум выбранным параметрам, например, частоте обращения к файлу и его размеру.
Достоинства анимационного интерфейса:
-
Анимация за счет увеличения времени перехода от одного изображения к другому, существенно сокращает время осознания нового изображения на экране.
-
Динамические визуальные сигналы – предоставление пользователю дополнительной информации о работе программы.
К функциональному и интерфейсному уровням программы добавляется новый – визуальный.
Использование трехмерной графики, распознавания речи, жестов, позволяет создавать принципиально новые пользовательские интерфейсы.
5. Диалоговая оболочка отладчика MPI-программ
5.1 Постановка задачи
Целью данной дипломной работы является создание диалоговой оболочки отладчика MPI-программ для DVM-системы.
Целью создаваемых средств отладки является помощь программисту в обнаружении ошибок, их локализации и объяснении. Все компоненты отладчика (трассировщик, анализатор трасс одного запуска, сравнительный анализатор трасс двух запусков или компаратор, визуализатор или диалоговая оболочка отладчика) должны вносить свой вклад в достижение этой цели. Визуализатор, например, не только должен отображать диагностики, возникающие в процессе анализа, но и должен обеспечивать удобные средства для оценки состояния выполнения параллельной программы, просмотра истории этого выполнения, исследования исходных текстов программы. При этом важно поддержать взаимосвязь этих четырех видов отображения (состояние выполнения, диагностики отладчика, история выполнения, исходные тексты), обеспечивая удобные и эффективные средства переключения между этими видами отображения, согласованное и одновременное размещение на экране их фрагментов.
При распределении функций между анализатором и визуализатором необходимо помнить о том, что анализатор работает на параллельной машине, а визуализатор – на рабочей станции. Поэтому вся необходимая работа с трассами большого объема, отражающими историю выполнения программы на многих процессорах, производится на параллельной машине, а для визуализатора готовятся диагностики ограниченного объема. В состав таких диагностик, кроме непосредственно диагностических сообщений об ошибках и сообщений - предупреждений, могут входить извлеченные из трасс копии некоторых событий, которые помогают локализовать и объяснить ошибку. Кроме того, в виде диагностик передается визуализатору и информация о состоянии выполнения программы. Конечно, визуализатору доступны все трассы в полном объеме, но читать их он должен только в том случае, когда программисту потребовалось посмотреть историю выполнения программы на некотором подмножестве процессоров.
Визуализатор предоставляет пользователю широкий спектр возможностей и инструментов для обнаружения и локализации ошибок в исходном тексте программы. Рассмотрим основной перечень возможностей визуализатора и его структуру.
5.2 Общая схема использования
MPI-отладчик DVM-системы состоит из следующих компонентов:
-
Трассировщик
-
Анализатор трасс (одного запуска или двух запусков)
-
Визуализатор, обеспечивающий графический интерфейс пользователя
Первые два компонента работают на параллельной машине, а визуализатор – на рабочей станции.
Запуск визуализатора осуществляется из командной строки
vismpi
5.3 Входная информация
На вход визуализатору в процессе работы подается следующая информация, представляемая в соответствующих файлах или посредством интерфейса с отладчиком:
-
Исходные тексты программы
-
Протокол анализатора
-
Трассы одного запуска программы
Интерфейс с отладчиком реализуется в виде набора функций доступа к данным и определяется в отдельном документе (описание функций и описание структур данных, поставляемых этими функциями).
Поскольку визуализатор работает не на параллельной машине, то его доступ к файлам с трассами может требовать заметное время. Поэтому это должно происходить не всегда, а только в случае, когда пользователь запрашивает просмотр данных из трасс.
5.4 Основные объекты визуализации
Визуализатор обеспечивает графическое и текстовое представление следующих основных объектов визуализации:
1. Итоговое состояние задачи.
2. Обнаруженные ошибки и предупреждения.
3. Результаты трассировки MPI-функций (трассы).
4. Тексты исходной программы.
Инструкция по текущей версии визуализатора приведена в документе “Инструкция для пользователя визуализатора отладчика MPI-программ VisMPI”.
5.5 Основные функции визуализатора
1. Представление в виде раскрывающихся окон основных объектов визуализации. Обеспечение возможностей управления окнами (размещение на экране; изменение размеров и масштаба; одновременное открытие группы окон при показе однотипных объектов, например, трасс для группы процессоров; одновременное закрытие группы окон или всех окон в конце работы).
Основные объекты визуализации представляются при помощи одного или нескольких основных окон и, возможно, дополнительных окон.
Основные окна:
окно итогового состояния задачи (Task state)
окно обобщенных ошибок (Error location)
окно конкретных ошибок и предупреждений (Errors list)
окно событий (Event line)
окно трасс (Trace control)
окно стека и исходных текстов(Text control)
Дополнительные окна:
окно топологии (Topology control)
диалоговые окна
задание топологии визуализации (matrix)
просмотр комментариев к ошибкам (Comments)
Окна предназначены для изображения объектов визуализации в графическом виде, с использованием простейших геометрических фигур, линий, цвета, специальных символов-пометок, либо в текстовом виде. Ошибочные ситуации при этом изображаются специальным образом – спецсимволами-пиктограммами, цветом (обычно оттенки красного). Обеспечивается представление полных текстовых сообщений об ошибках, и другой необходимой информации, облегчающей локализацию ошибок – параметров MPI-функций, событий трасс, привязки ошибок к строкам текста исходного программы.
Подробнее основные и дополнительные окна и способы работы с ними описаны ниже.
2. Обеспечение навигации внутри окон. Вертикальная и горизонтальная прокрутка, переходы по связанным событиям.
3. Обеспечение навигации между окнами. Навигация по связанным объектам из разных окон (например, ошибка –> событие в трассе, где она обнаружена –> строка текста программы, соответствующая событию в трассе). Циклическая навигация по взаимосвязанным объектам, относящимся к одной сложной ошибке (например, пара операций точка-точка с несовпадающими контрольными суммами передаваемых данных, последовательность deadlock-событий). Навигация по группе событий определенной пользователем (все или несколько ошибок одного типа, указанных пользователем типов). Возможность перехода к строке текста исходной программы всегда, когда оператор из этой строки связан с представленным событием (кроме интегральных характеристик, подобных общему числу ошибок).
4. Доступ (через интерфейс с отладчиком) к информации о состоянии задачи и процессов, к информации об ошибках, к трассам. Привязка к текстам исходной программы.
5. Изображение объектов визуализации в графическом виде (с использованием простейших геометрических фигур, линий, цвета, специальных символов-пометок), либо в текстовом виде. Выделение при этом специальным образом ошибочных ситуаций. Обеспечение полных текстовых сообщений об ошибках (и другой необходимой информации) в качестве обязательной дополнительной формы изображения (при наведении курсора на объект всплывает текст в качестве постоянного комментария к соответствующему событию).
5.6 Общая схема визуализации
После запуска программы открывается главное окно. Главное окно содержит меню, и панель инструментов. Кнопки на панели инструментов позволяют открыть трассу для чтения и закрыть программу. Меню содержит следующие пункты:
-
Меню файла (File)
-
Меню событий (Events)
-
Меню состояния задачи (Task state)
-
Меню справки (Help)
В меню файла можно открыть файл трассы для чтения и закрыть программу. Меню событий позволяет открыть окна трассы (Event line) и окно конкретных ошибок и предупреждений (Errors list). Через меню состояния задачи можно вызвать окно состояния задачи (Task state) и окно обобщенных ошибок (Error location).
5.7 Окно состояния задачи (Task state)
Основное окно Task state представляет в виде текстовой таблицы итоговое состояние задачи, определяемое итоговыми параметрами (Рис. 1):
- число завершенных процессов с неизвестным статусом (unknown status),