Добрый день!
Скажите, пожалуйста,планируется ли продолжение курсов по нанотехнологиям? Спасибо, Евгений
|
Методы оценки вычислительных характеристик задач предметной области и поддерживающих их аппаратных платформ
1.3. Методы и средства оценки производительности вычислительных систем на основе стандартных инструментальных платформ
С точки зрения пользователя оценку производительности вычислительной системы лучше всего выполнять с использованием реальных программ, планируемых для использования на ней. Наиболее объективной оценкой производительности вычислительной системы при этом будут временные характеристики их исполнения.
Учитывая это, разработчики инструментальных средств измерения производительности вычислительных систем стремятся смоделировать работу типичных пользовательских приложений.
Рассмотрим основные особенности работы наиболее распространенных на практике стандартных инструментальных платформ измерения производительности компьютеров.
Тесты SPEC
Важнейшей характеристикой вычислительных систем является производительность. Все разработчики компьютерной техники стремятся к установлению рекордов производительности, рассматривая их как инструмент в конкурентной борьбе. Этот инструмент работает только при условии легитимности полученных при тестировании результатов. Именно поэтому на паритетных началах ведущие производители создали несколько организаций, отвечающих за тестирование вычислительных систем.
Одной из таких организаций стала созданная в 1988 году корпорация SPEC (Standard Performance Evaluation Corporation) [263, 301].
Цель корпорации состоит в разработке и сопровождении стандартизованных тестовых программ, предназначенных для оценки производительности создаваемых высокопроизводительных вычислительных машин.
Для членства в SPEC достаточно подать заявку и оплатить вступительный взнос.
Основное направление деятельности SPEC - подготовка тестов для оценки производительности основных подсистем компьютеров, которые могут использоваться, как разработчиками, так и потребителями вычислительной техники. Вся информация о предлагаемых наборах тестов публикуется.
Чтобы воспользоваться тестами SPEC, необходимо приобрести соответствующую лицензию. Так как целью организации не является получение прибыли, стоимость лицензий покрывает только административные расходы.
Можно выделить два базовых набора тестов SPEC CINT95, CFP95. С их помощью оценивается производительность компьютера и эффективность работы компиляторов. Тесты построены так, чтобы накладные расходы на работу ОС и выполнение операций ввода/вывода были пренебрежимо малы. Тесты ориентированы на ОС UNIX. При этом предусмотрена возможность их импорта на системные платформы Microsoft и других производителей.
Появления третьего по хронологии комплекта тестов была обусловлена рядом причин:
- Необходимостью увеличения времени выполнения теста. Время выполнения версии теста 1992 года сократилось до секунд, в результате снижалась точность измерения временных характеристик.
- Необходимость увеличения объема кода теста. Тест 1992 года стал целиком размещаться в кэш памяти большого объема, что приводило к неадекватным оценкам производительности.
- Необходимость приведения в соответствие с расширившейся сферой приложений вычислительной техники задач, включенных в тест.
- Необходимостью совершенствования методов измерения времени.
- Необходимостью создания новых инструментальных средств
- Необходимостью стандартизации требований к компиляторам
В качестве метрик производительности выполнения операций целочисленной и вещественной арифметики используются:
- скорость выполнения теста с оптимизированным (SPECint95 и SPECfp_95) и не с оптимизированным (SPECint base_95 и SPECfp base_95) режимом компиляции;
- пропускная способность системы для многопроцессорных архитектур и многозадачных режимов работы, вычисляемая для оптимизированного (SPECint_rate95 и SPECfp_rate95) и не оптимизированного (SPECint_rate_base95 и SPECfp_rate_basefp95) режима работы.
Набор тестов CINT95
Тест CINT95 предназначен для оценки производительности процессора при работе с целыми числами. В него входят восемь программ для решения задач из следующих областей приложения: искусственный интеллект, моделирование, программирование, компрессия, интерпретация языков, обработка, Shell-интерпретатор, базы данных.
В качестве языка программирования используется Си.
Набор тестов CFP95
Тест CFP95 предназначен для оценки производительности процессора при работе с числами с плавающей точкой. В него входят десять программ для решения задач из следующих областей приложения: гидродинамика, предсказание погоды, квантовая физика, астрофизика, электромагнетизм, гидродинамика, моделирование, квантовая химия.
В качестве языка программирования используется ФОРТРАН.
SPECrate
Тесты SPECint95 и SPECfp95 позволяют адекватно оценивать производительность процессоров при их работе в однозадачном режиме.
Для многопроцессорных и многозадачных систем необходимо оценивать их пропускную способность, которая равна количеству заданий, выполняемых системой в единицу времени. Тесты SPECint95 и SPECfp95 для этого не предназначены.
Тест SPECrate был создан для оценки производительности многопроцессорных систем. Алгоритм тестирования достаточно прост. Одновременно запускается несколько одинаковых тестовых программ, в качестве которых используются наборы Сint95 и Сfp95. Результатом оценки является количество задач конкретного типа, выполненных за заданное время. Их среднегеометрическое значение отражает пропускную способность тестируемой системы.
Могут быть получены оценки SPECrate_int95, SPECrate_fp95, соответствующие целочисленным операциям и операциям с плавающей запятой. При тестировании измерения проводятся независимо по каждому тесту. Количество запускаемых копий теста зависит от архитектуры исследуемой системы. Измеряется время завершения последней копии тестовой программы.
Для исключения влияния на результаты тестирования работы компилятора используются оценки: SPECrate_base_int95 и SPECrate_base_fp95.
Результаты тестирования
В результате тестирования может быть получена детальная оценка производительности исследуемой вычислительной системы.
Возможны следующие варианты выполнения сравнительных оценок:
- в заданной предметной области по решению конкретных задач;
- комплексное сравнение с использованием итогового рейтинга, рассчитываемого как среднее геометрическое времен решения отдельных задач.
Тесты TPC
В 1988 году по инициативе Омни Шерлин (Omni Serlin) был создан Комитет по тестам производительности обработки транзакций (Transaction processing Performance Council, TPC).
Организации должна была объединить усилия производителей по разработке стандартных тестов, методик измерения производительности систем обработки транзакций и публикации результатов.
Все решения в TPC принимает Совет Полного Состава (Full Council), который состоит из представителей всех компаний, входящих в TPC. Контроль за работой администрации TPC осуществляет Управляющий Комитет (Steering Committee), который переизбирается раз в год.
Рабочими органами TPC являются постоянные и технические подкомитеты.
В 1989 году были предложены основные правила проведения испытаний и публикации результатов тестирования и разработан тест TPC-A
Эти правила действуют и в настоящее время. Для признания результатов официальными данными TPC необходимо выполнить ряд требований: полное соблюдения методики тестирования, результаты обязательно должны быть проверены аудитором TPC и опубликованы в открытом отчете.
TPC определяет и управляет форматом нескольких тестов для оценки производительности OLTP (On-Line Transaction Processing) [264,265,301].
Тест TPC-A
Тест TPC-A был первым тестом, предложенным TPC.
В его основе банковская операция помещения средств на депозит или их изъятие со счета.
Результат измерения показывает, сколько подобных операций может быть выполнено в единицу времени. Транзакция TPC-A включает достаточно много различных действий: пересылку информации, чтение и запись файлов, арифметические операции. Тест TPC-A позволяет оценивать быстродействие системы как в локальной, так и в глобальной сети.
Тест TPC-B
Отличие теста TPC-B от TPC-А состоит в том, что он моделирует обработку аналогичных операций под управлением средств системного администрирования. Эмуляции терминалов и линий связи не выполняется. По сути, TPC-B характеризует рафинированные возможности СУБД в условиях интенсивной нагрузки. При публикации результатов используются единицы tps-B. Фактически это пакетная версия TPC-А. В настоящее время TPC тесты TPC-B и TPC-А не поддерживает.
Тест ТСР-С
Тестовый пакет TPC-C по своей сути аналогичен тестам TPC-A и TPC-B. Хотя в нем также выполняется моделирование обработки транзакций, по сложности он существенно превосходит тесы А и В.
В нем моделируется достаточно сложная система, управляющая обработкой заказов.
Тест позволяет выполнить оценку основных компонент системы: терминалов, линий связи, центрального процессора, жестких дисков, баз данных.
В тесте моделируется работа оператора при вводе данных с клавиатуры.
В тесте предусмотрено выполнение следующих транзакций:
- введение нового заказа через сложную экранную форму;
- обновление базы данных, обусловленное платежом, 43%;
- обновление базы данных, обусловленное поставкой;
- получение справки о состоянии заказов, 4%;
- получение справки по учету товаров, 4%
Тест обеспечивает измерение скорости транзакций по новым заказам, остальные транзакции выполняются в это время в фоновом режиме.
В качестве модели БД теста используется модель БД оптового поставщика, содержащая следующие таблицы: товарные склады, район, покупатель, заказ, порядок заказов, новый заказ, статья счета, складские запасы и история.
Система может масштабироваться за счет изменения количества товарных складов.
Результаты тестирования:
- - пиковая скорость выполнения транзакций (максимальная пропускная способность системы (MQTh - Maximum Qualified Throghput);
- - нормализованная стоимость системы.
Стоимость представляет собой совокупную стоимость владения системой в течение пяти лет.
Этот тест является основным продуктом Transaction Processing Performance Council.
Организация постоянно стремится создавать тесты, которые отвечают потребностям бурно развивающегося рынка вычислительных систем. Было предпринято несколько попыток создания тестов для оценки производительности серверов (TPC-S), корпоративных систем (TPC-E), клиент-серверных архитектур TPC C/S. В основном они завершились неудачно.
ТестTPC-W
Тест предназначен для тестирования систем поддержки электронной коммерции.
Тесты TPC-W предназначены для оценки производительности систем при решении задач.
В тесте моделируются следующие нагрузки на систему:
- интенсивные соединения с клиентами;
- динамические Web-страницы;
- использование consistent Web-объектов;
- исполнение множества разнородных транзакций;
- OLTP-модель;
- сложная структура СУБД;
- целостность транзакций;
- конкурентный доступ к данным и изменение данных.
Тест поддерживает следующие профили взаимодействия с клиентами:
- покупки;
- просмотр;
- ввод заказов.
Тест ТPC-D, TPC-H, TPC-R
Эти тесты предназначены для оценки производительность коммерческих систем поддержки принятия решений.
В них моделируются сложные запросы к базе данных от большого числа пользователей. Данные и запросы соответствуют основным типам запросов в системах поддержки принятия решений, интенсивность запросов отражает усредненную по индустрии бизнес-активность.
Поддержка теста ТPC-D прекращена с 1999 года.
Тесты TPC-R аналогичны тестам TPC-H. Отличие состоит в том, что характер запросов в TPC-R известен, в TPC-H - нет. В связи с этим в тестах TPC-R разрешена оптимизация СУБД.
В тестах используется две метрики:
- производительность с указанием размера базы данных;
- цена/производительность с указанием размера базы данных.
Во всех тестах TPC предусматривается два вида оценок:
- производительность, выраженная в транзакциях в единицу времени (транзакций в секунду (tps) или транзакций в минуту (tpm));
- стоимость одной единицы производительности tps или tpm. Стоимость рассчитывается как отношение затрат на приобретение
системы и ее эксплуатацию в течение пяти лет к производительности.
Ни один тест TPC не может измерить производительность системы во всех возможных средах обработки транзакций. Тесты только помогают пользователю сравнить похожие системы.