- chceme někomu něco poslat, nebo přijmou bez dřívějšího zjišťování kdo s kým komunikuje - to ale nechceme, je to drahé
- chceme přímo přistoupit k paměti daného procesu
- mezi procesy je nasdílená paměť, např. okno o velikosti 1MB
- je hw poměrně náročné, je potřeba remote DMA, aby šlo bez účasti daného procesu
PUT a GET jsou neblokující!
- Nejdříve si všichni nachystají data a dají je do oken = Access epoch = my saháme na naše data - tvorba/konzumace dat
- následně umožní všech sahat do oken = Exposure epoch = ostatní sahají na naše data
- dynamické oknu umožŇuje data přiřadit pomocí
attach a oddělat pomocí detach
- přes okno
shared - můžeme na ranky na stejném uzlu použít load a store - tedy psaní přímo na adresu
MPI_Alloc_mem - může zarovnat data na cache line, zajistí fungování dma, …
- je zaručeno odeslání, ale není zaručeno, že skončili ostatní
- Určitě na zkoušce! - bude ho hodně zajímat
- na začátku bychom se měli MPI zeptat jaký model komunikátor používá a podle toho zařídit operace
- nemohu udělat lokálně store + vzdáleně put nebo acc, ani v rozdílných oblastech!! koherence cache liny, nebo stránky se rozbije!!