On Thu, Feb 04, 2010 at 12:07:23AM +0100, Johan Jansson wrote:
Hi!
The upcoming FEniCS conference is a good opportunity for a directed
push in the development in FEniCS. There has been activity in
parallel computing in FEniCS over the last two years, but the
critical mass to make parallel performance an integral part of
FEniCS has not yet been attained.
I would like to float the idea of making parallel performance the
target for the conference. A realistic goal could be strong
near-linear scaling up to ~100 CPUs for a non-trivial PDE (e.g.
Navier-Stokes).
Currently there are two branches of parallel development: 1. a
branch based on DOLFIN 0.8.0 (the work of Niclas Jansson at CTL/KTH)
and 2. the trunk of DOLFIN (joint effort by DOLFIN developers to
integrate Niclas' branch with other parallel work and DOLFIN
updates). The performance results are already there in 1, and
progress has already been made in the integration in 2 (helped
nicely by Anders Logg hosting a week of code in Smögen this fall).
Parallel computing is one of the key research areas of the CTL group
at KTH, and we intend to put significant effort into reaching the
target, given that this strategy is adopted. I think by making
parallel performance top priority in the project, it would also be a
realistic target, and open up the project to new applications, more
exposure, etc.
Best,
Johan
Sounds good. It is also in line with what has been discussed earlier
that the focus from here on to the release of DOLFIN 1.0 (which will
hopefully happen in June) should be on performance and bug fixes (not
new features).
But I'm surprised that the 0.8 branch is still in active use. Are you
actually still using it??? And why?
Anyway, a top priority now should be to look at our current set of
benchmarks for DOLFIN and make sure they are interesting and cover
everything we want to test (probably not) and add the missing pieces.
We have recently bought a new server that will function as a dedicated
benchbot for FEniCS and report nightly results. That can be used to
track regressions and monitor the progress of the effort to improve
performance.
--
Anders