HP MLIB for Itanium Linux Version 9.6.1 Release Note

HP MLIB for Itanium Linux Version 9.6.1 Release Note
Known Problems and Workarounds
HP MLIB for Itanium Linux Version 9.6.1 Release Note18
User and Library Subprogram Name Conflicts
Some applications make use of some MLIB subprograms, but not others. For example, an
application may use the MLIB matrix-multiplication subprogram DGEMM, but have its own
subprogram DCOPY. A subroutine name conflict occurs because DGEMM calls DCOPY and
expects the functionality of the MLIB DCOPY subprogram. DGEMM fails if the user’s version
of DCOPY performs a different operation.
Use the following workaround:
Change your source code to rename the application subprograms that are colliding with
the MLIB namespace. This can be done with ALIAS directives in order to minimize the
actual code changes required. The ALIAS directives can be enclosed in C preprocessor
conditional blocks so that the code will run unmodified in the current environment.
Work length for LAPACK standard eigensolver routine ZHEEVD
In the LAPACK User's Guide, documentation of the routine ZHEEVD (JOBZ, UPLO, N, A,
LDA, W, WORK, LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO) specifies if JOBZ =
'V' and N > 1, LWORK must be at least 2*N + N**2. However, to achieve optimum
performance, LWORK must be at least 2*N + N**2 + NB*N, where NB is the optimal block
size for ZUNMQR that is computed by the function ILAENV. Enough work space allows
LAPACK computational routines to go through block versions of algorithms with optimum
performance.