FLOPS in Complex Array Multiplication
19 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
nauman
am 4 Jun. 2016
Kommentiert: Walter Roberson
am 5 Jun. 2016
Hi all
I have two complex number arrays of size N. If i do element by element multiplication of these two arrays, how can i calculate total no of "FLOPs" for this array multiplication?
Kindly help me. Thanks
0 Kommentare
Akzeptierte Antwort
Roger Stafford
am 5 Jun. 2016
I count six floating point operations per complex multiplication. If your matrix is N-by-N, that would be a total of 6*N^2 flops for an element-by-element multiplication.
3 Kommentare
Roger Stafford
am 5 Jun. 2016
Bearbeitet: Roger Stafford
am 5 Jun. 2016
It depends on what you mean by "N size". If you mean N-by-1 or 1-by-N, then 6*N is correct. The fundamental fact is that a multiplication of one complex number by another complex number takes six flops, consisting of four floating point multiplications and two floating point additions.
Walter Roberson
am 5 Jun. 2016
If the arrays have N elements then Yes.
a .* b = complex( real(a).*real(b) - imag(a).*imag(b), real(a).*imag(b) + imag(a).*real(b) )
2 multiplications and one addition (or subtraction) on each side, for a total of 6 operations.
Weitere Antworten (1)
Adam
am 4 Jun. 2016
doc timeit
Put the multiplication in a function, use timeit and divide the number of floating point operations (easy to calculate) by the time you get.
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!