determinism in pzheevd

Post here if you have a question about LAPACK or ScaLAPACK algorithm or data format

determinism in pzheevd

Postby naromero » Tue Nov 20, 2012 2:07 pm


Is PZHEEVD deterministic? By that I mean, if I fix the input matrix and run PZHEEVD repeatedly on a fixed number of MPI tasks on the same architecture will I get the same result to machine precision every time. Let's assume everything is single-threaded, e.g. no threaded BLAS.

After some discussion, with a vendor (IBM) and the MPICH2 developers I am told that collectives are deterministic.

After taking a closer look at PZHEEVD, the only non-deterministic behavior I see is in the routine PZHETRD which uses BI_TreeComb which itself does not look deterministic from the use of MPI_ANY_SOURCE (define to the variable BANYNODE).

Is there a deterministic version of BI_TreeComb available?

Dr. Nichols A. Romero
Argonne Leadership Computing Facility
Posts: 11
Joined: Wed Jan 14, 2009 7:20 pm

Re: determinism in pzheevd

Postby rodney » Wed Nov 21, 2012 5:10 pm

I believe you are correct that it is the BLACS routine BI_TreeComb that is not deterministic and causing the irreproducibility you are seeing in PZHEEVD. I do not know of another version that produces consistent results on the same processor configurations. It is possible, however, that we may add this functionality to a future version of ScaLAPACK.

Posts: 49
Joined: Thu Feb 10, 2011 8:20 pm
Location: Colorado College

Return to Algorithm / Data

Who is online

Users browsing this forum: No registered users and 2 guests