を取得し、私はいくつかのint temp[5]
で(con*A[r][k])
を格納して、行のためにその与えセグメンテーションフォールト以下のコードでいただきました間違ったSIMDでA[j][k]-temp[]
をしていますk=0
k=100
へエラーSIMD演算
A[j][k]=((A[j][k]-con*A[r][k])%2);
のために計算したいです__m128i m5=_mm_sub_epi32(*m3,*m4);
while((k+4)<100)
{
__m128i *m3 = (__m128i*)A[j+k];
temp[0]=con*A[r][k];
temp[1]=con*A[r][k+1];
temp[2]=con*A[r][k+2];
temp[3]=con*A[r][k+3];
__m128i *m4 = (__m128i*)temp;
__m128i m5 =_mm_sub_epi32(*m3,*m4);
(temp_ptr)=(int*)&m5;
printf("%ld,%d,%ld\n",A[j][k],con,A[r][k]);
A[j][k] =temp_ptr[0]%2;
A[j][k+1]=temp_ptr[1]%2;
A[j][k+2]=temp_ptr[2]%2;
A[j][k+3]=temp_ptr[3]%2;
k=k+4;
}
この行にはエラーが発生しています...... _ m128i m5 = _mm_sub_epi32(* m3、* m4); – abhinav
はインデックス配列に問題はありませんでした。 – abhinav
'A'の次元は何ですか? 'j'と' r'の値は何がありますか? – Attila