cpu

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 15, 2021 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	X86 X86CPU
	ARM ARMCPU
)

Functions

This section is empty.

Types

type ARMCPU

type ARMCPU uint64

func (ARMCPU) Has

func (c ARMCPU) Has(f ARMFeature) bool

func (*ARMCPU) Set

func (c *ARMCPU) Set(f ARMFeature, on bool)

type ARMFeature

type ARMFeature uint64
const (
	ASIMD    ARMFeature = 1 << iota // Advanced SIMD
	ASIMDDP                         // SIMD Dot Product
	ASIMDHP                         // Advanced SIMD half-precision floating point
	ASIMDRDM                        // Rounding Double Multiply Accumulate/Subtract (SQRDMLAH/SQRDMLSH)
)

type X86CPU

type X86CPU uint64

func (X86CPU) Has

func (c X86CPU) Has(f X86Feature) bool

func (*X86CPU) Set

func (c *X86CPU) Set(f X86Feature, on bool)

type X86Feature

type X86Feature uint64
const (
	SSE                X86Feature = 1 << iota // SSE functions
	SSE2                                      // P4 SSE functions
	SSE3                                      // Prescott SSE3 functions
	SSE4                                      // Penryn SSE4.1 functions
	SSE42                                     // Nehalem SSE4.2 functions
	SSE4A                                     // AMD Barcelona microarchitecture SSE4a instructions
	SSSE3                                     // Conroe SSSE3 functions
	AVX                                       // AVX functions
	AVX2                                      // AVX2 functions
	AVX512BF16                                // AVX-512 BFLOAT16 Instructions
	AVX512BITALG                              // AVX-512 Bit Algorithms
	AVX512BW                                  // AVX-512 Byte and Word Instructions
	AVX512CD                                  // AVX-512 Conflict Detection Instructions
	AVX512DQ                                  // AVX-512 Doubleword and Quadword Instructions
	AVX512ER                                  // AVX-512 Exponential and Reciprocal Instructions
	AVX512F                                   // AVX-512 Foundation
	AVX512IFMA                                // AVX-512 Integer Fused Multiply-Add Instructions
	AVX512PF                                  // AVX-512 Prefetch Instructions
	AVX512VBMI                                // AVX-512 Vector Bit Manipulation Instructions
	AVX512VBMI2                               // AVX-512 Vector Bit Manipulation Instructions, Version 2
	AVX512VL                                  // AVX-512 Vector Length Extensions
	AVX512VNNI                                // AVX-512 Vector Neural Network Instructions
	AVX512VP2INTERSECT                        // AVX-512 Intersect for D/Q
	AVX512VPOPCNTDQ                           // AVX-512 Vector Population Count Doubleword and Quadword
	CMOV                                      // Conditional move
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL