
- •Довгий Павел Семенович Высокопроизводительные системы
- •Оценка производительности вычислительных систем
- •Пиковая и реальная производительность вс.
- •Опирается на число команд, выполняемых компьютером в единицу премени. Единицы измерения этой оценки, как правило, является mips (million instruction per second).
- •Классическими примерами тестов фирм производителей компьютеров можно считать:
- •Принцип построения и организиции кэш-памяти.
- •Концепция кэш памяти.
- •Принципы отображения блоков оп на блоки кэш памяти.
- •Стратегия замещения блоков в кэш память.
- •Основные принципы реализации стратегии lru.
- •Обобщение понятия кэШирования.
- •Страничная организация памяти.
- •Упрощенная схема преобразования линейного адреса в физический
- •Ускорение процесса преобразования линейного адреса в физический
Довгий Павел Семенович Высокопроизводительные системы
Источники: 3,4,5,(1), WWW: 1.
Оценка производительности вычислительных систем
Производительность: В общем плане под производительностью какой-либо системы принято понимать количество работы выполняемой системой за единицу времени. Применительно к вычислительным системам в качестве единицы работы, использованной для оценки призводительности может иметь место: команда, операция, процедура, задача (программа ее представляющая), набор задач (программ). Существует большое разнообразие подходов, методов и средств к оценке производительности компьютеров и вычислителных систем (далее ВС). Одним из подходов к оценки производительности компьютеров и ВС является разделение производительности на 3 уровня: номинальная, комплексная, системная (нужно более глубоко).
Пиковая и реальная производительность вс.
Пиковая: или техническая производительности представляет собой теоретический максимум быстродействия компьютера или ВС при идеальных условиях, обеспечивает загрузку всех устройств. Предельное быстродействие достигается при обработке бесконечной последовательности не связанных между собой и не конфликтующих при доступе в память команд. Формально это означает, что операнд последней команды не может являться результатом предыдущей команды (отсутствие зависимости команд программы по данным).
Применительно к современным компьютерам предполагается, что операнды и команды выбираются из внутрикристальной КЭШ памяти. Подобная ситуация является чисто гипотетической и на практике не одна ВС не в состоянии работать сколь нибудь длительное время с пиковой производительностью хотя в некоторых условиях реальная производительность ВС может достаточно близко приближаться к пиковой.
Пример: Тест LINPACK, тесты линейных алгебраических уравнений. При больших размерах обработки матриц 1000х1000 почти все современные компьютеры демонстрируют производительность 0,8 – 0,95 от пикового значения.
Традиционно используются 2 способа оценки пиковой производительности:
-
Опирается на число команд, выполняемых компьютером в единицу премени. Единицы измерения этой оценки, как правило, является mips (million instruction per second).
В простейшем случае для оценки пиковой производительности в MIPS нужно знать только тактовую частоту процессора. (Величина ей обработанная и будет производительностью)
Пример частота 1 Гц -> 1000 MIPS.
При этом предполагается, что за один машинный такт выполняется одна машинная команда. Это оказывается справедливо только применительно к RISC процессорам, но не к CISC.
RISC – Reduced instruction set computer.
CISC – Complex / Complete instruction set computer
По статистики для RISC процессоров среднее длительность выполнения команд составляет 1,2 – 1,6 машинных тактов. Использование нескольких конвееров команд в процессоре увеличивается в соответствующее количество раз оценку пиковой производительности в MIPS. Аналогичный эффект увеличения пиковой производительности имеет место при использовании нескольких процессоров в рамках одной многопроцессорной системы. Оценка производительности в MIPS, дает лишь общее представление о возможностях компьютера и ВС и имеет существенные недостатки:
1) Сложность сравнения компьютеров с различными системами команд по этому показателю (в особенности если один RISC, а другой CISC).
2) Парадоксальность нескольких оценок применительно к реальной производительности.
Классическим примером является сравнение реальной производительности компьютеров с математическим сопроцессором и без него (команды MSP выполняются в режиме эмуляции центрального процессора плавающая арифметика с помощью целочисленной). Очевидно, что реальная производительность с MSP выше т.к. аппаратная реализация над числами с плавающей точкой, дает существенный выигрыш во времени их выполнения по сравнению с прграммной эмуляцией; однако показатель MIPS для компьютера без MSP будет очевидно выше т.к. каждая длительная по времени арифметическая, а тем более трансцендентная команда (FCOS, FLN) над числами с плавающей точкой, будет реализовано множеством более быстрых команд целочисленной арифметики.
-
Другой оценкой пиковой производительности компьютеров и ВС является число операций над числами с плавающей точкой, выполняемых компьютером или ВС за единицу времени. Основной единицей измерения оценки является MFLOPS (million floating point operation per second). Производительными оценками является GFLOPS, TFLOPS.
---------11.09.03------------------------------------------------------------------------------------------------------------
Оценка производительности в MFLOPS используется в отношении компьютеров, ориентированных на решение сложных вычислительных задач ( в частности суперкомпьютеров) и вследствии этого имеет достаточно ограниченную область применения. Наиболее часто MFLOPS используется при контрольных испытаниях на тестовых пакетах типа лаварморские циклы LINPACK .
Основные недостатки оценки пиковой производительности в MFLOPS принято считать:
-
Несовместимость наборов операций с плавающей точкой на различных компьютерах (*пример* в суперкомпьютере CRAY отсутствует операция деление, деление реализуется с помощью умножения на обратную величину). В системе команд есть команда вычисления обратной величины. Другим примером является наличие различных транцендентных команд в блоках FPU современных микропроцессоров. В большинстве компьютеров типа MainFrame подобные команды отсутствуют.
-
Различная длительность выполнения разнообразных команд обработки данных с плавающей точной. Решение этой проблемы нашли авторы лаварморских циклов в виде приведения к нормализованным операциям. В лаварморских циклах операциям с плавающей точнкой присвоены весовые коэффициенты, определяющих их относительную сложность и длительность выполнения («1» сложение, вычитание, сравнение, умножение; «4» деление вычисление квадратного корня; «8» вычисление экспоненты, синуса и т.д.)
При выполнении реальных прикладных программ эффективная (реальная) производительность компьютеров и ВС может весьма существенно отличаться от пиковой (до нескольких раз) т.к. условия выполнения реальных программ далеки от идеальных, при которых определяется пиковая производительность. Для оценки реальной производительности в мировой практике наибольшее распространение получило использование наборов задач характерных для той или иной области применения компьютеров и ВС. Эти задачи могут быть специально созданными для оценки производительности и содержать смеси команд с заданным представительством команд каждого типа, либо это могут быть фрагменты реальных задач (программ) или сами реальные задачи (программы). Время выполнения каждой их задач набора составляет основу для расчета так называемого индекса призводительности исследуемой ВС. Индекс производительности является относительной оценкой, несущей информацию о том, на сколько быстрее или медленнее исследуемая ЭВМ или ВС выполняет некоторые задачи, по сравнению с выбранной, широкое распросраненной моделью, которая выбирается базовой (эталонной).
Если при этом известна производительность эталонной ЭВМ в некоторых абсолютных единицах (MIPS, MFLOPS), то не сложно от индексов производительности перейти к абсолютным значениям. Классическим примером смеси команд использовавшихся для оценки производительности компьютеров и ВС в 60-70 годах может служить смесь Гибсона, для научно-технических задач, и смесь GPO для планово-экономических (коммерческих) задач.
Пример смеси Гибсона |
|
Вид команд (операций) |
Весовой коэффициент |
+ и – с фиксированной запятой |
33 |
* с фиксированной запятой |
0,6 |
Деление с фиксированной запятой |
0,2 |
+ и – с плавающей точкой |
7,3 |
* с плавающей точкой |
4,0 |
Деление с плавающей точкой |
1,6 |
Логические операции |
1,7 |
Безусловные передачи управления |
17,5 |
Условные передачи управления |
6,5 |
Весовой коэффициент отражает относительную частоту появления команд соответствующего типа в программах, реализующих задачи научно-технического профиля. С учетом весовых коэффициентов Кi комонд i – ого типа и длительности их выполнения i производительности компьютера Р определяется в виде:
Дальнейшее развитие этого подхода к оценки производительности ЭВМ стало использовании смеси алгоритмических действий вместо смеси команд, что дало возможность сопоставить значения производительности ЭВМ с различными системами команд. В СССР был выпущен соответствующий стандарт ГОСТ 16325-88 определяющий методику производителности и оговаривающий стардарт смеси – набор алгорифмический действий и их весовые коэффициенты как для научно-технических так и для экономических расчетов.
В настоящее время тестовые наборы, используемые для оценки производительности компьютеров и ВС можно разделить на 3 группы:
-
Тесты производителей разработанные компаниями, изготавителями компьютеров для внутреннего применения (оценивание качества собственных компьютеров)
-
Стандартные тексты, разработанные для сравнени широгоко спектра компьютеров и ВС. Часто претендуют на роль полностью универсальных средств измерения производительности. В основе таких амбиций лежит то, что тесты этой группы являются продуктом деятельности известных аналитиков (*пример* Джек Донгарра –LINPACK) или групп объединенных крепнейшим производителем компьютеров (SPEC – Standart Performance Evaluation Corp…; TPC – Transaction Pracessing Perfomance Cou…) что практически исключает возможность ориентации стандартного теста на конкретного поставщика компьютеров.
-
Состоит из пользовательских тестов учитывающих специфику конкретного применения компьютера и ВС. Пользовательские тесты создаются крупными компаниями специализирующихся на внедрении компьютерных технологий или совмесными усилиями групп пользователей, объединенные … Эти средства предназначены специально для выбора персонального компьютера и программного обеспечения наиболее подходящий под определенные прикладные задачи. В принципе такой подход позволяет получить наиболее точные оценки производительности для конкретного класса приложений хотя и сопряжен со значительными усилиями пользователей по созданию тестовых программ и испытанию компьютера.
---------18,09,03------------------------------------------------------------------------------------------------------------