FLOPS in Complex Array Multiplication
17 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
nauman
el 4 de Jun. de 2016
Comentada: Walter Roberson
el 5 de Jun. de 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 comentarios
Respuesta aceptada
Roger Stafford
el 5 de Jun. de 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 comentarios
Roger Stafford
el 5 de Jun. de 2016
Editada: Roger Stafford
el 5 de Jun. de 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
el 5 de Jun. de 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.
Más respuestas (1)
Adam
el 4 de Jun. de 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.
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!