[MMTK] Hang in DomainFinder code

Konrad Hinsen konrad.hinsen at cea.fr
Wed Apr 5 11:38:51 CEST 2006

On Apr 5, 2006, at 11:04, Gisle Sælensminde wrote:

> Domainfinder. The function rigidMovement in DomainAnalysis.py calls a
> function generalized_inverse in Numeric. This hangs somewhere down in
> the numeric code (Lapack).

There have been a couple of similar problem reports recently, all  
concerning LAPACK routines shipped with Numeric and specific versions  
of GCC. The solution that seems to help in all cases I have heard of  
is to compile Numeric using

	CFLAGS='-ffloat-store' python setup.py build

instead of the simple

	python setup.py build

> The problem is only present on our dual PIII application server  
> running
> Linux, and we have not been able to reproduce it anywhere else,
> including a sun solaris server and my own P4-based linux comuter. We
> have tried several versions of Numeric, all of them have the same
> problem, which is not surprising since the relevant pieces of code  
> have
> not changed.

Indeed. What you could try (assuming that the above trick doesn't  
work for you) is different BLAS versions and/or using the Fortran  
version of LAPACK. This is badly documented (if at all) because the  
details depend on compilers and various libraries, but anyone with  
Fortran-C mixing experience under Linux should be able to get it to  
work in an hour or so. You have a good chance of gaining some  
performance as well.

> The code below reproduce the problem on the application server:

It works fine on my Linux machines, and also on my Mac.

Konrad Hinsen
Laboratoire Léon Brillouin, CEA Saclay,
91191 Gif-sur-Yvette Cedex, France
Tel.: +33-1 69 08 79 25
Fax: +33-1 69 08 82 61
E-Mail: konrad.hinsen at cea.fr

More information about the mmtk mailing list