2001-gre-vs-practice.pdf/Q17 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
 
== Вопрос: Q17-e5724f ==
 
== Вопрос: Q17-e5724f ==
  
Параллельная программа выполняется за 100 секунд на одном процессоре. Если 40% этой программы являются "непараллелизуемыми" (то есть не могут быть ускорены с использованием дополнительных процессоров), то теоретически наилучшие возможные времена выполнения программы на 2 и 4 процессорах составят:
+
Параллельная программа выполняется за 100 секунд на одном процессоре. Если 40% этой программы являются «непараллелизуемыми» (то есть не могут быть ускорены с использованием дополнительных процессоров), то теоретически наилучшие возможные времена выполнения программы на 2 и 4 процессорах составят:
  
 
=== Ответы ===
 
=== Ответы ===
  
* 20 и 10 секунд.
+
* 20 и 10 секунд.
* 30 и 15 секунд.
+
* 30 и 15 секунд.
* 50 и 25 секунд.
+
* 50 и 25 секунд.
* 70 и 55 секунд.
+
* 70 и 55 секунд.
* 80 и 70 секунд.
+
* 80 и 70 секунд.
  
 
=== Объяснение ===
 
=== Объяснение ===
Строка 15: Строка 15:
 
{{cstest-source|2001-gre-vs-practice.pdf|20|17}}
 
{{cstest-source|2001-gre-vs-practice.pdf|20|17}}
  
Закон Амдала (Amdahl's Law):
+
Закон Амдала (Amdahl’s Law):
 
Время выполнения параллельной программы определяется как:
 
Время выполнения параллельной программы определяется как:
 
<m>\[T(P) = T_\text{seq} + \frac{T_\text{par}}{P},\]</m>
 
<m>\[T(P) = T_\text{seq} + \frac{T_\text{par}}{P},\]</m>
 
где:
 
где:
* <m>\( T_\text{seq} \)</m> время выполнения непараллелизуемой части программы,
+
* <m>\( T_\text{seq} \)</m> — время выполнения непараллелизуемой части программы,
* <m>\( T_\text{par} \)</m> время выполнения параллелизуемой части программы,
+
* <m>\( T_\text{par} \)</m> — время выполнения параллелизуемой части программы,
* <m>\( P \)</m> количество процессоров.
+
* <m>\( P \)</m> — количество процессоров.
  
В нашей задаче:
+
В нашей задаче:
* <m>\( T_\text{seq} = 40\% \times 100 = 40 \)</m> секунд,
+
* <m>\( T_\text{seq} = 40\% \times 100 = 40 \)</m> секунд,
* <m>\( T_\text{par} = 60\% \times 100 = 60 \)</m> секунд.
+
* <m>\( T_\text{par} = 60\% \times 100 = 60 \)</m> секунд.
  
 
Для 2 процессоров <m>(\( P = 2 \))</m>:
 
Для 2 процессоров <m>(\( P = 2 \))</m>:
Строка 34: Строка 34:
  
 
Проверка вариантов:
 
Проверка вариантов:
* 20 и 10 секунд — неверно. Это слишком оптимистично и игнорирует непараллелизуемую часть.
+
* 20 и 10 секунд — неверно. Это слишком оптимистично и игнорирует непараллелизуемую часть.
* 30 и 15 секунд — неверно. Аналогично, занижено.
+
* 30 и 15 секунд — неверно. Аналогично, занижено.
* 50 и 25 секунд — неверно. Неправильное распределение времени.
+
* 50 и 25 секунд — неверно. Неправильное распределение времени.
* 70 и 55 секунд — верно, соответствует расчетам.
+
* 70 и 55 секунд — верно, соответствует расчетам.
* 80 и 70 секунд — неверно. Эти значения слишком велики.
+
* 80 и 70 секунд — неверно. Эти значения слишком велики.
  
 
Вывод:
 
Вывод:
  
Правильный ответ — D (70 и 55 секунд).
+
Правильный ответ — D (70 и 55 секунд).
  
 +
{{question-ok|[[Участник:StasFomin|StasFomin]] 09:18, 21 декабря 2024 (UTC)}}
  
{{question-ok|}}{{reserve-task|[[Участник:ZharovG|ZharovG]] 16:16, 20 декабря 2024 (UTC)}}{{checkme|[[Участник:ZharovG|ZharovG]] 16:39, 20 декабря 2024 (UTC)}}
+
[[Категория:Параллельные вычисления]]
 
+
[[Категория:Надо не забыть выбрать тему]]
+

Текущая версия на 09:18, 21 декабря 2024

Вопрос: Q17-e5724f

Параллельная программа выполняется за 100 секунд на одном процессоре. Если 40% этой программы являются «непараллелизуемыми» (то есть не могут быть ускорены с использованием дополнительных процессоров), то теоретически наилучшие возможные времена выполнения программы на 2 и 4 процессорах составят:

Ответы

  • 20 и 10 секунд.
  • 30 и 15 секунд.
  • 50 и 25 секунд.
  • 70 и 55 секунд.
  • 80 и 70 секунд.

Объяснение

Исходники — вопрос 17 на 20 странице книги «2001-gre-vs-practice.pdf»

Закон Амдала (Amdahl’s Law): Время выполнения параллельной программы определяется как: где:

  •  — время выполнения непараллелизуемой части программы,
  •  — время выполнения параллелизуемой части программы,
  •  — количество процессоров.

В нашей задаче:

  • секунд,
  • секунд.

Для 2 процессоров :

Для 4 процессоров :

Проверка вариантов:

  • 20 и 10 секунд — неверно. Это слишком оптимистично и игнорирует непараллелизуемую часть.
  • 30 и 15 секунд — неверно. Аналогично, занижено.
  • 50 и 25 секунд — неверно. Неправильное распределение времени.
  • 70 и 55 секунд — верно, соответствует расчетам.
  • 80 и 70 секунд — неверно. Эти значения слишком велики.

Вывод:

Правильный ответ — D (70 и 55 секунд).