KaPy:ParallelGameOfLife: Unterschied zwischen den Versionen
Cls (Diskussion | Beiträge) |
Cls (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 5: | Zeile 5: | ||
TODO: Notizen nachtragen | TODO: Notizen nachtragen | ||
TODO: Synatx Highlighter | TODO: Synatx Highlighter | ||
TODO: Codebeispiel [https://gist.github.com/2938254] | TODO: Codebeispiel [https://gist.github.com/2938254] | ||
<!-- Was ist MPI? | <!-- Was ist MPI? | ||
Zeile 49: | Zeile 52: | ||
IPython ist längst nicht mehr "nur" eine alternative Python Shell, sondern mittlerweile auch ein "tool for high level and interactive parallel computing", wie es auf der Webseite heisst. | IPython ist längst nicht mehr "nur" eine alternative Python Shell, sondern mittlerweile auch ein "tool for high level and interactive parallel computing", wie es auf der Webseite heisst. | ||
* '''Client''' | |||
* '''Engines''' | |||
* '''View''' | |||
=== Game of Life - Implementation === | === Game of Life - Implementation === |
Version vom 16. Juni 2012, 14:31 Uhr
15. Juni 2012: IPython + mpi4py = paralleles Game of Life
Timo präsentiert uns eine parallele Implementation des Game of Life, realisiert mit IPython und mpi4py. Das Prinzip: Partitioniere das Spielfeld, ein 2D-Numpy-Array, und verteile es auf mehrere Prozessoren.
TODO: Notizen nachtragen
TODO: Synatx Highlighter
TODO: Codebeispiel [1]
mpi4py
Message Passing Interface (MPI) ist ein Standard, der den Nachrichtenaustausch bei parallelen Berechnungen auf verteilten Computersystemen beschreibt. Eine MPI-Applikation besteht in der Regel aus mehreren miteinander kommunizierenden Prozessen, die alle zu Beginn der Programmausführung parallel gestartet werden. Alle diese Prozesse arbeiten dann gemeinsam an einem Problem und nutzen zum Datenaustausch Nachrichten, welche explizit von einem zum anderen Prozess geschickt werden. Ein Vorteil dieses Prinzips ist es, dass der Nachrichtenaustausch auch über Rechnergrenzen hinweg funktioniert.
mpi4py stellt Python-Bindings für den MPI-Standard zur Verfügung. Die Serialisierung von Objekten übernimmt pickle.
IPython.parallel
IPython ist längst nicht mehr "nur" eine alternative Python Shell, sondern mittlerweile auch ein "tool for high level and interactive parallel computing", wie es auf der Webseite heisst.
- Client
- Engines
- View