Functions for transposing distributed matrices available.
The regular 64-bit libraries can now handle large matrices with factors
containing more than 2 billion nonzeros without requiring an 8-byte
integer library.
Two new massively parallel platforms, Blue Gene P and Cray XT4 are
now supported.
New symmetric factorization algorithms have been introduced that
reduce memory use in multithreaded mode.
The symmetric indefinite solver with diagonal pivoting has been improved
significantly. It is faster and can now handle singular matrices.
All symmetric solvers in WSMP can now handle more than one matrices simultaneously.
Software available from alphaWorks for AIX, Linux, and SunOS.
If you need WSMP and PWSMP libraries for any other platform, please send e-mail to discuss the possibility.
If you encounter linking problems with the Linux GNU libraries, please
send e-mail to get replacement
libraries. This problem is due to incompatibility in the Fortran run-time
libraries of gfortran 4.3 Ubuntu and gfortran 4.1 Red Hat.
Please send e-mail to get a
replacement library if you encounter problems in the 32-bit MPI libraries,
including BG/P libraries.
On AIX, setting the environment variable RT_GRQ to ON if smt_threads
are enabled can result in performance degradation. RT_GRQ must be set to
OFF if smt_threads are enabled and ON if smt_threads are disabled.
The new serial/multithreaded symmetric solvers are more memory efficient
than the older ones, but may be slower for matrices whose factors are
fairly sparse. If you notice a slowdown in your application and if
memory is not a constraint, you may switch to the older solvers by setting
IPARM(31) = 5 or 6.
The calling sequences of some routines of the simple interface have
changed. Please refer to the section titled "Recent Changes and Other
Important Notes" in the User Guide for more details.
The AIX libraries are provided both with and without BLAS.
For large 3-D problems, ESSL BLAS is much faster and should be linked
with the WSMP libraries built without BLAS.
Running WSMP in 64-bit mode with multiple threads on certain Linux
distributions can result in severe memory fragmentation or memory leaks. This
is due to a bug in the glibc malloc library, and is not a WSMP bug.
If you encounter this problem, then please download the file
tcml.tar.gz and follow the instructions in
this README file to bypass glibc malloc and use
Google's TCmalloc
library instead. This should fix the problem.
On Linux, the environment variables MALLOC_TRIM_THRESHOLD_ and
MALLOC_MMAP_MAX_ must be set to -1 and 0, respectively.
On AIX, the environment variables SPINLOOPTIME and YIELDLOOPTIME
must be set to 200, AIXTHREAD_COND_DEBUG and AIXTHREAD_MUTEX_DEBUG must
be set to OFF.
The Linux versions of the distributed-memory parallel
unsymmetric solver can use only one thread per process because the
MPICH/MPI implementations on these systems are not thread-safe.
Therefore, the WSETMAXTHRDS routine must be used to set the number of
threads to 1.
HP-UX on PA-RISC, Tru64 on HP/Compaq/DEC Alpha, and SunOS
on Opteron processors are not supported any more. Older versions
can be requested by e-mail.
Example Programs
memchk.c (to check the amount of stack and heap space available to you)
triplet2cs.c (to convert a sparse matrix from triplet to CSC/CSR format)
The views and opinions expressed in this page are strictly those of the page author. The contents of this page have not been reviewed or approved by the University of Minnesota.