1/ Какое будет общее ускорение, если 10% программы ускорятся в 90 раз? 2/ Каково общее ускорение, если 90% программы
1/ Какое будет общее ускорение, если 10% программы ускорятся в 90 раз?
2/ Каково общее ускорение, если 90% программы ускорятся в 10 раз?
3/ Сколько раз ускорится процессор, если новый процессор быстрее старого в 20 раз в поисковых запросах? При этом старый процессор занят поисковыми запросами 70% времени.
4/ Какое ускорение достигается при интеграции улучшенного процессора? Предположим, что 0,1% времени выполнения программы не могут быть параллелизованы. Мы используем суперкомпьютер с 3 120 000 ядрами, предполагая, что программа работает на всех этих ядрах с одинаковой скоростью и отсутствуют другие факторы, влияющие на производительность.
14.12.2023 22:52
Инструкция: Общее ускорение программы можно вычислить, зная насколько раз она ускорилась и какую долю времени занимает выполняющаяся часть программы.
1. Для первой задачи, где 10% программы ускоряется в 90 раз, общее ускорение можно найти следующим образом:
- Ускорение для 10% программы: 90 раз
- Доля времени, занимаемая 10% программой: 10%
- Общее ускорение = доля времени * ускорение = 0.1 * 90 = 9
2. Во второй задаче, где 90% программы ускоряются в 10 раз, общее ускорение вычисляется так:
- Ускорение для 90% программы: 10 раз
- Доля времени, занимаемая этой частью программы: 90%
- Общее ускорение = доля времени * ускорение = 0.9 * 10 = 9
3. Для третьей задачи, где новый процессор быстрее старого в 20 раз в поисковых запросах, а старый процессор занят поиском на 70% времени, ускорение можно посчитать так:
- Ускорение для 70% времени, занятого поисковыми запросами: 20 раз
- Доля времени, занимаемая поиском: 70%
- Общее ускорение = доля времени * ускорение = 0.7 * 20 = 14
4. В четвертой задаче, где 0,1% времени выполнения программы не может быть параллелизовано, а использован суперкомпьютер с 3 120 000 ядрами, можно найти ускорение следующим образом:
- Число ядер: 3 120 000
- Доля параллелизуемого времени: 100% - 0.1% = 99.9%
- Общее ускорение = число ядер / доля параллелизуемого времени = 3 120 000 / 0.999 = 3123123.123123123
Демонстрация:
1. Для первой задачи: Если 10% программы ускоряются в 90 раз, то общее ускорение будет 9.
2. Во второй задаче: Если 90% программы ускорятся в 10 раз, то общее ускорение также будет 9.
3. Для третьей задачи: Если новый процессор быстрее старого в 20 раз в поисковых запросах, занимающих 70% времени, то общее ускорение будет равно 14.
4. В четвертой задаче: Если 0.1% времени выполнения программы не может быть параллелизовано, а используется суперкомпьютер с 3 120 000 ядрами, то общее ускорение будет примерно 3123123.123123123.
Совет: Чтобы лучше понять общее ускорение программы, полезно разобраться, какая часть программы ускоряется и насколько. Также важно знать, сколько времени занимает каждая часть программы. Регулярная практика задач на ускорение программы поможет улучшить понимание этой темы.
Практика: Если 80% программы ускоряются в 5 раз, каково будет общее ускорение программы? Время выполнения непараллелизуемой части программы составляет 0.2% от общего времени выполнения.