[aspect-devel] Will setting 'Tracer weight = 10' improve the performance of the particle generation algorithm on a uniform grid?

Rene Gassmoeller rene.gassmoeller at mailbox.org
Tue Aug 23 13:56:56 PDT 2016

Hi Ngoc,

The tracer weight is used in the 'repartition' load balancing strategy,
and it usually only helps performance if you have an 'imbalanced'
distribution of particles, i.e. if you have cells that contain a lot of
particles, and others that contain only few (or no) particles. In
uniform grids this often is not a problem, unless you already generate
the particles in a non-uniform way. If you have an imbalanced particle
distribution in your model it is possible that playing with this
parameter improves performance for you, however 10 is already a
reasonable default value, varying it between 5 and 50 might improve
performance slightly. Unfortunately there is no perfect guess for this
number, because it essentially means: How expensive is it to handle one
particle compared to one cell (which gets assigned a value of 1000).
This factor of course depends on a lot of things: How expensive is your
matrix assembly and solver? What particle integrator do you use? How
expensive is the update of your particle properties?

So feel free to experiment a bit, but usually the performance gain is on
the order of 10% to find the optimal number for your model.

But talking about particle performance: I will probably send another
email in the foreseeable future, but recently we made a number of
changes (some are not merged yet) that should significantly improve
particle performance. The actual gain will depend on the model, but with
recent development versions of deal.II and ASPECT compared to deal.II
8.4 and ASPECT 1.4 you might expect anything from 60% to 90% reduction
in particle time. So in case you spend too much time for particles
consider updating your deal.II and ASPECT (or wait until everything is
in place, probably next week or so).



On 08/22/2016 08:57 PM, Ngoc Nguyen wrote:
> Hi, 
> I'm a member of Professor Puckett's Summer REU group working on
> benchmarking the active particles. 
> We're looking at the *.prm file
>     https://github.com/geodynamics/aspect/blob/master/tests/particle_load_balancing_repartition.prm.8.4
> <https://github.com/geodynamics/aspect/blob/master/tests/particle_load_balancing_repartition.prm.8.4>
> and wondering if setting ' Tracer weight = 10'
>       subsection Tracers
>         set Number of tracers = 100
>         set Time between data output = 1
>         set Load balancing strategy = repartition
>         set Data output format = none
>         set Tracer weight = 10
>         set Integration scheme = euler
>       end
> will improve the performance of the particle generation algorithm on a
> uniform grid?
> Also, is there any documentation regarding how to best scale the use
> of particles on a distributed memory cluster?
> Sincerely,
> Ngoc Nguyen
> _______________________________________________
> Aspect-devel mailing list
> Aspect-devel at geodynamics.org
> http://lists.geodynamics.org/cgi-bin/mailman/listinfo/aspect-devel

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.geodynamics.org/pipermail/aspect-devel/attachments/20160823/5a2d7137/attachment.html>

More information about the Aspect-devel mailing list