Movatterモバイル変換


[0]ホーム

URL:


Przejdź do zawartości
Wikipediawolna encyklopedia
Szukaj

Instruction Level Parallelism

Z Wikipedii, wolnej encyklopedii

Instruction Level Parallelism (ILP) – parametr dotyczącyoprogramowania, który mówi o tym jaka część z operacji zawartych w kodzie może być wykonanarównolegle. ILP może być wartością czysto teoretyczna, w której dany programy analizowany jest tak jakby był uruchamiany na maszynie o nieskończonej liczbie zasobów. To znaczy nie są brane pod uwagę inne programy i braki ograniczonych zasobów typurejestry[1]. ILP może być również traktowane jako średnia liczba instrukcji faktycznie wykonywanych równolegle i mówi się wówczas o metodach zwiększania ILP[2][3].

Obliczenia ILP

[edytuj |edytuj kod]

W dosyć prostym przypadku można wyobrazić sobie taki program:

intab=a+b;intcd=c-d;intwynik=ab*cd;

W tym wypadku obliczenie wartościab nie zależy od obliczeniacd i można je wykonać równolegle. Mamy zatem dwa polecenia wykonane w jednej jednostce czasu i trzecią, która wykonana zostanie w drugiej jednostce. Czyli ILP wynosi 3 / 2 = 1½.

Można też rozpatrywać to na zasadzie budowaniagrafuzależności konsumentów i producentów. Zmiennawynik jest konsumentem, który jest połączony z dwoma producentami (graf jest literą V). ILP jest średnią szerokości takiego grafu: (2 + 1) / 2 = 1½[1].

Praktyczne zastosowanie

[edytuj |edytuj kod]

W praktyce badanie ILP może być stosowane do przyśpieszenia wykonania programu w procesorach umożliwiających przetwarzaniepotokowe[3]. Problem jest jednak zarówno identyfikacja niezależnych wątków, jak i synchronizacja wątków, które muszą dać wspólny wynik[2].

Zobacz też

[edytuj |edytuj kod]

Przypisy

[edytuj |edytuj kod]
  1. abBernardB. Goossens BernardB.,PhilippeP. Langlois PhilippeP.,DavidD. Parello DavidD.,EricE. Petit EricE.,PerPI: A Tool to Measure Instruction Level Parallelism, „Applied parallel and scientific computing: 10th International Conference, PARA 2010, Revised selected papers, Part I”, June 6-9, Reykjavík 2010, s. 270–281,DOI10.1007/978-3-642-28151-8_27,ISBN 978-3-642-28151-8,OCLC 778458310 [dostęp 2022-12-30] .
  2. abKostasK. Bousias KostasK.,NabilN. Hasasneh NabilN.,ChrisCh. Jesshope ChrisCh.,Instruction Level Parallelism through Microthreading – A Scalable Approach to Chip Multiprocessors, „The Computer Journal”, 49 (2), 2006, s. 211–233,DOI10.1093/comjnl/bxh157,ISSN1460-2067 [dostęp 2022-12-30] (ang.).
  3. abSweetyS. Nain SweetyS.,PrachiP. Chaudhary PrachiP.,A neural network-based approach for the performance evaluation of branch prediction in instruction-level parallelism processors, „The Journal of Supercomputing”, 78 (4),2022, s. 4960–4976,DOI10.1007/s11227-021-04045-3,ISSN0920-8542 [dostęp 2022-12-30] (ang.).
Źródło: „https://pl.wikipedia.org/w/index.php?title=Instruction_Level_Parallelism&oldid=70497225
Kategoria:
Ukryta kategoria:

[8]ページ先頭

©2009-2026 Movatter.jp