Если вы большой поклонник аппаратного обеспечения или изучили что-то, связанное с информационными технологиями, в какой-то момент вы слышали о Законе Амдала. Но, что это такое и как это влияет на вычисления оборудования.
Закон Амдала назван в честь Юджина Амдала, компьютерного архитектора.
Что такое Закон Амдала и для чего он нужен?
Определение этого закона устанавливает, что: «Улучшение производительности системы за счет изменения одного из ее компонентов ограничивается долей времени, в течение которого этот компонент используется».
где:
- Fm - период времени, в течение которого система использует расширенную подсистему.
- Am - это коэффициент улучшения, введенный в систему.
- Ta - это старая среда выполнения.
- Tm - это улучшенная среда выполнения.
Эту формулу можно переписать, используя определение увеличения скорости, чтобы можно было вычислить прирост скорости (A):
Этот закон говорит нам, что повышение производительности системы (понимаемой как набор частей, таких как ПК), когда вы меняете одну часть, ограничивается временем использования этого компонента.
Другими словами, повышение производительности вашего ПК при изменении оперативной памяти ограничено временем, в течение которого вы собираетесь использовать этот компонент. Это поднимает другой вопрос: какое время вы используете для повышения производительности?
Если в программе для ПК скорость выполнения алгоритма (например, работы процессора) составляет 30% от общего времени выполнения, которое требуется программе для выполнения, и нам удается заставить этот алгоритм выполняться за половину времени у нас будет:
- Am = 2
- Fm = 0,3
- А = 1,8
Это означает, что скорость выполнения программы увеличится в 1,8 раза, и то только за счет изменения одной из ее подсистем.
Для чего нужен этот закон в вычислениях?
Изложив теорию, для чего нужен этот закон на практике? Он в основном используется системными инженерами, как аппаратными, так и программными, просто для того, чтобы определить, стоит ли того улучшения вашей системы.
Поскольку увеличение скорости программы, использующей несколько ядер процессора (или нескольких процессоров) в распределенных вычислениях, ограничено последовательной долей программы. С помощью закона Амдала вы можете не только вычислить, но и увидеть графически, если улучшение производительности того или иного компонента будет или нет, и в какой степени.
источник https://hardzone.es/reportajes/que-es/ley-de-amdahl/