Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.685 Beiträge
 
Delphi 2007 Enterprise
 
#13

Re: Geschwindigkeitsgewinn von Multithreading Berechnungen

  Alt 27. Mai 2010, 21:23
Beim Mandelbrot braucht der mittlere Bereich (der, der üblicherweise schwarz ist - die eigentliche Mandelbrotmenge) am längsten, da dort immer die maximale Iterationstiefe erreicht wird, folglich sollte, wenn man an der realen Achse in 2 Teile teilt, der untere Teil weit weniger geschafft haben als der obere, vorausgesetzt beide fangen lokal von oben an. Jedoch sollten sie schon einigermaßen gleichzeitig fertig werden am Ende. Joinst du irgendwo, oder weist du evtl. unterschiedliche Prios zu? Oder evtl. zu hohe Prios?

Ich würde generell schon fast dazu übergehen, für jede Zeile einen Thread zu machen, dann aber so ~4-8 am Stück starten, und jedes Mal wenn einer fertig wird, wieder auffüllen. Das ist aber vermutlich nur ab gewisser Größe des Bildes sinnig, sonst könnte der Verwaltungsoverhead merkbar werden.

Noch ein kleiner Beschleunigungstipp: Das einfache Mandelbrötchen ist spiegelsymmetrisch zur realen Achse -> du musst bei zentrierter Ansicht nur das halbe Bild berechnen.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat