[parsec-users] fluidanimate

Christian Bienia cbienia at CS.Princeton.EDU
Fri Jun 11 00:40:44 EDT 2010


Hey guys,

 

A few quick points regarding this:

 

.         As was pointed out it is possible to set the number of threads for
fluidanimate to anything by setting XDIVS and ZDIVS directly. This affects
how the program partitions the volume - the number of blocks is always XDIVS
* ZDIVS, each of which will be assigned to its own thread.

.         The communication-to-computation ratio of the program varies
significantly depending on the exact values of XDIVS and ZDIVS.
Communication happens at the surface of the partitions, computation is about
proportional to their volume. The comm-to-comp ratio is lowest if
XDIVS==ZDIVS because for those values the ratio of surface to volume is
minimal.

.         In extreme situations (such as if XDIVS * ZDIVS is a prime number)
you can get very different behavior. This was the motivation to only allow
powers of two for the number of threads - it guarantees that XDIVS and ZDIVS
have comparable size.

 

Best,

Chris

 

 

From: parsec-users-bounces at lists.cs.princeton.edu
[mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of kishore
kumar
Sent: Thursday, June 10, 2010 10:03 PM
To: PARSEC Users
Subject: Re: [parsec-users] fluidanimate

 

Thank you, Jim.

Best,
Kishore 




2010/6/10 Jim Dempsey <jim at quickthreadprogramming.com>

>>I was curious whether this change hurts the overall functionality (I mean,
the output quality) of the application or not?

 

It won't make it any worse, other than for the fact that the original code
had permiable walls. Particles at the bottom of the container would exude
beyond the walls. You can observe this with visualizations enabled (look
closely at the bottom corners of the container)

I made corrections with this respect to all versions of the code. Now the
particles bounce properly off the walls.

 

Jim

 

 

  _____  

From: parsec-users-bounces at lists.cs.princeton.edu
[mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of kishore
kumar

Sent: Thursday, June 10, 2010 8:43 PM


To: PARSEC Users
Subject: Re: [parsec-users] fluidanimate

 

Hi Jim,
Thank you for your inputs. 

I already ran fluidanimate with non-power-2 threads by bypassing the hamming
code and setting XDVIS and ZDIVS directly.  

 I was curious whether this change hurts the overall functionality (I mean,
the output quality) of the application or not?

Thank you.

Best,
Kishore Kumar Pusukuri
http://www.cs.ucr.edu/~kishore <http://www.cs.ucr.edu/%7Ekishore> 




2010/6/10 Jim Dempsey <jim at quickthreadprogramming.com>

I think it will work if you bypass the hamming code and directly set XDIVS
and ZDIVS (or input as parameters)

 

***

 

Note, force of gravity is along Y axis, therefore partitioning  XDIVS and
ZDIVS is appropriate. If gravity direction changes then partitioning may
need to change too. The hamming code was a strategy to obtain the largest
ratio of volume/area for partitions.

i.e. to reduce the proportion of cells at boundary (requiring interlocked
operations).

 

A more natural system of particles would have gravity in an arbitrary
direction.

My rewrite attempts to take this into consideration and the input parameter
for gravity (currently constant) will drive the partitioning.

 

I also I think it would be nice if the container could be other than a
rectangular tube, complex shapes, and be rotating.

An example would be a front load washing machine. Barrel shape with paddles.
Animation of this should look really nice - and the benchmark would then be
more of a real world example. (like body track, facesim, etc...)

 

Jim Dempsey

 

 

  _____  

From: parsec-users-bounces at lists.cs.princeton.edu
[mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of kishore
kumar

Sent: Thursday, June 10, 2010 7:20 PM
To: PARSEC Users
Subject: Re: [parsec-users] fluidanimate

Thank you, Matt.

Best,
Kishore Kumar Pusukuri
http://www.cs.ucr.edu/~kishore <http://www.cs.ucr.edu/%7Ekishore> 




On 10 June 2010 17:08, Matt Sinclair <msinclair at wisc.edu> wrote:

Hi Kishore,

I don't think there's any reason you can't run non-powers-of-2 with
fluidanimate.  However, I believe that somewhere in the documentation
there's a "disclaimer" saying that the way it's set up is optimal.
So, changing XDIVS and ZDIVS will obviously change that.  It should
work though, regardless.

Hope this helps,
Matt
_______________________________________________
parsec-users mailing list
parsec-users at lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/parsec-users

 


_______________________________________________
parsec-users mailing list
parsec-users at lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/parsec-users

 


_______________________________________________
parsec-users mailing list
parsec-users at lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/parsec-users

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/parsec-users/attachments/20100611/a8bcafc8/attachment.html>


More information about the parsec-users mailing list