Розпаралелювання програм: відмінності між версіями

[неперевірена версія][перевірена версія]
Вилучено вміст Додано вміст
м вилучена Категорія:Програмування за допомогою HotCat
Немає опису редагування
Рядок 1:
'''Розпарале́лювання програ́м''' — ('''parallel programming model''') процес адаптації [[Алгоритм|алгоритмів]], записаних у вигляді програм, для їх ефективного виконання на обчислювальній системі [[Паралельні обчислювальні системи|паралельної архітектури]] (останнім часом, як правило, на багатопроцесорній обчислювальній системі). Полягає або в переписуванні програм на спеціальну мову, яка описує паралелізм і яку розуміють [[транслятор]]и цільової обчислювальної системи, або до вставки спеціальної розмітки (наприклад, інструкцій [[Message Passing Interface|MPI]] або [[OpenMP]]).
 
Розпаралелювання може бути ручним, автоматизованим або напівавтоматизованим. Щоб оцінити його якість застосовують наступні критерії:
* Прискорення <math>S_p = T_1 /T_p</math>, де <math>T_p</math> &nbsp;— час виконання розпаралеленої програми на <math>p</math> процесорах, <math>T_1</math> &nbsp;— час виконання вхідної програми. В ідеальному випадку (відсутність накладних витрат на організацію паралелізму) дорівнює <math>p</math>.
* Завантаженість <math>S_p/p=T_1/pT_p</math>, яка показує долю використання процесорів. В ідеальному випадку дорівнює 1, або 100 &nbsp;%. Ця величина, як правило, значно наочніше характеризує ефективність паралелізму в серії випробувань при різних <math>p</math>, ніж <math>S_p</math>, особливо на графіках.
 
При розпаралелюванні важливо брати до уваги не лише формальний паралелізм структури алгоритму, але й те, що обмінні операції в паралельних комп'ютерах є, як правило, набагато повільнішими від арифметичних. З цим пов'язане існування левової частки накладних витрат на організацію паралелізму.
Рядок 14:
* [http://www.intuit.ru/studies/courses/4447/983/lecture/14925 Введение в технологии параллельного программирования (OpenMP)] {{ref-ru}}
 
 
{{Паралельні обчислення}}
{{Refimprove|дата=березень 2017}}
{{Compu-prog-stub}}
[[Категорія:Паралельні обчислення]]