simd

    0

    1답변

    일부 C 코드에서 AVX2 명령어를 사용하고 있습니다.는 VPERMDidx 명령에 기초 a를 뮤팅하여, 2 개의 8 정수 및 벡터 aidx 소요 세번째, dst를 생성한다. 이것은 dst[i] = a[idx[i]] for i in 0..7과 같습니다. 이 소스는 소스를 기반으로 인덱싱되므로 소스 기반이라고합니다. 그러나 계산 된 색인은 대상 기반 양식에 있

    0

    1답변

    다시 한번 기본 어셈블리 언어를 다시 가르치기 위해 다시 뛰어 들고 있으므로 모든 것을 완전히 잊지는 않습니다. 나는이 연습 코드를 만들었습니다. 그리고 그 안에, 벡터 연산의 결과를 배열에 거꾸로 넣어야한다는 것이 밝혀졌습니다. 그렇지 않으면 틀린 대답을했습니다. 덧붙여 말하자면, 이것은 GCC가 SIMD 연산 결과를 메모리 위치로 되돌려 보내는 것과 마

    1

    1답변

    SIMD 명령어 세트를 사용하는 QT 위젯을 개발 중입니다. SSE3, AVX 및 AVX2 (simdpp는 단일 #define으로 전환 할 수 있습니다)의 3 가지 버전을 컴파일했습니다. 내가 원했던 것은 위젯이 지원되는 명령어 집합에 따라 이러한 구현간에 자동으로 전환하는 것입니다. simdpp와 함께 제공되는 설명서는 일부 메이크 마법을 사용한다 : h

    1

    1답변

    다음은 지원되는 명령어 세트를 보여주는 클래스의 예입니다. https://msdn.microsoft.com/en-us/library/hskdteyh.aspx 각각 다른 명령어 세트를 사용하는 단일 함수의 3 가지 구현을 작성하고자합니다. 그러나 플래그/ARCH : AVX2로 인해이 응용 프로그램은 인텔 프로세서의 4 세대 이상에서 실행되지 않으므로 전체 검

    2

    1답변

    난 왼쪽으로 이동하고 바이트를 추가하려면 제로 128 비트 레지스터가 있습니다. 나는 다음과 같이 그것을 바꿀 수있다 : pslldq xmm0, 1 ...하지만 지금은 빈 공간에 알을 복사하고 싶다. 예 : or xmm0, al 물론 작동하지 않습니다. 나는 영향을받은 가장 낮은 8 비트 만 원한다. 이것은 레지스터의 채우기에 연속적인 값인 al이

    1

    1답변

    쿼리 응답 프로그램을 가속화하기 위해 Intel SIMD 내장 함수를 사용하려고합니다. query_cnt이 입력에 의존하지만 SIMD 레지스터 수보다 항상 작다고 가정합니다 (즉, SIMD 레지스터를 보유하기에 충분한 SIMD 레지스터가 있음). 쿼리는 필요할 때마다로드하는 대신 애플리케이션의 핫 데이터이므로 처음에로드하고 레지스터에 항상 보관할 수 있습니

    1

    1답변

    정수 계산을 병렬 처리하기 위해 HW를 사용하려면 Vector을 실험 해 왔습니다. 벡터 작업으로 오버플로 검사를 사용할 수있는 방법이 있습니까? 예를 들어 int의 두 열 (길이가 동일한 배열)을 함께 추가하는 것입니다. 여기 c=a+b는 c[0] = a[0] + b[0], c[1] = a[1] + b[1], 의미 등 나는 이런 식으로 뭔가를 할 수있는

    2

    1답변

    저는 SSE 프로그래밍에 익숙하기 때문에 저에게 도움이 될만한 사람이 있기를 바랍니다. 최근에 GCC SSE 내장 함수를 사용하여 32 비트 정수 배열을 계산하는 함수를 구현했습니다. 내 구현을위한 코드는 아래와 같습니다. 시피 int ssum(const int *d, unsigned int len) { static const unsigned i

    4

    2답변

    나는 부동 소수점 값의 배열을 가지고 있으며, 나는 그것들 모두의 합계를 취한 다음 그 합계로 모든 것을 나누는 것과 같이 쉽게 vectorizable 연산을 할 필요가있다. 또한 배열의 개별 요소에 액세스 (대부분 읽기)해야합니다. 나는 배열의 벡터화를 가능하게하기 위해 SIMD 타입을 사용할 수 있다고 생각했다. extern crate simd; u

    1

    1답변

    각 픽셀의 값을 네 인접 픽셀의 중앙값을 사용하여 결정해야하는 비디오 처리 코드가 있습니다. 그래서, 나는 4 바이트 배열을 가지고 있으며 성능면에서 중간 값을 찾아야 만합니다. 먼저 배열을 정렬 한 다음 2 개의 중간 값의 평균을 계산해야합니다. 나는 이미지의 픽셀 절반을 위해 그렇게해야 병렬 적으로 처리 할 수 ​​있습니다. System.Numerics