General Information
Library Note
Morgan's Library Page Header
Which has the higher priority in your organization: Deploying a new database or securing the ones you already have?
Looking for a website, and resources, dedicated solely to securing Oracle databases? Check out DBSecWorx .
Purpose
UT iL ity N umerical L inear A lgebra: PL/SQL language bindings for the BLAS and LAPACK libraries.
AUTHID
DEFINER
Data Types
CREATE OR REPLACE TYPE UTL_NLA_ARRAY_DBL is VARRAY(1000000) OF BINARY_DOUBLE;
/
CREATE OR REPLACE TYPE UTL_NLA_ARRAY_FLT is VARRAY(1000000) OF BINARY_FLOAT;
/
CREATE OR REPLACE TYPE UTL_NLA_ARRAY_INT is VARRAY(1000000) OF INTEGER;
/
SUBTYPE scalar_double IS BINARY_DOUBLE NOT NULL;
SUBTYPE scalar_float IS BINARY_FLOAT NOT NULL;
SUBTYPE flag IS CHAR(1) NOT NULL;
Dependencies
DBMS_STANDARD
SDO_TIN_PKG
UTL_NLA_ARRAY_FLT
NLS_SESSION_PARAMETERS
UTL_MAT_LIB
UTL_NLA_ARRAY_INT
PLITBLM
UTL_NLA_ARRAY_DBL
Documented
Yes
First Available
12.1.0
Security Model
Owned by SYS with EXECUTE granted to PUBLIC
Source
$ORACLE_HOME/rdbms/admin/utlnla.sql
Subprograms
BLAS_ASUM
BLAS_SYMV
LAPACK_GESVD
BLAS_AXPY
BLAS_SYR
LAPACK_GTSV
BLAS_COPY
BLAS_SYR2
LAPACK_PBSV
BLAS_DOT
BLAS_SYR2K
LAPACK_POSV
BLAS_GBMV
BLAS_SYRK
LAPACK_PPSV
BLAS_GEMM
BLAS_TBMV
LAPACK_PTSV
BLAS_GEMV
BLAS_TBSV
LAPACK_SBEV
BLAS_GER
BLAS_TPMV
LAPACK_SBEVD
BLAS_IAMAX
BLAS_TPSV
LAPACK_SPEV
BLAS_NRM2
BLAS_TRMM
LAPACK_SPEVD
BLAS_ROT
BLAS_TRMV
LAPACK_SPSV
BLAS_ROTG
BLAS_TRSM
LAPACK_STEV
BLAS_SBMV
BLAS_TRSV
LAPACK_STEVD
BLAS_SCAL
LAPACK_GBSV
LAPACK_SYEV
BLAS_SPMV
LAPACK_GEES
LAPACK_SYEVD
BLAS_SPR
LAPACK_GEEV
LAPACK_SYSV
BLAS_SPR2
LAPACK_GELS
UNIT_TEST_BLAS
BLAS_SWAP
LAPACK_GESDD
UNIT_TEST_LAPACK
BLAS_SYMM
LAPACK_GESV
BLAS_AXPY
Copies alpha*X + Y into vector Y
Overload 1
utl_nla.blas_axpy(
n IN POSITIVEN,
alpha IN scalar_double,
x IN utl_nla_array_dbl,
incx IN POSITIVEN,
y IN OUT utl_nla_array_dbl,
incy IN POSITIVEN);
TBD
Overload 2
utl_nla.blas_axpy(
n IN POSITIVEN,
alpha IN scalar_float,
x IN utl_nla_array_flt ,
incx IN POSITIVEN,
y IN OUT utl_nla_array_flt ,
incy IN POSITIVEN);
TBD
BLAS_COPY
Copies the contents of vector X to vector Y
Overload 1
utl_nla.blas_copy(
n IN POSITIVEN,
x IN utl_nla_array_dbl,
incx IN POSITIVEN,
y IN OUT utl_nla_array_dbl,
incy IN POSITIVEN);
TBD
Overload 2
utl_nla.blas_copy(
n IN POSITIVEN,
x IN OUT utl_nla_array_flt ,
incx IN POSITIVEN,
y IN OUT utl_nla_array_flt ,
incy IN POSITIVEN);
TBD
BLAS_DOT
Returns the dot (scalar) product of two vectors X and Y
Overload 1
utl_nla.blas_dot(
n IN POSITIVEN,
x IN utl_nla_array_dbl,
incx IN POSITIVEN,
y IN utl_nla_array_dbl,
incy IN POSITIVEN)
RETURN BINARY_DOUBLE;
TBD
Overload 2
utl_nla.blas_dot(
n IN POSITIVEN,
x IN UTL_NLA_ARRAY_FLT ,
incx IN POSITIVEN,
y IN UTL_NLA_ARRAY_FLT ,
incy IN POSITIVEN)
RETURN BINARY_FLOAT;
TBD
BLAS_SCAL
Scales a vector by a constant
Overload 1
utl_nla.blas_scal(
n IN POSITIVEN,
alpha IN scalar_double,
x IN OUT utl_nla_array_dbl,
incx IN POSITIVEN);
TBD
Overload 2
utl_nla.blas_scal(
n IN POSITIVEN,
alpha IN scalar_float,
x IN OUT utl_nla_array_flt ,
incx IN POSITIVEN);
TBD
BLAS_SWAP
Swaps the contents of two vectors each of size n
Overload 1
utl_nla.blas_swap(
n IN POSITIVEN,
x IN OUT utl_nla_array_dbl,
incx IN POSITIVEN,
y IN OUT utl_nla_array_dbl,
incy IN POSITIVEN);
TBD
Overload 2
utl_nla.blas_swap(
n IN POSITIVEN,
x IN OUT utl_nla_array_flt ,
incx IN POSITIVEN,
y IN OUT utl_nla_array_flt ,
incy IN POSITIVEN);
TBD
UNIT_TEST_BLAS
Undocumented
utl_nla.unit_test_blas;
exec utl_nla.unit_test_blas ;
UNIT_TEST_LAPACK
Undocumented
utl_nla.unit_test_lapack;
exec utl_nla.unit_test_lapack ;