Flop counting of FMA
- Dominant language
- Python
- Stars
- 636
- Forks
- 81
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 7
Description
@jdsteve2 @rckirby
One issue with FLOP is whether we count `a*x + b` as one or two operations. This is called [FMA](https://en.wikipedia.org/wiki/Multiply%E2%80%93accumulate_operation#Fused_multiply.E2.80.93add). It's often faster and it has better accuracy than the two operations carried out separately. But exactly since it's accuracy is different, compilers generally won't compile them as an FMA unless you specify `-cl-fast-relaxed-math`. There is also a `fma` function in OpenCL that allows you to explicitly ask for an FMA on a per-operation basis.
Since there are enough moving parts and since loopy doesn't yet take do anything to manage FMAs itself, I think we should have a knob on whether FMAs should count as one or two flops in the flop counter.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.