← Back to team overview

yade-users team mailing list archive

Re: parallelization & per-step callbacks


Václav Šmilauer said:     (by the date of Sat, 11 Nov 2006 20:04:51 +0100)

> 1. Therefore, collision detection should be parallelized as well; since it
> is well-defined series of one-to-one tests, it should be rather easy,
> given that bodies are divided (by some spatial criterion) in groups,
> with but a few extra-group collisions.

Yes, it will be. Once the parallelization mechanism is available,
collision detection itself should be easy. The only problem will be
in spatial partitioning of the space domain, for start some simple
(and slow) solution will be used, just to make sure that hings work :)

> I will try (time permitting) to do some profiling of the code so that it
> is obvious what takes how much time and for what configurations
> (dense/sparse, spherical/box/... elements). Or has it been done already?

There is never enough profiling :) Bruno has done some, you can too.
In fact if I received some profiling results from Bruno and you I
will gladly put them on the webpage for everyone to see, and use.

> Or did I miss the point of parallelization completely?

nope. You hit the right spot :)
> 2. I don't know yade's internals very well, so I'd like to ask if there
> is some sort of user-definable per-timestep callback function. What I
> would like: a custom function that file-outputs velocity of an element,
> relative displacements of a few elements (and so on) so that I can graph
> it with gnuplot or whatever else.

You can have a look a VelocityRecorder, StrainRecorder,
ForceRecorder, etc. I'm using StrainRecorder to get output which I
later draw with gnuplot. All this recorder stuff is very rough now
and not well designed. In next refactoring iteration it shall change
to make things much simpler and better fitting together, as currently
this recording looks like a bit of a hack. But oh well - will be done
in time.

# Janek Kozicki
Yade-users mailing list