FLOPS in Complex Array Multiplication

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

 采纳的回答

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 个评论

Hi Roger Thanks. It means if i multiply two N size complex arrays, "element by element", total no of flops would be 6N. Am i right?
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.
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.

请先登录,再进行评论。

更多回答(1 个)

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.

1 个评论

Hi Adam Thanks for help. Actually i need to theoretically calculate FLOPs for N size complex arrays multiplication

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Matrix Indexing 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by