2. Párhuzamos architektúra
választása
• Fel lehet-e bontani a feladatot párhuzamosan futtatható részfeladatokra?
• A legegyszerűbb, ha a feladatok függetlenek egymástól,
de alapvetően ugyan azokból a lépésekből állnak.
• A részfeladatok egyformák? Lépésről lépésre egyformák?
• A részfeladatok írnak közös adatokat?
• A részfeladatok gyakran illetve nagy mennyiségű adatot osztanak meg egymással?
4. sokprocesszoros gépek közös memória
NUMA független számítóegységek
Több szálon futó programok:
•
•
•
•
A szálak egymástól függetlenül futhatnak.
A szálak használhatnak memóriaterületeket közösen.
A szálak végrehajtási sebessége nem determinisztikus.
Közösen használt memóriaterületekből adódó problémák:
a) Pesszimista megközelítés
b) Optimista megközelítés
• Nincs algoritmus a helyességigazolásra.
• „Heisenbug”-ok megjelenése.
Ez a megközelítés áll legközelebb a „hagyományoshoz”
Széles körben elérhető hardver.
5. 2
Cluster és Grid nincs közös memória
computing számítógépek hálózata
6. 2
Cluster és Grid nincs közös memória
computing számítógépek hálózata
Feladat:
i. A futtatandó program eljuttatása az összes számítógépre.
ii. Üzenetváltás megoldása az egyes példányok között.
Megoldás: Message Passing Interface
• Minden gépen ugyanaz a program fut.
• A program tetszőleges példányszámban indítható.
• Minden példánynak van egy sorszáma.
• Minden példány tudja a saját sorszámát.
az összlétszámot.
20. 4
Field Programable logikai kapukból
Gate Array egyedi célhardver
• Tetszőleges logikai függvény felépíthető
• Mérnöki megközelítést igényel
21. Irodalom:
[1] T. Peierls B. Goetz. Java concurrency in practice, 2006.
[2] E. Chan. Algorithmic trading: Winning strategies and their rationale, 2013.
[3] E. Kandort J. Sanders. Cuda by example, 2011.
[4] nVidia Corporation. Nvidia cuda c programming guide. (electronic document),2011.
[5] R. Pardo. The evaluation and optimization of trading strategies, 2008.