[ojAlgo-user] Complex SVD slow
Mathematics, linear algebra and optimisation
Brought to you by:
apete
From: Bayard F. <bf...@gm...> - 2013-04-12 21:34:25
|
I find that doing Singular Value Decomposition with ComplexNumber is much slower than with Double. For 256 rows by 64 columns, Double takes 17 ms while ComplexNumber takes 2.95 s, over a factor of 150. At lower dimensions it's only 10 to 20 times slower. The timing comparison is just for the method SingularValue.compute(). I used NetBeans profiling and found that much of the time is spent in ComplexNumber.multiply(). I can understand a factor of 4 to 6 from the number of operations, but it also does a number of other checks such as isReal() and isPolar(). The initial matrix is created with makeRectangular(). I am using v33.0, and would be happy to share my source code. |