IBM®
Перейти к тексту
    в России и странах СНГ [изменить]    Условия использования
 
 
   
    Главная страница    Продукты    Услуги и решения    Поддержка и загрузка    Мой профиль    
Перейти к тексту

developerWorks Россия  >  Linux  >

Утилиты Cell/B.E. SDK 3.0: Часть 1. Использование средств измерения производительности

Изучаем практический пример использования средств измерения производительности, входящих в состав SDK 3.0

developerWorks
Страница 1 из 9 На предыдущую страницу

Опции документа

Обсудить


Выскажите мнение об этом учебном пособии

Помогите нам улучшить содержание


Уровень сложности: простой

Гед Хейбер, ведущий разработчик, IBM

23.06.2009

Это вводное учебное пособие служит дополнением к инструментарию разработки программного обеспечения (SDK) для процессора Cell/B.E. (IBM SDK for Multicore Acceleration, Version 3.0; другое название – Cell Broadband Engine SDK). В нем рассказано о пяти средствах измерения производительности, входящих в состав SDK 3.0: OProfile, Cell Performance Counter, Performance Debugging Tool, PDT Trace Reader и FDPR-Pro. Также будет рассмотрен инструмент Visual Performance Analyzer, поставляемый отдельно.

Предисловие

Узнайте, что вы можете ожидать от данного учебного пособия и как извлечь из него максимальную пользу.

Об этой серии руководств

Данное руководство знакомит со средствами измерения производительности, входящими в состав IBM SDK for Multicore Acceleration 3.0 (Cell/B.E. SDK 3.0), и объясняет, как ими пользоваться:

  • OProfile for Cell – это программа для профилирования кода системного уровня для ОС Linux® на процессоре Cell/B.E., способная профилировать весь запущенный код с минимальными издержками. OProfile входит в состав Cell Broadband Engine SDK. OProfile состоит из драйвера ядра, демона для сбора данных тестирования и нескольких утилит для обработки данных профилирования и извлечения из них полезной информации. OProfile осуществляет профилирование большого набора параметров, используя аппаратные счетчики производительности процессора. Результаты его работы также могут быть использованы для получения базовой информации о затратах процессорного времени. Профилировать можно любой код: обработчики аппаратных и программных прерываний, модули ядра, ядро, совместно используемые библиотеки и приложения. OProfile поставляется в составе SDK.
  • Утилита Cell Performance Counter (также известная как cell-perf-counter tool и CPC) применяется для настройки и использования аппаратных счетчиков производительности процессора Cell/B.E. Эти счетчики позволяют отслеживать, сколько раз произошли те или иные аппаратные события, что полезно при анализе производительности программного обеспечения, работающего в системе на процессоре Cell/B.E. Доступны аппаратные события из всех логических модулей процессора Cell/B.E., включая PPE, SPE, интерфейсную шину, а также контроллеры памяти и устройства ввода-вывода. Для подсчета этих событий в модуле мониторинга производительности (performance monitoring unit, PMU) доступны четыре 32-разрядных счетчика, которые также могут быть настроены как пары 16-разрядных счетчиков. Кроме того, CPC использует возможности аппаратного сбора статистики PMU Cell/B.E. Эта функция позволяет оборудованию собирать очень точные данные счетчиков через определенные отрезки времени. Собранные данные можно использовать для мониторинга изменений производительности системы на основе процессора Cell/B.E. на протяжении длительного отрезка времени. CPC поддерживает различные форматы вывода данных счетчиков: текстовый вывод в сеансе терминала; формат HTML для просмотра в браузере; формат XML для использования в диагностических средствах высокого уровня, таких как Visual Performance Analyzer. CPC поставляется в составе SDK.
  • Утилита Performance Debugging Tool (PDT) выполняет трассировку для записи важных событий во время выполнения программы и определения логического порядка событий. Главной задачей PDT является обеспечение возможности отслеживать необходимые события в режиме реального времени и записывать соответствующие данные из блоков SPE и PPE. Эта задача выполняется при помощи кода, реализующего ключевые функции регистрации событий в блоках SPE и PPE и собирающего записи трассировки. Эта деятельность требует дополнительного взаимодействия между блоками SPE и PPE, поскольку записи трассировки хранятся в памяти PPE. Трассировка 16 блоков SPE, использующих один центральный блок PPE, может привести к сильной загрузке последнего и, следовательно, повлиять на производительность приложения. PDT разработан для уменьшения нагрузки при трассировке и позволяет ограничивать нагрузку от трассировочной активности на PPE и все SPE. Кроме того, размер кода трассировки для SPE минимизирован так, чтобы он помещался в небольшую локальную память SPE. После включения трассировки данные можно собирать для любого запущенного приложения. Трассировка функционирует на уровне приложений (область пользователя). После включения приложения в список наблюдения данные трассировки собираются при каждом запуске данного приложения. PDT поставляется в составе SDK.
  • PDT Trace Reader (PDTR) – это утилита командной строки, считывающая и отображающая данные трассировки PDT и создающая различные сводные отчеты для указанных событий трассировки. PDTR поставляется в составе SDK.
  • FDPR-Pro for Cell/B.E. – это утилита настройки производительности, предназначенная для уменьшения времени выполнения и объема реальной памяти, используемой прикладными программами пространства пользователя. Она оптимизирует исполняемый образ программы, собирая информацию о работе программы под рабочей нагрузкой. Затем она создает новую версию этой программы, оптимизированную для такой нагрузки. FDPR-Pro for Cell/B.E. поставляется в составе SDK.
  • Visual Performance Analyzer (VPA) – это набор утилит для наглядного представления данных производительности на основе Eclipse, состоящий из шести основных компонентов:
    • Profile Analyzer включает богатый набор графических и текстовых представлений, позволяющих пользователям локализовать проблемы производительности вплоть до отдельного процесса, потока, модуля, символа, смещения, инструкции или строки кода.
    • Code Analyzer отображает подробную информацию об основных блоках, функциях и ассемблерных инструкциях исполняемых файлов и динамических библиотек (DLL).
    • Pipeline Analyzer отображает работу конвейеров (для систем на основе POWER®).
    • Counter Analyzer анализирует данные аппаратных счетчиков производительности множества платформ IBM Systems (ранее IBM eServer™).
    • Trace Analyzer визуализирует информацию трассировок Cell/B.E., такую как: подключения DMA, блокировки и разблокировки, почтовые сообщения и т.д.
    • Control Flow Analyzer считывает вызовы файлов данных трассировки.


