- •Введение
- •1 Параллельные и распределенные вычислительной системы
- •1.1 Понятие параллельной и распределенной вычислительной системы
- •1.2 Архитектура параллельной и распределенной вычислительной системы
- •1.3 Программное обеспечение для различных высокопроизводительных систем
- •1.4 Языки высокопроизводительных вычислений
- •1.5 Интегрированная среда разработки многопоточных приложений
- •2.1 Общие сведения об Oracle Solaris Studio ide
- •2.2 Профилировщик Performance Analyzer.
- •2.3 Профилирование приложений в Oracle Solaris Studio.
- •Заключение
- •Список используемых источников
- •Приложение а
- •Приложение б
1.5 Интегрированная среда разработки многопоточных приложений
Интегрированная среда разработки, ИСР (англ. IDE, Integrated Development Environment или Integrated Debugging Environment) – система программных средств, используемая программистами для разработки программного обеспечения. [9]
ИСР обычно включает в себя:
текстовый редактор;
компилятор и/или интерпретатор;
средства автоматизации сборки;
отладчик.
Интегрированные среды разработки были созданы для того, чтобы максимизировать производительность программиста благодаря тесно связанным компонентам с простыми пользовательскими интерфейсами. Это позволит разработчику делать меньше действий для переключения различных режимов, в отличие от дискретных программ разработки. [9]
Одна из наиболее важных частей ИСР – отладчик, который представляет собой модуль среды разработки или отдельное приложение, предназначенное для поиска ошибок в программе. Отладчик позволяет выполнять пошаговую трассировку, отслеживать, устанавливать или изменять значения переменных в процессе выполнения программы, устанавливать и удалять контрольные точки или условия остановки и т. д.
Известные отладчики:
GNU Debugger — переносимый отладчик уровня исходного кода и дизассемблер из системы программирования GNU, работающий со многими языками программирования, операционными системами и системными архитектурами;
DBX — стандартный отладчик уровня исходного кода для языков C, C++, Fortran и Java, доступный для операционных систем Solaris, AIX, IRIX, Tru64 UNIX, GNU/Linux и BSD. Основные функции:
Поддержка отладки приложений OpenMP;
Поиск утечек памяти;
Отслеживание некорректного обращения к памяти;
Исправление кода «на лету»;
Microsoft Visual Studio Debugger — отладчик, входящий в состав всех версий Microsoft Visual Studio.
Для разработки многопоточных и распределенных приложений в ИСР должны содержаться различные библиотеки параллельного и распределенного программирования, а также использоваться инструменты анализа и профилирования разрабатываемых приложений. С помощью такого рода инструментов можно отследить типичные ошибки, возникающие при многопоточном и распределенном программирование (например, состояние гонки, дедлоки или утечки памяти), выявить “узкие места” производительности. Наличие такого рода инструментов в ИСР помогает программисту многопоточных и распределенных приложений быстро найти и исправить ошибки.
2 Oracle Solaris Studio IDE
2.1 Общие сведения об Oracle Solaris Studio ide
Oracle Solaris Studio IDE (OSS) – интегрированная среда разработки программ для языков программирования Си, C++ и Фортран, разработанная компанией Sun Microsystems. В OSS включены средства отладки, профилирования и анализа многопоточных и распределенных приложений.
Ранее OSS называлась Sun Workshop, Forte Developer, Sun Studio и была доступна только на платформе Sun Solaris [5]. Сейчас OSS доступна для операционных систем: Red Hat Linux, Oracle Linux и Oracle Solaris.
Начиная с версии 11, выпущенной в 2005 году, компания Sun Microsystems стала предоставлять разработчикам, зарегистрировавшимся на сайте в Sun Developer Community, возможность бесплатно скачать Sun Studio для Solaris, который раньше продавался только за отдельную плату. С 2010 года, в результате перехода активов Sun Microsystems в Oracle, среда доступна бесплатно с правом дальнейшего бесплатного распространения по специализированной лицензии. На сегодняшний день актуальной версией OSS является 12.5. [5]
На рисунке 3 представлено главное окно OSS.
Рисунок 3.
Компоненты Oracle Solaris Studio [6]:
Графическая среда разработки, базирующаяся на NetBeans;
Набор компиляторов:
Компиляторы C/C++ с набором возможностей, которые делают их совместимыми с GNU GCC;
Компилятор языка Fortran совместим со спецификациями популярных реализаций Fortran77, Fortran90 и Fortran95;
Отладчик dbx, интегрированный со средой разработки;
Sun Performance Library - набор высокопроизводительных математических библиотек;
Инструмент для распределенной или параллельной сборки приложений dmake;
Встроенные инструменты профилирования.
Профилировщик Oracle Studio Performance Analyzer - продукт для выявления "узких мест" как в производительности программ, так и при взаимодействии с операционной системой. Кроме поддержки заявленных для Solaris Studio языков C/C++ и Fortran, этот анализатор также поддерживает Java-программы. Представлена как отдельная программа;
Thread Analyzer - локализует типичные ошибки, возникающие при многопоточном программировании, входит в состав Performance Analyzer;
В среде OSS поддерживается библиотека Pthread и технология OpenMP 4.0 для многопоточного программирования с разделяемыми переменными. Для обмена сообщениями между процессами при распределенном программирование поддерживается библиотека MPI [7].
