Программы Профилирования В Qnx Momentics



Общая информация QNX Momentics Профессиональная версия (PE) Основанный на платформе Eclipse, это полнофункциональный и высокоинтегрированный профессиональный комплект разработки, содержащий все необходимое для создания и оптимизации приложений для ОСРВ QNX Neutrino. Благодаря широкому набору удобных инструментов — от встроенных инструментов до удаленной диагностики — QNX Momentics PE обеспечивает единую гибкую программную среду для всего цикла разработки.

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

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

В этом руководстве мы шаг за шагом рассмотрим учебное многопоточное приложение.

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

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

Результатом является дополнительное удобство для пользователей в плане поиска ошибок и оптимизации кода, а также повышение скорости и большей предсказуемости самих систем.

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



Подготовка

Для работы с данным руководством вам понадобится:
  • QNX Momentics для компиляции приложения и выполнения самого профилирования (последняя версия, используемая в руководстве, — 6.5, но инструменты профилирования доступны и из более ранних версий)
  • Установлен QNX Neutrino для запуска скомпилированного приложения (в руководстве используется виртуальная машина).

    Рабочая станция VMware )

  • Среднее знание языка C++.



Профилирование

В QNX Momentics мы создадим новый проект QNX C++ на вкладке Сплошные варианты установить конфигурацию

Программы профилирования в QNX Momentics

Проект создан, теперь давайте скомпилируем приложение Проект-> Создать проект , при успешной компиляции мы увидим в окне консоли следующее

Программы профилирования в QNX Momentics

Давайте создадим C/C++ QNX QConn (ip) конфигурация для выполнения программы запустить-> запустить конфигурации

Программы профилирования в QNX Momentics

В поле Приложение C/C++ давайте выберем наш проект

Программы профилирования в QNX Momentics

В поле Целевые параметры запишите IP-адрес работающей ОС QNX Neutrino

Программы профилирования в QNX Momentics

Узнать IP-адрес можно, запустив терминал в операционной системе командой есликонфигурация , для мониторинга процессов в моментике нужно запустить целевой агент qconn

Программы профилирования в QNX Momentics

Перейдите на вкладку аргументы исполняемой программы, запустите программу с аргументами.

-n20 -t2 , n — количество итераций цикла синхронизации (передачи управления), t — количество потоков, между которыми осуществляется синхронизация

Программы профилирования в QNX Momentics

Теперь давайте создадим конфигурацию профилировщика:

Программы профилирования в QNX Momentics

Запустим созданную конфигурацию профайлера; пока он работает, запускаем нашу программу.

Откроем созданный журнал; для этого перейдите на вкладку QNX System Profiler и откройте журнал (файл с расширением kev) Общая информация:

Программы профилирования в QNX Momentics

Загрузка процессора:

Программы профилирования в QNX Momentics

Графическое представление взаимодействия процессов и потоков:

Программы профилирования в QNX Momentics

Давайте посмотрим поближе.

Давайте найдем наш процесс и рассмотрим его поближе.

Создание первого дочернего потока:

Программы профилирования в QNX Momentics

Цикл синхронизации:

Программы профилирования в QNX Momentics

Теперь перейдем на вкладку QNX Aplication Profiler.

Программы профилирования в QNX Momentics

здесь вы можете увидеть общее время выполнения отдельных функций и потоков.

Кроме того, если вы перейдете на вкладку «Информация о системе QNX», вы сможете увидеть состояние работающей операционной системы.

Запуск процессов:

Программы профилирования в QNX Momentics

Информация о выбранном процессе:

Программы профилирования в QNX Momentics

Информация о памяти:

Программы профилирования в QNX Momentics

Файловая система:

Программы профилирования в QNX Momentics

В этом руководстве мы не будем ничего оптимизировать; он был написан для демонстрации инструментов профилирования.



Литература

  • Анатомия параллелизма - Олег Цирюлик, Егор Горошко
  • Основы применения QNX Momentics - Сергей Зыль
Теги: #QNX Neutrino #qnx momentics #qnx #profiling #QNX Aplication Profiler #QNX System Profiler #программирование
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.