Метрика Карпа – Флатта
![]() | Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( Март 2020 г. ) |
Метрика Карпа-Флатта является мерой распараллеливания кода в параллельных процессорных системах. Эта метрика существует в дополнение к закону Амдала и закону Густавсона и служит показателем степени распараллеливания конкретного компьютерного кода. Он был предложен Аланом Х. Карпом и Горацием П. Флаттом в 1990 году.
Описание
[ редактировать ]Учитывая параллельные вычисления, демонстрирующие ускорение на процессоры, где > 1, экспериментально определенная серийная доля определяется как метрика Карпа – Флатта, а именно:
Чем ниже значение , тем лучше распараллеливание.
Обоснование
[ редактировать ]Существует множество способов измерения производительности параллельного алгоритма, работающего на параллельном процессоре. Метрика Карпа-Флатта определяет метрику, которая раскрывает аспекты производительности, которые нелегко отличить от других метрик. Своего рода псевдо-"вывод" следует из закона Амдала , который можно записать как:
Где:
- общее время, затраченное на выполнение кода в -процессорная система
- это время, необходимое для выполнения последовательной части кода
- это время, необходимое для выполнения параллельной части кода на одном процессоре
- это количество процессоров
с результатом, полученным заменой = 1 т.е. , если мы определим порядковую дробь = то уравнение можно переписать как
В плане ускорения = :
Решая серийную дробь, мы получаем метрику Карпа – Флатта, как указано выше. Обратите внимание, что это не «вывод» из закона Амдала, поскольку левая часть представляет собой метрику, а не математически полученную величину. Приведенное выше рассмотрение просто показывает, что метрика Карпа – Флатта соответствует закону Амдала.
Использовать
[ редактировать ]Хотя серийная дробь e часто упоминается в литературе по информатике , она редко используется в качестве диагностического инструмента, как ускорение и эффективность . Карп и Флатт надеялись исправить это, предложив эту метрику. Эта метрика устраняет недостатки других законов и величин, используемых для измерения распараллеливания компьютерного кода. В частности, закон Амдала не учитывает вопросы балансировки нагрузки и не учитывает накладные расходы . Использование серийной доли в качестве показателя дает определенные преимущества перед другими, особенно по мере роста числа процессоров.
Для задачи фиксированного размера эффективность параллельных вычислений обычно снижается с увеличением количества процессоров. Используя серийную долю, полученную экспериментально с помощью метрики Карпа-Флатта, мы можем определить, связано ли снижение эффективности с ограниченными возможностями параллелизма или увеличением алгоритмических или архитектурных накладных расходов.
Ссылки
[ редактировать ]- Карп, Алан Х. и Флатт, Гораций П. (1990). «Измерение производительности параллельного процессора» . Коммуникации АКМ . 33 (5): 539–543. дои : 10.1145/78607.78614 .
- Куинн, Майкл Дж. (2004). Параллельное программирование на C с использованием MPI и OpenMP . Бостон: МакГроу-Хилл. ISBN 0-07-058201-7 .