PGAS: Multicore-Sprachen
This commit is contained in:
parent
10f0f05a9d
commit
8d290ac526
24
2-6-pgas.tex
24
2-6-pgas.tex
@ -16,15 +16,31 @@
|
|||||||
\item \textsc{Titanium}: \begin{itemize}
|
\item \textsc{Titanium}: \begin{itemize}
|
||||||
\item Java-Erweiterung
|
\item Java-Erweiterung
|
||||||
\item \texttt{local} markiert lokale Daten
|
\item \texttt{local} markiert lokale Daten
|
||||||
\item Bibliotheksprimitiven für Synchronisation, immutable Datenstrukturen, \textellipsis
|
\item Bibliotheksprimitiven für Synchronisation, unveränderliche Datenstrukturen, \textellipsis
|
||||||
\item Datenverteilung: \begin{itemize}
|
\item Datenverteilung: \begin{itemize}
|
||||||
\item \textbf{TODO}
|
\item mittels \texttt{broadcast}/\texttt{exchange}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\item Multicore-Cluster: \begin{itemize}
|
\item Multicore-Cluster: \begin{itemize}
|
||||||
\item Chapel: \begin{itemize}
|
\item häufig anderer Ansatz: Sicht auf globales Programm mit expliziter Parallelität und eigenständige Programmiersprachen statt Erweiterung bestehender imperativer Sprachen
|
||||||
\item
|
\item \textsc{Chapel}: \begin{itemize}
|
||||||
|
\item explizite Parallelität: \begin{itemize}
|
||||||
|
\item Datenparallelität: verteilte Arrays mit Domänen auf verschiedenen Lokalitäten
|
||||||
|
\item Taskparallelität: leichtgewichtige Aktivitäten
|
||||||
|
\end{itemize}
|
||||||
|
\item Speicherlayout: \begin{itemize}
|
||||||
|
\item Zerlegung des globalen Adressbereichs in \texttt{locales}, welche jeweils einem Rechner entsprechen
|
||||||
|
\item Arrays werden über Domänen erzeugt, mit denen gerechnet werden kann, dann Zuordnung von Index zu Lokalität
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\item \textsc{X10}: \begin{itemize}
|
||||||
|
\item Speicherlayout: \begin{itemize}
|
||||||
|
\item Zerlegung des Adressbereichs in \texttt{places}
|
||||||
|
\item Variablen unveränderlich, lokal und geteilt bei Deklaration
|
||||||
|
\item Zugriff auf Variablen über Aktivitätsgrenzen auf gleichen Place beschränkt
|
||||||
|
\item Zugriff auf Variablen in anderen Places durch (temporäre) Verlagerung des Programmflusses auf den jeweiligen Place
|
||||||
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{itemize}
|
\end{itemize}
|
Loading…
Reference in New Issue
Block a user