Developer Reference

Contents

DSS Nonsymmetric Matrix Storage

For a non-symmetric or non-Hermitian matrix, all non-zero elements need to be stored. Consider the non-symmetric matrix
B
:
The matrix
B
has 13 non-zero elements, and all of them are stored as follows:
Storage Arrays for a Non-Symmetric Matrix
one-based indexing
values
=
(1
-1
-3
-2
5
4
6
4
-4
2
7
8
-5)
columns
=
(1
2
4
1
2
3
4
5
1
3
4
2
5)
rowIndex
=
(1
4
6
9
12
14)
 
 
 
 
 
 
 
zero-based indexing
values
=
(1
-1
-3
-2
5
4
6
4
-4
2
7
8
-5)
columns
=
(0
1
3
0
1
2
3
4
0
2
3
1
4)
rowIndex
=
(0
3
5
8
11
13)
 
 
 
 
 
 
 

Storage Format Restrictions

The storage format for the sparse solver must conform to two important restrictions:
  • the non-zero values in a given row must be placed into the
    values
    array in the order in which they occur in the row (from left to right);
  • no diagonal element can be omitted from the
    values
    array for any symmetric or structurally symmetric matrix.
The second restriction implies that if symmetric or structurally symmetric matrices have zero diagonal elements, then they must be explicitly represented in the
values
array.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804