You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
psblas3/ReleaseNews

122 lines
4.1 KiB
Plaintext

WHAT'S NEW
Version 3.8.0-2
1. CTXT is now an opaque object.
2. OpenMP is now better integrated.
3. New non-blocking collectives.
4. Now allowing remote builds (i.e. local contributions can
now be sent to the final destination process)
5. Restore Makefiles to work on parallel builds.
Version 3.7.0.1
1. PREC%DESCR method now requires a mandatory INFO argument.
Version 3.7.0
1. Major change at API level: integer kinds reorganization.
Local indices are now of kind PSB_IPK_, whereas global indices
are of kind PSB_LPK_; at configure time it is possible to
choose them independently to be PSB_MPK_ (4 bytes) or PSB_EPK_
(8 bytes), with the constraint that LPK is always at least as
large as IPK.
2. The internals have also been reorganized heavily, with a much
more coherent design and split of functionalities into source
files.
Version 3.6.1
1. Multiple improvements to CDASB.
2. Some additional methods required by the latest versions of MLD
Version 3.5.
1. New Krylov methods methods FCG and GCR are now available.
2. Existing codes will work untouched with version 3.5, but they
will have to be recompiled; new methods have been added for the
sake of GPU computations, plus the usual bunch of bug fixes.
3. An experimental C interface is available; this is neither
complete nor fully documented, feedback welcome.
Version 3.
This version requires a working Fortran 2003 compiler; we do not use
all of the language features (specifically, so far we did not employ
FINAL subroutines), but the features we use were sufficient in
identifying bugs in ALL compilers we tried (all the bugs have been
reported and mostly fixed by the respective vendors).
The new internals have been completely overhauled, and in many cases
rewritten; they now enable a much better interfacing with user-defined
storage formats. If the user is only interested in the predefined
formats, then the user's guide should be sufficient; what is somewhat
lacking is documentation on how to add to the library, i.e. a
developers' guide; stay tuned.
The architecture of the Fortran 2003 sparse BLAS is described in
S. Filippone, A. Buttari:
Object-Oriented Techniques for Sparse Matrix Computations in Fortran
2003,
ACM Trans. on Math. Software, vol. 38, No. 4, 2012.
The ideas are explored further with the paper:
V. Cardellini, S. Filippone and D. Rouson
Design Patterns for sparse-matrix computations on
hybrid CPU/GPU platforms,
Scientific Programming, 22(2014), pp.1-19.
Version 1.0 of the library was described in:
S. Filippone, M. Colajanni
PSBLAS: A library for parallel linear algebra computation on sparse matrices
ACM Trans. on Math. Software, 26(4), Dec. 2000, pp. 527-550.
COMPILER NOTES.
This code is confirmed to work with the following compilers (or
later versions thereof):
NAGware 5.2;
GNU 4.7.3;
Cray CCE 8.0.1;
They are all recognized by the configure script.
To make the script work with the Cray CCE environment, it is
recommended to use the following:
./configure FC=ftn F77=ftn CC=cc MPF90=ftn MPF77=ftn MPCC=cc
with both CCE and GNU lower-level compilers.
For the GNU compilers 4.6.x we are aware of a number of memory management
issues that might surface in your applications; most of them (that
we're aware of) are solved in version 4.7.2 or later.
The Intel compiler up to version 12.1 fails to compile, as of the last
version we got access to.
KNOWN ISSUES.
An annoying problem exists with some versions of MPI: if the configure
script sets -DMPI_MOD the MPI call interfaces will be resolved by
using the MPI Fortran module.
However usage of the module may cause compilation to fail when
coupled with the debugging option -g, because the compiler complains
that it cannot find a matching interface for some of the
communication routines.
The solution: either take out the -g option, or, if you really need to
debug, edit Make.inc to force -DMPI_H in place of -DMPI_MOD.
RELATED SOFTWARE
If you are looking for more sophisticated preconditioners, you may be
interested in the package MLD2P4 from http://github.com/sfilippone/mld2p4-2