Avx512DQ 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
중요
이 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 |
적용 대상
.NET