Documentation
¶
Overview ¶
Package vec provides both vectorized assembly and pure-go implementations for various algorithms. The vectorized implementation using SSE instructions is used if the package is built using the "sse" build tag.
Index ¶
- func AbsF(r []float64, x []float64)
- func AbsI(r []int64, x []int64)
- func AddBB(r []int64, x []byte, y []byte)
- func AddBi(r []int64, x []byte, y int64)
- func AddFF(r []float64, x []float64, y []float64)
- func AddFf(r []float64, x []float64, y float64)
- func AddIB(r []int64, x []int64, y []byte)
- func AddII(r []int64, x []int64, y []int64)
- func AddIi(r []int64, x []int64, y int64)
- func AndBB(r []byte, x []byte, y []byte)
- func AndBb(r []byte, x []byte, y uint32)
- func AndIb(r []byte, x []int64, y uint32)
- func AndIi(r []int64, x []int64, y int64)
- func AndO(x []byte) int64
- func B2I(r []int64, x []byte)
- func CaseOBB(r []byte, x []byte, y []byte)
- func CaseOBb(r []byte, x []byte, y uint32)
- func Ceil(r []float64, x []float64)
- func DivFF(r []float64, x []float64, y []float64)
- func DivFf(r []float64, x []float64, y float64)
- func DivIp2(r, x []int64, y int64)
- func DivfF(r []float64, x float64, y []float64)
- func Enum(r []int64)
- func EqBB(r []byte, x []byte, y []byte)
- func EqBb(r []byte, x []byte, y uint32)
- func EqFF(r []byte, x []float64, y []float64)
- func EqIB(r []byte, x []int64, y []byte)
- func EqII(r []byte, x []int64, y []int64)
- func EqfF(r []byte, x float64, y []float64)
- func EqiI(r []byte, x int64, y []int64)
- func Floor(r []float64, x []float64)
- func GtBB(r []byte, x []byte, y []byte)
- func GtBI(r []byte, x []byte, y []int64)
- func GtBb(r []byte, x []byte, y uint32)
- func GtFF(r []byte, x []float64, y []float64)
- func GtFf(r []byte, x []float64, y float64)
- func GtIB(r []byte, x []int64, y []byte)
- func GtII(r []byte, x []int64, y []int64)
- func GtIi(r []byte, x []int64, y int64)
- func GtbB(r []byte, x uint32, y []byte)
- func GtfF(r []byte, x float64, y []float64)
- func GtiI(r []byte, x int64, y []int64)
- func MaxB(x uint32, y []byte) int64
- func MaxBB(r []byte, x []byte, y []byte)
- func MaxBb(r []byte, x []byte, y uint32)
- func MaxF(x float64, y []float64) float64
- func MaxFF(r []float64, x []float64, y []float64)
- func MaxFf(r []float64, x []float64, y float64)
- func MaxI(x int64, y []int64) int64
- func MinB(x uint32, y []byte) int64
- func MinBB(r []byte, x []byte, y []byte)
- func MinBb(r []byte, x []byte, y uint32)
- func MinF(x float64, y []float64) float64
- func MinFF(r []float64, x []float64, y []float64)
- func MinFf(r []float64, x []float64, y float64)
- func MinI(x int64, y []int64) int64
- func MinMaxB(mi uint32, ma uint32, y []byte) (uint32, uint32)
- func MinMaxI(mi, ma int64, y []int64) (int64, int64)
- func MulFF(r []float64, x []float64, y []float64)
- func MulFf(r []float64, x []float64, y float64)
- func MulIp2(r, x []int64, y int64)
- func MulOB(r []byte, x []byte, y []byte)
- func MulOI(r []int64, x []byte, y []int64)
- func MulOb(r []byte, x []byte, y uint32)
- func MulOi(r []int64, x []byte, y int64)
- func NaN(r []byte, x []float64)
- func NotO(r []byte, x []byte)
- func OrBB(r []byte, x []byte, y []byte)
- func OrO(x []byte) int64
- func RoundToEven(r []float64, x []float64)
- func ScanMaxF(r []float64, x float64, y []float64)
- func ScanMinF(r []float64, x float64, y []float64)
- func ScanSumF(r []float64, x float64, y []float64)
- func ScanSumI(r []int64, x int64, y []int64)
- func SignF(r []float64, x []float64)
- func SignI(r []int64, x []int64)
- func Sqrt(r []float64, x []float64)
- func SubBB(r []int64, x []byte, y []byte)
- func SubBI(r []int64, x []byte, y []int64)
- func SubFF(r []float64, x []float64, y []float64)
- func SubIB(r []int64, x []int64, y []byte)
- func SubII(r []int64, x []int64, y []int64)
- func SubfF(r []float64, x float64, y []float64)
- func SubiB(r []int64, x int64, y []byte)
- func SubiI(r []int64, x int64, y []int64)
- func SumB(x []byte) int64
- func SumF(x []float64) float64
- func SumI(x []int64) int64
- func WAddBB(r []byte, x []byte, y []byte)
- func WAddBi(r []byte, x []byte, y int32)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MinMaxI ¶
MinMaxI folds over y searching for min and max. It doesn't directly translate to any primitive but is used for computing range by some. NOTE: SSE vectorized version was not much of an improvement on my machines.
func RoundToEven ¶
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.