다음을 통해 공유


Avx512DQ 클래스

정의

중요

이 API는 CLS 규격이 아닙니다.

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

public ref class Avx512DQ abstract : System::Runtime::Intrinsics::X86::Avx512F
[System.CLSCompliant(false)]
public abstract class Avx512DQ : System.Runtime.Intrinsics.X86.Avx512F
[<System.CLSCompliant(false)>]
type Avx512DQ = class
    inherit Avx512F
Public MustInherit Class Avx512DQ
Inherits Avx512F
상속
특성

속성

IsSupported

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

메서드

And(Vector512<Double>, Vector512<Double>)

__m512d _mm512_and_pd(a, __m512d b __m512d)

VANDPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

And(Vector512<Single>, Vector512<Single>)

__m512 _mm512_and_ps(a, __m512 b __m512)

VANDPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

AndNot(Vector512<Double>, Vector512<Double>)

__m512d _mm512_andnot_pd(a, __m512d b __m512d)

VANDNPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

AndNot(Vector512<Single>, Vector512<Single>)

__m512 _mm512_andnot_ps(a, __m512 b __m512)

VANDNPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

BroadcastPairScalarToVector512(Vector128<Int32>)

__m512i _mm512_broadcast_i32x2(__m128i a)

VBROADCASTI32x2 zmm1 {k1}{z}, xmm2/m64

BroadcastPairScalarToVector512(Vector128<Single>)

__m512 _mm512_broadcast_f32x2(__m128)

VBROADCASTF32x2 zmm1 {k1}{z}, xmm2/m64

BroadcastPairScalarToVector512(Vector128<UInt32>)

__m512i _mm512_broadcast_i32x2(__m128i a)

VBROADCASTI32x2 zmm1 {k1}{z}, xmm2/m64

BroadcastVector128ToVector512(Double*)

__m512d _mm512_broadcast_f64x2(__m128d const * mem_addr)

VBROADCASTF64x2 zmm1 {k1}{z}, m128

BroadcastVector128ToVector512(Int64*)

__m512i _mm512_broadcast_i64x2(__m128i const * mem_addr)

VBROADCASTI64x2 zmm1 {k1}{z}, m128

BroadcastVector128ToVector512(UInt64*)

__m512i _mm512_broadcast_i64x2(__m128i const * mem_addr)

VBROADCASTI64x2 zmm1 {k1}{z}, m128

BroadcastVector256ToVector512(Int32*)

__m512i _mm512_broadcast_i32x8(__m256i const * mem_addr)

VBROADCASTI32x8 zmm1 {k1}{z}, m256

BroadcastVector256ToVector512(Single*)

__m512 _mm512_broadcast_f32x8(__m256 const * mem_addr)

VBROADCASTF32x8 zmm1 {k1}{z}, m256

BroadcastVector256ToVector512(UInt32*)

__m512i _mm512_broadcast_i32x8(__m256i const * mem_addr)

VBROADCASTI32x8 zmm1 {k1}{z}, m256

ConvertToVector256Single(Vector512<Int64>)

__m512 _mm512_cvtepi64_ps(__m512i)

