Производительность параллельных вычислительных систем Производительность и быстродействие Производительность (performan ce) - количество операций, выполняемых на данной вычислительной системе в единицу времени. Быстродействие (speed) – величина, обратная среднему времени выполнения одной операции. Единицы измерения производительности Производительность измеряется в миллионах команд в секунду MIPS (millions instructions per second) или миллионах операций с плавающей запятой в секунду MFLOPS (millions floating point operations per second). Масштабируемость и реконфигурируемость Масштабируемость вычислительной системы (scalability) способностьвычислительной системы к наращиванию и сокращению ресурсов (прежде всего, производительности и оперативной памяти) Реконфигурируемость вычислительной системы (programmability) – варьирование числа узлов и графа их связей, надежность и живучесть вычислительной системы (reliability and robustness) Асимптотическая производительность векторноконвейерных систем оценка производительности векторно-конвейерных систем основана на оценке производительности конвейеров операций Методика оценки производительности конвейеров операций Положим, что имеется l-ступенчатый конвейер операции сложения и пусть все ступени конвейера операций требуют одинакового времени выполнения Δt, при этом sΔt - фиксированное время запуска конвейера, lΔt - время "разгона" конвейера. Тогда для операции сложения векторов Х={x1, x2,…,xn} и Y={y1,y2,…,yn} потребуется время: Tконв = (s+l+n) Δt (1) При этом быстродействие конвейера будет (𝑟∞ )конв = 1 Δt (2) Асимптотическое быстродействие (𝑟∞ )конв Быстродействие конвейера приближается к асимптотическому быстродействию в случае, когда в формуле (1) можно пренебречь слагаемыми sΔt и lΔt. Эта ситуация имеет место когда длина обрабатываемых векторов n много больше величин s,l. При этом предполагается, что отсутствуют конфликты при обращении к памяти. Асимптотическое быстродействие конвейера операций достигается на векторах бесконечной длины. *Конвейерная обработка увеличивает производительность вычислительной системы в l раз Асимптотическая производительность векторнопараллельных и многопроцессорных систем Методика оценки производительности векторно-параллельных систем и MIMD-систем на примере операции сложения векторов Х={x1, x2,…,xn} и Y={y1,y2,…,yn} Время выполнения операции 𝑇|| = 𝑇𝑐𝑜𝑚 + 𝑇𝑐𝑎𝑙 , где 𝑇𝑐𝑜𝑚 = (𝑑 𝑇𝑐𝑎𝑙 = 𝑛 𝑁 𝑛 𝑁 𝑣) – время коммуникаций, 𝑟 – время вычислений; d - диаметр коммуникационной сети системы, 𝑛 𝑁 - ближайшее целое число, 𝑣 - производительность каналов межпроцессорного обмена [байт/сек], 𝑟 - время выполнения операции сложения двух чисел на одном процессоре системы [сек]. Максимальное быстродействие Если пренебречь коммуникационными расходами, то в качестве минимального времени выполнения операции сложения компонент xi, yi векторов Х, Y на N процессорах системы можно принять время 𝑇𝑐𝑎𝑙 𝑇𝑐𝑎𝑙 (𝑇𝑐𝑎𝑙 - время сложения всех n компонентов X,Y, а - минимальное 𝑛 𝑛 время сложения двух компонент этих векторов), то быстродействие можно выразить (𝑟∞ )конв = 1 𝑇𝑐𝑎𝑙 *Параллельное сложение векторов на векторно-параллельных и MIMD-системах увеличивает производительность максимум в N раз Длина полупроизводительности Определение Величина 𝑛1/2 – длина векторов, на которых достигается половина асимптотического быстродействия системы, называется длиной полупроизводительности. Асимптотическое быстродействие, главным образом, характеризует технологию изготовления ЭВМ, в то время как длина полупроизводительности представляет собой критерий степени параллелизма системы. Величина эффективности 𝑛1/2 𝜇= , 𝑛 n – средняя длина обрабатываемых векторов. Тогда 𝜇 ≈ 0 означает, что данный алгоритм может быть эффективно распараллелен для решения на данной вычислительной системе, 𝜇 ≈ 1 означает, что данный алгоритм не может быть эффективно распараллелен для решения на данной вычислительной системе Пример 𝒏𝟏/𝟐 ЭВМ ЭВМ 1 116 ЭВМ 2 7 Положим, что средняя длина обрабатываемых векторов n равна 100. Реальная производительность Производительность на тестах Классификация тесты Тесты производителей стандартные пользовательские Тесты производителей • предназначены, как правило, для сравнения однотипных компьютеров, относящихся к одному семейству Стандартные тесты • разработанные независимыми аналитиками и предназначенные для сравнения широкого спектра компьютеров Пользовательские тесты • учитывают специфику решаемых пользовательских задач.