Laufzeiten Sequentiell & Parallelisiert

Jörg B
Neuling
Neuling
Beiträge: 4
Registriert: 16. Jan 2012 00:23

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Jörg B » 16. Jan 2012 11:09

rand_r() wirkt echt wunder.

von 14.4s nochmal auf 9.1s gekommen.

Das Bauen des Baumes ist jetzt eigentlich das aufwändigste. Vielleicht sollte man hier das SAH Plane Splitting mit einem normalen Medianverfahren mischen.

Benutzeravatar
Ronny
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 133
Registriert: 18. Nov 2005 14:33
Wohnort: IGD

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Ronny » 16. Jan 2012 11:49

Jörg B hat geschrieben: Das Bauen des Baumes ist jetzt eigentlich das aufwändigste. Vielleicht sollte man hier das SAH Plane Splitting mit einem normalen Medianverfahren mischen.
Durch Mischung mit einem Medianverfahren verringert sich die Qualitaet der BVH. Das hat ein laengeres Raytraversal zur Folge.
Die BVH Konstruktion laesst sich aber auch gut parallelisieren.

Thomas Huxhorn
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 171
Registriert: 6. Okt 2011 15:25

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Thomas Huxhorn » 16. Jan 2012 12:54

9sec? verrate mir doch bitte einer mal was das Geheimniss ist. Habt ihr schnellere Intersect Funktionen verwendet oder den Baum umgebaut oder was?

Jörg B
Neuling
Neuling
Beiträge: 4
Registriert: 16. Jan 2012 00:23

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Jörg B » 16. Jan 2012 13:52

Eigentlich benutze ich nur das ganz normale Framework. Es werden am Anfang zwar noch alle Dreiecke gefiltert die garnicht in der Kamera liegen können, d.h. die Scene Bounding Box kleiner gesetzt. Aber das macht in der parallelen Version nur sehr wenig bis gar nichts aus wenn überhaupt. In der sequentiellen Version ist das aber ca. eine Minute Gewinn.

Ansonsten einfach nur schauen das man mit den Threads möglichst wenig im globalen und soviel wie möglich im privaten Speicher macht, sie immer was zu tuen haben (gleichmäßig aufteilen) und keiner alleine am Ende noch rum rechnet ;)

Thomas Huxhorn
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 171
Registriert: 6. Okt 2011 15:25

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Thomas Huxhorn » 16. Jan 2012 14:11

Ja, ist bei mir so. Bei htop werden alle 24Threads bei 100.0% angzeigt. Mit valgrind hab ich alle blockierenden Funktionen entfernt. Es muss im Prinzip einfach nur noch pur gerechnet werden. :(

Benutzeravatar
Ronny
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 133
Registriert: 18. Nov 2005 14:33
Wohnort: IGD

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Ronny » 16. Jan 2012 16:50

Jörg B hat geschrieben:Es werden am Anfang zwar noch alle Dreiecke gefiltert die garnicht in der Kamera liegen können, d.h. die Scene Bounding Box kleiner gesetzt.
Wie meinen Sie das? Sie haben die Dreiecke komplett aus der Szene genommen?
Die sind aber fuer das AO-Sampling wichtig.

Jörg B
Neuling
Neuling
Beiträge: 4
Registriert: 16. Jan 2012 00:23

Re: Laufzeiten Sequentiell & Parallelisiert

Beitrag von Jörg B » 16. Jan 2012 17:33

Natürlich wird die neue Box noch in alle Richtungen erweitert um die maximale Weite der AO-Sampling Strahlen =)

Antworten

Zurück zu „Archiv“