Viele HPC-Schulungen bieten praktische Beispiele an, die entweder als funktionierender Quellcode verteilt werden, den die Studierenden kompilieren und ausführen können, oder als Übungen, um das Schreiben von parallelen Programmen zu üben. Eine gute Übung zu entwerfen kann herausfordernd sein, da sie: einfach genug sein muss, um in angemessener Zeit abgeschlossen zu werden, aber kompliziert genug, um echte HPC-Techniken zu veranschaulichen; einfach genug zu erklären, aber relevant für echte Anwendungen in der Computerwissenschaft sein muss; Ausgaben erzeugen, die interessant und ansprechend sind, aber die klar alle Laufzeitfehler zeigen; skalierbar für eine Reihe von Problembereichen sein, um parallele Leistungsmerkmale zu veranschaulichen. Im Laufe der Jahre haben wir Beispiele aus einer breiten Palette von Bereichen verwendet, darunter zelluläre Automaten, Bildverarbeitung, Pollentransport durch Konvektions-Diffusion, Räuber-Beute-Simulation, Perkolation von Öl durch Gestein, Strömungsdynamik und Sandhaufenmodellierung. Trotz der breiten Palette an Anwendungsbereichen haben all diese Beispiele die gleiche grundlegende Eigenschaft geteilt, nämlich die Verwendung eines 2D-regulären Rasters mit nächstgelegenen Nachbareingriffen, z. B. „oben, unten, links, rechts minus viermal die Mitte“. In diesem Poster werden wir erklären, warum dies ein so gutes grundlegendes Rechenmuster für Trainingsübungen ist und die verschiedenen Vor- und Nachteile jedes einzelnen Beispiels darlegen. Ich werde auch erklären, warum ich die kürzlich entwickelte Sandhaufen-Simulation für mein bisher bestes Beispiel halte und die Gewinner eines jüngsten Studentenwettbewerbs zur Entwicklung der besten Sandhaufenvisualisierung zeigen.
David Henty (Do,) hat diese Frage untersucht.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: