Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] Info about Manta multi-threading


Chronological Thread 
  • From: Biagio Cosenza < >
  • To:
  • Subject: [Manta] Info about Manta multi-threading
  • Date: Fri, 5 Jun 2009 17:47:23 +0200
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=YQC1V4o5IgMhTDsvwVdKeJNeyYxYiw9ktvlO5na4W6/GLLQF6AZyRsnLSwg0hoMEMB leBTWy3/xy8cAvd5T2WYmRVxObkMCjqH7myWOZyf5N5k5HIZ0lEQF2YQ7IiTXJObQNIp 9VAgi15IZThVAQXUWVoB1mol3wIhbZDiDWdNA=

Hi!
I have two questions about Manta multi-threading.


1st)
Is there in Manta code (maybe in Core/Thread ?) something to easily implement this:

if(I'm the first thread arrived here){
  //  do something
}

instead of

if(context.proc == 0){
  //  do something
}



2nd)
I implemented two ImageTraverser using different load balancing strategy: the first using the WorkQueue approach (with granularity=5), the latter using a trivial static scheduling of packet between threads.

I also tested these two balancer on 3 complex scenes (from 200 000 to 8 000 000 of primary rays + reflections).

The test platform is an Intel Core 2 Quad Q6600 (4 cores).
Surprisingly scalability is higher with the static approach...
am I using the WorkQueue in the wrong way? Which is the better load balancer available in Manta for my target platform?

I also noted that the scalability is fine with low fps (close to 4x), but it slow down for higher fps (3x). I wonder if this is due to a relatively higher cost of the barrier synch.





Thanks, Biagio








--
Biagio Cosenza
ISISLab, Dip. di Informatica ed Applicazioni "Renato M. Capocelli"
Universita' degli Studi di Salerno
http://www.dia.unisa.it/~cosenza




Archive powered by MHonArc 2.6.16.

Top of page