Эффективность распараллеливания

6
Эффективность распараллеливания Оценки качества вычислительного алгоритма, системного ПО и аппаратуры Цель – оптимизация счета Критерии качества: Производительность / стоимость. Предельные случаи: Минимизация астрономического времени счета задачи - ТА Минимизация стоимости – суммарное платное процессорное время – ТР ТР = ТА * P где Р – число процессоров

description

Эффективность распараллеливания. Оценки качества вычислительного алгоритма, системного ПО и аппаратуры Цель – оптимизация счета Критерии качества: Производительность / стоимость. Предельные случаи: Минимизация астрономического времени счета задачи - ТА - PowerPoint PPT Presentation

Transcript of Эффективность распараллеливания

Page 1: Эффективность распараллеливания

Эффективность распараллеливания

Оценки качества вычислительного алгоритма, системного ПО и аппаратурыЦель – оптимизация счетаКритерии качества:Производительность / стоимость. Предельные случаи:Минимизация астрономического времени счета задачи - ТАМинимизация стоимости – суммарное платное процессорное время – ТРТР = ТА * P где Р – число процессоровТА не равно ТА1 / Р

Page 2: Эффективность распараллеливания

Коэффициент ускорения при распараллеливании

KP = (TA1 / TAP) / P или ТАР = ТА1 / (KP * P)Где:ТА1 – астрономическое время счета на одном процессореТАР - астрономическое время счета на Р процессорахР - число процессоров

Пример. 10 процессоров вместо одногопри КР = 1 время счета уменьшится в 10 раз, при КР = 0.5 только в 5 раз.

КР(Р) – зависит от Р

КР = (ТАР1 / TAР2) / (P2 / P1) – случай сравнения счета для Р1 и Р2 процессоров

Page 3: Эффективность распараллеливания

Результаты счета, оценка эффективности

Page 4: Эффективность распараллеливания

Факторы, влияющие на КР

Предполагается, что КР не зависит от номера шага.ТАШ = ТП + ТО гдеТАШ – астрономическое время одного шагаТП – чисто процессорное время без учета простоев ЦПТО – время простоя ЦП из-за обменов, не совмещенных со счетом. Совмещение?

Тогда КР = ТА1 / (ТАР * Р) = (ТП * Р) / ((ТП + ТО) * Р) = 1 / (1 + ТО/ТП)

Если использовать отношение времени обменов к времени процессорного счета: КО = ТО / ТП то

КР = 1/(1+КО)

Page 5: Эффективность распараллеливания

Вычисление зависимости КР от числа процессоровПодсчет ТП и ТО. Необходимо знать:Количество обрабатываемых чисел (размер сетки, размер матриц , …)Количество операций над одним числом в одном шаге.Эмпирические данные для типичной разностной схемы: 8-10 опер/шаг, не зависит от размера сеткиУмножения матриц. Предлагается самим посчитать для случая разбиения полностью заполненной матрицы на полосы и столбцы. Зависит от размера матрицы. Попытайтесь найти физическое объяснение разницы в числе операций и виде матриц для этих двух случаев.Скорость процессора.Скорость среды обмена (латентность, максимальную длину блока).

При фиксированном размере сетки уменьшая число процессоров, мы уменьшаем КО (влияние обменов), увеличиваем КР (эффективность использования процессоров – снижаем стоимость), увеличиваем общее астрономическое время счета (уменьшаем производительность). И наоборот.

Page 6: Эффективность распараллеливания

Задача на дом

Параллельное умножение матриц (полосы строк и столбцов)Вывести зависимость КР(Р) для:

Матрица - 10**4 на 10**4Скорость процессор+программа – 10**9 опер/секСкорость обмена – 10**6 чисел/сек плюс задержка на запуск обмена 10**-3 сек.Счет и обмены не совмещены.Р в диапазоне от 1 до 10**5