VCVTQQ2PS ymm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector256Single(Vector512<Int64>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector256Single(Vector512<UInt64>)

__m512 _mm512_cvtepu64_ps(__m512i a)

VCVTUQQ2PS ymm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector256Single(Vector512<UInt64>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512Double(Vector512<Int64>)

__m512d _mm512_cvtepi64_pd(__m512i)

VCVTQQ2PD zmm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector512Double(Vector512<Int64>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512Double(Vector512<UInt64>)

__m512d _mm512_cvtepu64_pd(__m512i)

VCVTUQQ2PD zmm1 {k1}{z}, zmm2/m512/m64bcst

ConvertToVector512Double(Vector512<UInt64>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512Int64(Vector256<Single>)

__m512i _mm512_cvtps_epi64(__m512)

VCVTPS2QQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512Int64(Vector256<Single>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512Int64(Vector512<Double>)

__m512i _mm512_cvtpd_epi64(__m512d)

VCVTPD2QQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

ConvertToVector512Int64(Vector512<Double>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512Int64WithTruncation(Vector256<Single>)

__m512i _mm512_cvttps_epi64(__m512 a)

VCVTTPS2QQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512Int64WithTruncation(Vector512<Double>)

__m512i _mm512_cvttpd_epi64(__m512)

VCVTTPD2QQ zmm1 {k1}{z}, zmm2/m512/m64bcst{sae}

ConvertToVector512UInt64(Vector256<Single>)

__m512i _mm512_cvtps_epu64(__m512)

VCVTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512UInt64(Vector256<Single>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512UInt64(Vector512<Double>)

__m512i _mm512_cvtpd_epu64(__m512d)

VCVTPD2UQQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

ConvertToVector512UInt64(Vector512<Double>, FloatRoundingMode)

내장 함수를 통해 X86 AVX512DQ 하드웨어 지침에 액세스할 수 있습니다.

ConvertToVector512UInt64WithTruncation(Vector256<Single>)

__m512i _mm512_cvttps_epu64(__m512)

VCVTTPS2UQQ zmm1 {k1}{z}, ymm2/m256/m32bcst{er}

ConvertToVector512UInt64WithTruncation(Vector512<Double>)

__m512i _mm512_cvttpd_epu64(__m512d)

VCVTTPD2UQQ zmm1 {k1}{z}, zmm2/m512/m64bcst{er}

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
ExtractVector128(Vector512<Double>, Byte)

__m128d _mm512_extractf64x2_pd(__m512d, const int imm8)

VEXTRACTF64x2 xmm1/m128 {k1}{z}, zmm2, imm8

ExtractVector128(Vector512<Int64>, Byte)

__m128i _mm512_extracti64x2_epi64(__m512i, const int imm8)

VEXTRACTI64x2 xmm1/m128 {k1}{z}, zmm2, imm8

ExtractVector128(Vector512<UInt64>, Byte)

__m128i _mm512_extracti64x2_epi64(__m512i, const int imm8)

VEXTRACTI64x2 xmm1/m128 {k1}{z}, zmm2, imm8

ExtractVector256(Vector512<Int32>, Byte)

__m256i _mm512_extracti32x8_epi32(__m512i, const int imm8)

VEXTRACTI32x8 ymm1/m256 {k1}{z}, zmm2, imm8

ExtractVector256(Vector512<Single>, Byte)

__m256 _mm512_extractf32x8_ps(__m512, const int imm8)

VEXTRACTF32x8 ymm1/m256 {k1}{z}, zmm2, imm8

ExtractVector256(Vector512<UInt32>, Byte)

__m256i _mm512_extracti32x8_epi32(__m512i, const int imm8)

VEXTRACTI32x8 ymm1/m256 {k1}{z}, zmm2, imm8

GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
InsertVector128(Vector512<Double>, Vector128<Double>, Byte)

__m512d _mm512_insertf64x2_pd(a, __m128d b, int imm8 __m512d)

VINSERTF64x2 zmm1 {k1}{z}, zmm2, xmm3/m128, imm8

InsertVector128(Vector512<Int64>, Vector128<Int64>, Byte)

__m512i _mm512_inserti64x2_si512(a, __m128i b, const int imm8 __m512i)

VINSERTI64x2 zmm1 {k1}{z}, zmm2, xmm3/m128, imm8

InsertVector128(Vector512<UInt64>, Vector128<UInt64>, Byte)

__m512i _mm512_inserti64x2_si512(a, __m128i b, const int imm8 __m512i)

VINSERTI64x2 zmm1 {k1}{z}, zmm2, xmm3/m128, imm8

InsertVector256(Vector512<Int32>, Vector256<Int32>, Byte)

__m512i _mm512_inserti32x8_si512(__m512i, __m256i b, const int imm8)

VINSERTI32x8 zmm1 {k1}{z}, zmm2, xmm3/m256, imm8

InsertVector256(Vector512<Single>, Vector256<Single>, Byte)

__m512 _mm512_insertf32x8_ps(__m512, __m256 b, int imm8)

VINSERTF32x8 zmm1 {k1}{z}, zmm2, xmm3/m256, imm8

InsertVector256(Vector512<UInt32>, Vector256<UInt32>, Byte)

__m512i _mm512_inserti32x8_si512(__m512i, __m256i b, const int imm8)

VINSERTI32x8 zmm1 {k1}{z}, zmm2, xmm3/m256, imm8

MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
MultiplyLow(Vector512<Int64>, Vector512<Int64>)

__m512i _mm512_mullo_epi64(a, __m512i b __m512i)

VPMULLQ zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

MultiplyLow(Vector512<UInt64>, Vector512<UInt64>)

__m512i _mm512_mullo_epi64(a, __m512i b __m512i)

VPMULLQ zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

Or(Vector512<Double>, Vector512<Double>)

__m512d _mm512_or_pd(a, __m512d b __m512d)

VORPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

Or(Vector512<Single>, Vector512<Single>)

__m512 _mm512_or_ps(a, __m512 b __m512)

VORPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

Range(Vector512<Double>, Vector512<Double>, Byte)

__m512d _mm512_range_pd(__m512d, __m512d b, int imm); VRANGEPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst{sae}, imm8

Range(Vector512<Single>, Vector512<Single>, Byte)

__m512 _mm512_range_ps(__m512, __m512 b, int imm); VRANGEPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst{sae}, imm8

RangeScalar(Vector128<Double>, Vector128<Double>, Byte)

__m128d _mm_range_sd(__m128d, __m128d b, int imm); VRANGESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8

RangeScalar(Vector128<Single>, Vector128<Single>, Byte)

__m128 _mm_range_ss(__m128, __m128 b, int imm); VRANGESS xmm1 {k1}{z}, xmm2, xmm3/m32{sae}, imm8

Reduce(Vector512<Double>, Byte)

__m512d _mm512_reduce_pd(__m512d, int imm); VREDUCEPD zmm1 {k1}{z}, zmm2/m512/m64bcst{sae}, imm8

Reduce(Vector512<Single>, Byte)

__m512 _mm512_reduce_ps(__m512, int imm); VREDUCEPS zmm1 {k1}{z}, zmm2/m512/m32bcst{sae}, imm8

ReduceScalar(Vector128<Double>, Byte)

__m128d _mm_reduce_sd(__m128d, int imm); VREDUCESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8

ReduceScalar(Vector128<Double>, Vector128<Double>, Byte)

__m128d _mm_reduce_sd(__m128d, __m128d b, int imm); VREDUCESD xmm1 {k1}{z}, xmm2, xmm3/m64{sae}, imm8 위의 네이티브 서명이 없습니다. 다른 스칼라 API와의 일관성을 위해 이 추가 오버로드를 제공합니다.

ReduceScalar(Vector128<Single>, Byte)

__m128 _mm_reduce_ss(__m128, int imm); VREDUCESS xmm1 {k1}{z}, xmm2, xmm3/m32{sae}, imm8

ReduceScalar(Vector128<Single>, Vector128<Single>, Byte)

__m128 _mm_reduce_ss(__m128, __m128 b, int imm); VREDUCESS xmm1 {k1}{z}, xmm2, xmm3/m32{sae}, imm8 위의 네이티브 서명이 없습니다. 다른 스칼라 API와의 일관성을 위해 이 추가 오버로드를 제공합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
Xor(Vector512<Double>, Vector512<Double>)

__m512d _mm512_xor_pd(a, __m512d b __m512d)

VXORPD zmm1 {k1}{z}, zmm2, zmm3/m512/m64bcst

Xor(Vector512<Single>, Vector512<Single>)

__m512 _mm512_xor_ps(a, __m512 b __m512)

VXORPS zmm1 {k1}{z}, zmm2, zmm3/m512/m32bcst

적용 대상