simd

    1

    1답변

    C/C++에서 SIMD (AVX 및 AVX2와 같은) 명령어에 내장 함수를 사용할 수 있습니다. Rust에서 SIMD를 사용할 방법이 있습니까?

    1

    1답변

    this question에 따르면 이번에는 5 x 5 및 7 x 7의 가로 덧셈을 구현했습니다. 제대로 작동하지만 빠르지 않습니다. 더 빠를 수 있습니까? hadd과 다른 명령어를 사용하려고했지만 개선이 제한되었습니다. 예를 들어, _mm256_bsrli_epi128을 사용하면 약간 더 나아졌지만 차선 때문에 이점을 망칠 여분의 순열이 필요합니다. 따라서

    -1

    1답변

    일부 프로젝트에서 SIMD 명령어를 사용하려고하는데 _mm_set1_epi32 (x) 명령을 사용할 수 없다는 것을 제외하면 모든 것이 잘 작동합니다 (_mm_set_epi32 (x, x, x, x)와 잘 작동)하지만 명령을 사용하는 다른 소스의 코드를 사용하자 마자 "메모리 액세스 오류"메시지가 나타납니다 (오류에 대한 올바른 영어 번역이 없다고 생각하십

    2

    1답변

    SSE 최적화를위한 어셈블리 코드를 작성한 적이 없으므로, 이것이 멍청한 질문 인 경우 미안합니다. this에서는 조건문을 사용하여 for을 벡터화하는 방법을 설명합니다. 여기 우리가 중첩 된 for 있습니다 : for (int j=-halfHeight; j<=halfHeight; ++j) { for(int i=-halfWidth; i<

    0

    1답변

    내장형 simd 헤더에 _ mm_div_epi64/_mm_div_epu64이 정의되어 있지 않은 이유를 알았습니다. 이유는 알 수 없습니다. 그것이 곱셈이라면 64bit * 64bit = 128bi t가 오버 플로우 될 것이므로 64bit/64bit = 64bit이되므로 의미가 있습니다. xmm 레지스터의 64 비트 나누기에 예기치 않은 문제가 있지 않는

    3

    1답변

    clEnqueueWriteBuffer을 사용하여 데이터를 장치에 복사하고 데이터가 RGB 값 (unsigned char 초)의 버퍼라고 가정합니다. 먼저 입력 버퍼에서만 작동 (예 : R 구성 요소 덮어 쓰기)하여 이미지를 회색조로 변환 한 다음 결과 이미지의 크기를 출력 버퍼로 조정하려고합니다. 그런 다음 clEnqueueReadBuffer을 사용하여 출

    0

    1답변

    저는 SIMD가 상당히 새로워서 GCC에서 간단한 동작을 벡터화 할 수 있는지 알아 보려합니다. 그래서 나는 this post을보고 다소 차이를 같게하려고했습니다. (하지만 KabyLake 프로세서를위한 리눅스 64 비트에 GCC 5.4.0로) 나는 기본적으로이 기능이 : 나는 그러나 나는 그 모든 메시지가 표시되지 않습니다, -O2 -ftree-vecto

    0

    1답변

    __m256i 변수의 8 정수를 8 x 32 비트 int 배열에 저장하고 싶습니다. 나는 그 명령이 _mm256_store_epi32 일 것이라고 생각했지만,이 명령이 존재하지 않는다는 오류가 발생했습니다!

    1

    2답변

    OpenCV, Dlib 및 Simd과 같이 HOG 설명자를 계산할 때 여러 가지 시도가 있습니다. 그들 모두는 HOG 히스토그램으로 결과 크기를 추가하는 스칼라 코드를 사용는 float histogram[height/8][width/8][18]; float ky[height], kx[width]; int idx[size]; float val[size]

    0

    1답변

    인텔 SSE4.2 내장 함수에는 64 비트 CRC 함수가 있습니다. unsigned __int64 _mm_crc32_u64 (unsigned __int64 crc, unsigned __int64 v) 그러나 AVX2 내장 함수에서 256 비트 버전의 CRC 계산을 찾을 수 없습니다. 내 프로그램에서 256 비트 변수 (__m256i)를 사용하고 있으므로