Enum opencv::core::CpuFeatures

source ·
#[repr(C)]
pub enum CpuFeatures {
Show 46 variants CPU_MMX = 1, CPU_SSE = 2, CPU_SSE2 = 3, CPU_SSE3 = 4, CPU_SSSE3 = 5, CPU_SSE4_1 = 6, CPU_SSE4_2 = 7, CPU_POPCNT = 8, CPU_FP16 = 9, CPU_AVX = 10, CPU_AVX2 = 11, CPU_FMA3 = 12, CPU_AVX_512F = 13, CPU_AVX_512BW = 14, CPU_AVX_512CD = 15, CPU_AVX_512DQ = 16, CPU_AVX_512ER = 17, CPU_AVX_512IFMA512 = 18, CPU_AVX_512PF = 19, CPU_AVX_512VBMI = 20, CPU_AVX_512VL = 21, CPU_AVX_512VBMI2 = 22, CPU_AVX_512VNNI = 23, CPU_AVX_512BITALG = 24, CPU_AVX_512VPOPCNTDQ = 25, CPU_AVX_5124VNNIW = 26, CPU_AVX_5124FMAPS = 27, CPU_NEON = 100, CPU_NEON_DOTPROD = 101, CPU_NEON_FP16 = 102, CPU_NEON_BF16 = 103, CPU_MSA = 150, CPU_RISCVV = 170, CPU_VSX = 200, CPU_VSX3 = 201, CPU_RVV = 210, CPU_LSX = 230, CPU_LASX = 231, CPU_AVX512_SKX = 256, CPU_AVX512_COMMON = 257, CPU_AVX512_KNL = 258, CPU_AVX512_KNM = 259, CPU_AVX512_CNL = 260, CPU_AVX512_CLX = 261, CPU_AVX512_ICL = 262, CPU_MAX_FEATURE = 512,
}
Expand description

Available CPU features.

Variants§

§

CPU_MMX = 1

§

CPU_SSE = 2

§

CPU_SSE2 = 3

§

CPU_SSE3 = 4

§

CPU_SSSE3 = 5

§

CPU_SSE4_1 = 6

§

CPU_SSE4_2 = 7

§

CPU_POPCNT = 8

§

CPU_FP16 = 9

§

CPU_AVX = 10

§

CPU_AVX2 = 11

§

CPU_FMA3 = 12

§

CPU_AVX_512F = 13

§

CPU_AVX_512BW = 14

§

CPU_AVX_512CD = 15

§

CPU_AVX_512DQ = 16

§

CPU_AVX_512ER = 17

§

CPU_AVX_512IFMA512 = 18

§

CPU_AVX_512PF = 19

§

CPU_AVX_512VBMI = 20

§

CPU_AVX_512VL = 21

§

CPU_AVX_512VBMI2 = 22

§

CPU_AVX_512VNNI = 23

§

CPU_AVX_512BITALG = 24

§

CPU_AVX_512VPOPCNTDQ = 25

§

CPU_AVX_5124VNNIW = 26

§

CPU_AVX_5124FMAPS = 27

§

CPU_NEON = 100

§

CPU_NEON_DOTPROD = 101

§

CPU_NEON_FP16 = 102

§

CPU_NEON_BF16 = 103

§

CPU_MSA = 150

§

CPU_RISCVV = 170

§

CPU_VSX = 200

§

CPU_VSX3 = 201

§

CPU_RVV = 210

§

CPU_LSX = 230

§

CPU_LASX = 231

§

CPU_AVX512_SKX = 256

Skylake-X with AVX-512F/CD/BW/DQ/VL

§

CPU_AVX512_COMMON = 257

Common instructions AVX-512F/CD for all CPUs that support AVX-512

§

CPU_AVX512_KNL = 258

Knights Landing with AVX-512F/CD/ER/PF

§

CPU_AVX512_KNM = 259

Knights Mill with AVX-512F/CD/ER/PF/4FMAPS/4VNNIW/VPOPCNTDQ

§

CPU_AVX512_CNL = 260

Cannon Lake with AVX-512F/CD/BW/DQ/VL/IFMA/VBMI

§

CPU_AVX512_CLX = 261

Cascade Lake with AVX-512F/CD/BW/DQ/VL/VNNI

§

CPU_AVX512_ICL = 262

Ice Lake with AVX-512F/CD/BW/DQ/VL/IFMA/VBMI/VNNI/VBMI2/BITALG/VPOPCNTDQ

§

CPU_MAX_FEATURE = 512

Trait Implementations§

source§

impl Clone for CpuFeatures

source§

fn clone(&self) -> CpuFeatures

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CpuFeatures

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<CpuFeatures> for i32

source§

fn from(v: CpuFeatures) -> Self

Converts to this type from the input type.
source§

impl PartialEq for CpuFeatures

source§

fn eq(&self, other: &CpuFeatures) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl TryFrom<i32> for CpuFeatures

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(value: i32) -> Result<Self, Self::Error>

Performs the conversion.
source§

impl Copy for CpuFeatures

source§

impl Eq for CpuFeatures

source§

impl StructuralPartialEq for CpuFeatures

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Copy,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.