Gekoppelte Simulation von Licht- und Schallausbreitung in komplexen Szenen

SimTech: Gekoppelte Simulation von Licht- und Schallausbreitung in komplexen Szenen


Links: durch Sonnenlicht beleuchteter Raum. Der Großteil des Raumes wird durch das von der rechten Wand zurück geworfene Licht beleuchtet. Rechts: Durch das Fenster hinter dem Betrachter fällt diffuses Licht in den Raum. Unter den Kisten und Tischen erscheint der Boden dunkler, weil diese Stellen gegenüber großen Teilen der Szene abgeschattet sind.

Die Simulation realistischer Licht- und Schallausbreitung ist sehr rechenaufwändig und es ist auch auf leistungsfähigen Rechnern unter derzeit nur begrenzt möglich, diese Simulationen für einfache Szenen wie einzelne Räume mit interaktiven Geschwindigkeiten laufen zu lassen. Um die Komplexität der interaktiv simulierbaren Szenen steigern zu können, sind neue Algorithmen nötig, die besser mit der Szenenkomplexität skalieren und sich für den massiv parallele Ausführung auf Clustern von Grafikprozessoren (GPUs) eignen. Dies sind die beiden Ansatzpunkt für dieses SimTech-Projekt

In diesem Projekt wird unter anderem untersucht, in wie weit sich durch Kopplung der Simulation von Licht- und Schallausbreitung Synergieeffekte ergeben können, die die Komplexität und den Rechenaufwand der Simulation reduzieren. Es werden für beide Arten von Simulationen Algorithmen verwendet, die nahezu direkte Entsprechungen sind (z.B. verschiedene Raytracing-Verfahren). Da das physikalische Verhalten von Licht und Schall im für Menschen wahrnehmbaren Bereich allerdings sehr unterschiedlich ist, müssen die entsprechenden Simulationsverfahren danach evaluiert werden, inwieweit sie in der Lage sind, die für Licht und Schall unterschiedlichen Effekte glaubwürdig zu reproduzieren. Finite Elemente Methoden und Randelement-Methoden sind hierfür vielversprechende Kandidaten, da sie sehr präzise Simulationen ermöglichen. Es muss jedoch noch genauer untersucht werden, inwieweit sich diese Methoden vereinheitlichen lassen und wie stark dadurch der Rechenaufwand gesenkt werden kann.

Weiterhin wird ein Framework entwickelt, um die Nutzung ganzer Cluster von GPUs für numerische Simulationen zu erleichtern. Berechnungen, die auf GPUs ausgeführt werden sollen, müssen vom Entwickler in große Zahl kleine Schritte unterteilt werden, die als einzelne Programme auf den GPUs ausgeführt werden. Unser "SuperGPU" genanntes Framework unterstützt den Entwickler, indem es die Ausführung dieser Programme übernimmt sowie deren Ein- und Ausgabedaten verwaltet. Mit dem Framework erstelle Programme können ohne weitere Anpassungen auf ganzen Clustern von GPUs ausgeführt werden, wobei die Aufgabenverteilung automatisch so vorgenommen wird, dass die beteiligten GPUs möglichst optimal ausgelastet werden.

Am Ende des Projekts soll ein Demonstrator entstehen, in dem sich u.a. Gebäude virtuell begehen lassen und die Ausleuchtung und Akustik interaktiv begutachtet und angepasst werden kann.

Zum Seitenanfang