Using flops_div() from the lightspeed toolbox by tom minka..

1 view (last 30 days)
I'm using the Lightspeed toolbox created by Tom Minka to find the FLOP count for a project I'm using. For multiplication I used: addflops(flops_mul(matrix1, matrix2)); But for division (flops_div) it doesn't allow any input arguments, has anyone else used this toolbox and know how to properly use this function?

Answers (1)

Walter Roberson
Walter Roberson on 26 Sep 2016
Multiply the results of flops_div by the number of scalars you are dividing.
flops_div is for scalar division, not for matrix algebra division.
  3 Comments
Gina DiCarlo
Gina DiCarlo on 26 Sep 2016
Or by the number of scalars do you mean the length of the number, so in this case it would be 2 (2 and 0) and the answer would be 16?
Walter Roberson
Walter Roberson on 27 Sep 2016
For the case of A ./ B
div_count = max(numel(A),numel(B)) * flops_div
This covers the case where one of the two might be a scalar, and also covers the case where the two are the same size. The case where the two are non-scalars of different size is an error for the ./ operator.
For the case of A / B then if B is a scalar then the operation is the same as A ./ B . For the case of A / B where B is not a scalar then that is matrix algebra division and flops_div does not cover that.

Sign in to comment.

Categories

Find more on Create System Objects in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!