My Oracle Support Banner

UTL_NLA.BLAS_GEMM Fails With ORA-20005: Illegal Argument For Matrix (Doc ID 2860376.1)

Last updated on APRIL 17, 2023

Applies to:

PL/SQL - Version 19.7.0.0.0 and later
Information in this document applies to any platform.

Symptoms

When calling UTL_NLA.BLAS_GEMM, the following error is raised :

Simple Testacase:

============
set serveroutput on;

DECLARE

A utl_nla_array_dbl := utl_nla_array_dbl(1, 4, 2, 5, 3, 6);

B utl_nla_array_dbl := utl_nla_array_dbl(1, 1, 1, 1, 1, 1);

C utl_nla_array_dbl := utl_nla_array_dbl(1,1,1,1,1,1);

BEGIN

UTL_NLA.BLAS_GEMM (

transa => 'N',

transb => 'N',

m => 21,

n => 1,

k => 21,

alpha => 1.0,

a => A,

lda => 21,

b => B,

ldb => 1,

beta => 1.0,

c => C,

ldc => 1,

pack => 'C'

);

dbms_output.put_line('CROSSPRODUCT');

dbms_output.put_line('------------');

FOR i IN 1..C.count LOOP

dbms_output.put_line('x' || i ||'= ' || TO_CHAR(C(i),'9999'));

END LOOP;

END;

/

ERROR at line 1:

ORA-20005: Illegal argument for matrix: The value of trans is 'N', but the leading dimension is not greater than or equal to m or the number of matrix

elements does not equal the leading dimension multiplied by the number of columns. The number of matrix elements is 6. The value of m is 21. The number

of columns is 1. The leading dimension is 1. Procedure blas_gemm. The matrix is 'b'. The leading dimension is k

 

 

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.