# Complex matrix multiplication operations with data pre-conditioning in a high performance computing architecture

## Abstract

Mechanisms for performing a complex matrix multiplication operation are provided. A vector load operation is performed to load a first vector operand of the complex matrix multiplication operation to a first target vector register. The first vector operand comprises a real and imaginary part of a first complex vector value. A complex load and splat operation is performed to load a second complex vector value of a second vector operand and replicate the second complex vector value within a second target vector register. The second complex vector value has a real and imaginary part. A cross multiply add operation is performed on elements of the first target vector register and elements of the second target vector register to generate a partial product of the complex matrix multiplication operation. The partial product is accumulated with other partial products and a resulting accumulated partial product is stored in a result vector register.

- Inventors:

- Issue Date:

- Research Org.:
- International Business Machines Corporation, Armonk, NY, USA

- Sponsoring Org.:
- USDOE

- OSTI Identifier:
- 1119675

- Patent Number(s):
- 8,650,240

- Application Number:
- 12/542,324

- Assignee:
- International Business Machines Corporation (Armonk, NY) OSTI

- DOE Contract Number:
- B554331

- Resource Type:
- Patent

- Country of Publication:
- United States

- Language:
- English

- Subject:
- 97 MATHEMATICS AND COMPUTING

### Citation Formats

```
Eichenberger, Alexandre E, Gschwind, Michael K, and Gunnels, John A.
```*Complex matrix multiplication operations with data pre-conditioning in a high performance computing architecture*. United States: N. p., 2014.
Web.

```
Eichenberger, Alexandre E, Gschwind, Michael K, & Gunnels, John A.
```*Complex matrix multiplication operations with data pre-conditioning in a high performance computing architecture*. United States.

```
Eichenberger, Alexandre E, Gschwind, Michael K, and Gunnels, John A. Tue .
"Complex matrix multiplication operations with data pre-conditioning in a high performance computing architecture". United States. https://www.osti.gov/servlets/purl/1119675.
```

```
@article{osti_1119675,
```

title = {Complex matrix multiplication operations with data pre-conditioning in a high performance computing architecture},

author = {Eichenberger, Alexandre E and Gschwind, Michael K and Gunnels, John A},

abstractNote = {Mechanisms for performing a complex matrix multiplication operation are provided. A vector load operation is performed to load a first vector operand of the complex matrix multiplication operation to a first target vector register. The first vector operand comprises a real and imaginary part of a first complex vector value. A complex load and splat operation is performed to load a second complex vector value of a second vector operand and replicate the second complex vector value within a second target vector register. The second complex vector value has a real and imaginary part. A cross multiply add operation is performed on elements of the first target vector register and elements of the second target vector register to generate a partial product of the complex matrix multiplication operation. The partial product is accumulated with other partial products and a resulting accumulated partial product is stored in a result vector register.},

doi = {},

journal = {},

number = ,

volume = ,

place = {United States},

year = {2014},

month = {2}

}

Works referenced in this record:

##
Adaptive Strassen and ATLAS's DGEMM: a fast square-matrix multiply for modern high-performance systems

conference, January 2005

- D'Alberto, P.; Nicolau, A.
- Eighth International Conference on High-Performance Computing in Asia-Pacific Region (HPCASIA'05)

##
High performance software on Intel Pentium Pro processors or Micro-Ops to TeraFLOPS

conference, January 1997

- Greer, Bruce; Henry, Greg
- Proceedings of the 1997 ACM/IEEE conference on Supercomputing (CDROM) - Supercomputing '97, p. 1-13