1 / 8

GWDG – Kurs Parallelrechner-Programmierung mit MPI MPI-Praxis Einführung

GWDG – Kurs Parallelrechner-Programmierung mit MPI MPI-Praxis Einführung. Oswald Haan ohaan@gwdg.de. Zugang. Zugang zum GWDG-Cluster : Notebook starten und Netzzugang einrichten ssh -Client PuTTY laden: http ://www.chiark.greenend.org.uk / ~sgtatham/putty/download.html

aneko
Download Presentation

GWDG – Kurs Parallelrechner-Programmierung mit MPI MPI-Praxis Einführung

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GWDG – KursParallelrechner-Programmierung mit MPI MPI-PraxisEinführung Oswald Haan ohaan@gwdg.de

  2. Zugang Zugang zum GWDG-Cluster : • Notebook starten und Netzzugang einrichten • ssh-Client PuTTY laden:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html • und ausführen: putty.exe • startet xterm-Fenster auf gwdu102.gwdg.de • Mit Benutzerkennung + zugehörigem Passwort einloggen Parallelrechner-Programmierung mit MPI

  3. Beispiel-Programme • Alle Übungsbeispiele liegen in den Verzeichnissen~ohaan/Uebungen_f~ohaan/Uebungen_c • Kopieren der Beispiele in ein eigenes Verzeichniscp –r ~ohaan/Uebungen_f/* . • Editieren, Übersetzen, Binden und Starten von Programmen auf dem Einwahl-Knoten gwdu102 • Bearbeitung der Programme auf dem GWDG-Clusterin der LSF-Queue kurs-mpioder kurs-fat Parallelrechner-Programmierung mit MPI

  4. Die Kurs-Queues • kurs-mpi : gwdc001, gwdc002 je 16 cores • gwdn001, gwdn002 je 8 cores • kurs-fat: gwda001, gwda002 je 64 cores • gwdp001, gwdp002, je 48 cores • Weitere Informationen zu Batch-Verarbeitung im Wiki „Scientific Compute Cluster“ • http://wiki.gwdg.de/index.php/Scientific_Compute_Cluster Parallelrechner-Programmierung mit MPI

  5. Aufgabe 1: Übersetzen und Binden • Dateien im Verzeichnis Uebungen_f/Zugang • Umgebung für Intel-Compiler und Intel-MPI laden: • > moduleaddintel/compiler • > moduleaddintel-mpi • Einfacher: vorgefertigte Datei ausführen: • > . ./modules.x • Sequentielles Programm hello.f • > ifort -o hellohello.f > ./hello • MPI-paralleles Programm hello_mpi.f Übersetzen und Binden mit: • > mpiifort–o hello_mpi.exe hello_mpi.f Parallelrechner-Programmierung mit MPI

  6. Aufgabe 2:Starten paralleler Jobs Interaktiv: > mpirun–n 2 ./hello_mpi.exe Mit LSF bsub: > bsub–n 8 –q kurs-fat–a intelmpi -o out.%Jmpirun.lsf./hello_mpi.exe Mit LSF Skript: > bsub< lsf.job #!/bin/sh #BSUB -q kurs-fat #BSUB -W 1:00 #BSUB -n 8 #BSUB -o out.%J #BSUB -a intelmpi mpirun.lsf ./hello_mpi.exe Parallelrechner-Programmierung mit MPI

  7. Aufgabe 3:Zeitmessung Real-Zeit (elapsed time) in sec. : MPI_WTIME() Genauigkeit in sec : MPI_WTICK() Übersetze Programm zeit_mpi.f(mit makefile) Starte zeit_mpi.exe mit : > mpirun–n 1 ./zeit_mpi.exe Parallelrechner-Programmierung mit MPI

  8. Aufgabe 4:Rechengeschwindigkeit Matrix-Vektor Multiplikation Übersetzung von dgemv.ftime_dgemv.fmit makefile(im Verzeichnis Uebungen_f/MV-seq) mit mpiifort, verschiedene Optimierungsstufen Abrollen, Abroll-Tiefe: 2,4,8 (dgemv_u8.f) Einsatz von Bibliotheken: MKL moduleaddintel/mkl Vergleiche mit max. Leistung von 8,8 Gflop/s (2,2 GHz Taktrate) Parallelrechner-Programmierung mit MPI

More Related