horizontale Summe von 8 gepackten 32-Bit-Floats
Wenn ich 8 gepackte 32-Bit-Gleitkommazahlen habe (__m256
), wie kann man am schnellsten die horizontale Summe aller 8 Elemente extrahieren? Wie erhält man das horizontale Maximum und Minimum? Mit anderen Worten, was ist die beste Implementierung für die folgenden C ++ - Funktionen?
float sum(__m256 x); ///< returns sum of all 8 elements
float max(__m256 x); ///< returns the maximum of all 8 elements
float min(__m256 x); ///< returns the minimum of all 8 elements