Skip to content

Sub-Optimal code for mixed complex*real products

Submitted by Christoph Hertzberg

Assigned to Nobody

Link to original bugzilla bug (#1712)
Version: 3.4 (development)

Description

For column-major matrices A*B, with A complex and B real would be equivalent to multiplying two real matrices where A has twice the height. Currently, Eigen is not able to vectorize this properly. Actually, clang is able to auto-vectorize this (for full FMA usage, sometimes this requires -ffast-math): https://godbolt.org/z/ILd8tL

I guess complex*real could easially be solved by Bug #1019.

But real*complex will require some new logic (essentially, the real matrix would need to have each row duplicated).

Depends on

#1019

Blocking

#1608