Open jroelofs opened 8 months ago
Can you explain the motivation behind this idea? I had the impression that FMV by design is supposed to abstract the version selection away from the user and decide which version to call based on runtime detection.
The general idea is that sometimes it's beneficial to fall back on implementations with a lower FMV score when the problem size is small enough, or to handle some infrequent edge case. Don't take this too literally, but consider, e.g. SME engines: they're usually designed for medium to large problems, whereas NEON units are typically better at small problem sizes, so you might want to call the NEON implementation from the SME implementation.
Contrived example: https://clang.godbolt.org/z/WqMYbhrfv