В начало


Предварительные условия

Хотя это руководство начального уровня, при чтении будет полезен предыдущий опыт работы с Cell/B.E. SDK 3.0.



В начало


Системные требования

SDK 3.0 предъявляет к аппаратному и программному обеспечению ряд требований.

Оборудование

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


Таблица 1. Аппаратные требования
СистемаРекомендуемая минимальная конфигурация
x86 или x86-64Процессор Pentium® 4 с тактовой частотой 2 ГГц
PowerPC® 64-разрядный процессор PowerPC (PPC) с тактовой частотой 1,42 ГГц 32-разрядные платформы PPC не поддерживаются
BladeCenter® QS20Версия 31 или выше и встроенное микропрограммное обеспечение версии QA-06.14.0-0F (7.21) или более новое
BladeCenter QS21Встроенное микропрограммное обеспечение версии QB-01.08.0-00 или более новое

Все компьютеры должны иметь:

  • Не менее 5 ГБ свободного места на диске для установки исходного пакета и дополнительных средств разработки.
  • Не менее 1 ГБ ОЗУ на хост-системе.

Примечание: при использовании имитатора Full System Simulator минимальный объем установленной оперативной памяти должен вдвое превосходить объем имитируемой памяти. Например, для имитации системы с оперативной памятью объемом 512 МБ в хост-системе должно быть установлено не менее 1 ГБ оперативной памяти.

Программное обеспечение

SDK 3.0 требует наличия операционной системы Fedora 7, которая должна быть установлена до установки SDK.

SELinux: файлы политик SELinux, включенные в базовый дистрибутив Fedora 7, препятствуют правильному запуску spufs при загрузке. Для установки SDK необходимо либо отключить SELinux, либо обновить пакеты RPM selinux-policy и selinux-policy-targeted до последней версии. Рекомендуется использовать обновление пакетов. Для обновления введите от имени суперпользователя root команду yum update selinux-policy selinux-policy-targeted.

Expat: для работы демона DaCS for Hybrid-x86 на платформах X86_64 и BladeCenter QS20/QS21 требуется библиотека обработки XML expat. Для установки expat введите от имени суперпользователя root команду yum install expat.

Зависимости пакета SDK: для SDK необходимы пакеты rsync, sed, TCL и wget. Для установки необходимых пакетов введите от имени суперпользователя root команду yum install rsync sed tcl wget.



В начало



Страница 1 из 9 На предыдущую страницу
    IBM в России Конфиденциальность Контакты