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

Рэй Джейн

Перевод с английского: Соловей О.О.


Источник:Wiley Computer Publishing, John Wiley & Sons, Inc.

Глава5.Искусство выбора нагрузки

Нагрузка является наиболее важной частью оценки эффективности любого проекта. Если нагрузка неправильно выбрана, это может привести к неверным результатам. Когда результаты исследования оказываются неприемлемыми, неадекватность нагрузки обычно используется как критика исследования. Как и другие аспекты оценки эффективности, правильный выбор рабочих нагрузок требуется много решений и суждений аналитика, чей опыт является частью искусства оценки эффективности. В этой главе описан ряд решений, которые помогут вам сделать правильный выбор и обосновать его.

Четыре основные решения при выборе рабочей нагрузки услуг осуществляется с учетом объема работы, уровня детализации, представительности и своевременности. Эти вопросы обсуждаются в следующих четырех разделах. Другие незначительные решения, такие как загрузка уровня, воздействие других компонентов, и повторяемость, были объединены в раздел 5.5.

Лучший способ начать выбор нагрузки это просмотр системы в качестве поставщика услуг. Как уже говорилось в первой части, каждая система предоставляет ряд услуг, а также составление списка услуг является одним из первых шагов в систематическое исследование с целью оценки производительности. Часто термин System Under Test (SUT) используется для обозначения полного набора компонентов, которые приобрела или разработала организация. Иногда есть один конкретный компонент в SUT, альтернатива которого рассматривается. Этот компонент называется Предисследуемый компонент (ПИС), как показано на рисунке 5.1. Например, проектной группе центрального процессора (CPU), может потребоваться, понимание влияния различных организаций арифметико-логическое устройство (АЛУ). В этом случае процессор SUT и ALU является CUS. Кроме того, банк покупая системы обработки транзакций может сравнить различные дисковые устройства. В этом случае, система обработки транзакции SUT и дисковые устройства CUS. Ясно, что определение SUT и CUS важно, так как нагрузка, а также показатели эффективности определяются в основном по SUT. Смешение CUS с SUT и наоборот распространенная ошибка, которая приводит к неверным результатам. В оставшейся части этой главы, слово система будет использоваться для обозначения SUT и слово компонент будет использоваться для обозначения CUS.

Выбранные метрики должны отражать эффективность услуг, предоставляемых на уровне системы, а не на уровне компонентов. Например, MIPS является оправданной метрикой для сравнения двух процессоров, но она не подходит для сравнения двух систем с разделением по времени. Процессор является лишь одним из компонентов системы разделения по времени. Система разделения по времени может предоставить такие услуги, как обработка транзакций, и в этом случае производительность будет измеряться по операциям (в отличие от команд) в секунду.

Основой для выбора нагрузки также является система, а не компонент. Например, услуги, предоставляемые процессорами – это так называемые команды, и разраотчики процессоров могут использовать команды частоты в качестве возможного представления нагрузки. Услуги, предоставляемые «под ключ» банковских систем, как правило, называется" транзакции ", и поэтому банк может использовать транзакции частоты как рабочую нагрузку.

Обратите внимание, что использование транзакций частот для указания объема работы банковской системы не подходит, так как эффективность банковской системы зависит от нескольких составляющих в дополнение к этому процессору. Аналогично, используя операции сравнения двух процессоров может или не может быть целесообразным, так как производительность могут быть затронута другими компонентами, такие как устройства ввода / вывода. Однако, если производитель предлагает две банковские системы, которые являются идентичными, за исключением процессоров, две системы могут быть сравнены с использованием тарнзакций частоты как рабочей нагрузки. Последнее исследование иногда неправильно называют сравнением двух процессоров.

Рисунок 5.1 SUT и CUT.

Если система предоставляет множество услуг, рабочая нагрузка должна осуществлять полный набор услуг насколько это возможно. Таким образом, нецелесообразно измерять производительности ALU, которое обеспечивает как плавающую и целочисленную арифметики, пользуясь только целочисленную нагрузки. В этом случае, нагрузка не осуществляет все основные услуги, предоставляемые системой. При рассмотрении услуг осуществляется, а также принимают во внимание цели исследования. нагрузка может осуществлять наиболее эффективные особенности системы или наименее эффективно. Например, графический редактор не может быть эффективным текстовым редактором. Таким образом, для редактирования текста нагрузка, используемая для сравнения двух редакторов может быть одной из худших в графическом редакторе, и наоборот. Нагрузка в виде редактирования текста не подходит, если целью исследования является поиск редактора, который будут использоваться в основном для работы с графикой.

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

Типы рабочих нагрузок обсуждаются в главе 4, в которой показано применение принципа, изложенного здесь. Рисунок 5.2 показывает иерархическое представление системы разделения по времени. Типичный запрос высокого уровня у пользователя, например, обналичивание банковского счета. Прикладное программное обеспечение может перевести транзакцию в число запросов в операционной системе. Эти запросы, в свою очередь делают количество запросов для исполнения различных аппаратных компонентов системы, которые могут включать в себя ряд специализированных процессоров, процессоров общих целей, устройств ввода / вывода и сетевых соединений. Запросы процессор могут быть переведены в число команд, каждая из которых может сделать одинили несколько запросов на ALU. Таким образом, как показано на рисунке 5.2, существует иерархия интерфейсов обслуживания запросов. Один запрос на более высоком уровне может привести к одному или нескольким запросам на нижнем уровне. На рисунке показан уровень интерфейсов:
1. Арифметико-логическое устройство
2. Центральный процессор
3. Операционная система
4. Приложения
Нагрузки могут быть описаны суммарными запросами на любом из этих уровней раздела интерфейсов, в зависимости от того, что представляет собой SUT. Если сравниваются два ALU,т.е., АЛУ представляют собой системы, арифметические команды составляют услуги или запросы. Соответствующая рабочая нагрузка в этом случае выбирается с определением частоты различных арифметических команд или указанием наиболее частых арифметических команд, которыми вполне могут быть операции сложения.

Рисунок 5.2 иерархическое представление систем разделения по времени.

Если сравниваются два процессора, набор команд процессоров составляет список предоставляемых услуг. Одним из возможных вариантов в этом случае является использование смешанных инструкций .Однако, если выполнение одной команды зависит от результата предыдущей команды, нагрузки должны быть указаны как набор команд, которые обычно используются вместе. Рассматриваемые популярные ядра в разделе 4.6 примеры таких наборов.

Если две системы сравниваются на уровне операционной системы, услуги, предоставляемые операционными системами, в том числе команды операционной системы и системы услуг, должны лежать в основе рабочей нагрузки. В этом случае, могут быть использованы синтетические программы, обсуждаемые в разделе 4.4.