2012-02-17 25 views

Trả lời

6

Như đã nói trong Intel AVX documentation

_mm256_cmp_ps, _mm256_cmp_pd 

vv

Lưu ý rằng thay vì có nhiều hướng dẫn so sánh, các bạn phải vượt qua một enum cho thấy sự so sánh thực hiện. Ví dụ:

res = _mm256_cmp_ps(a,b, _CMP_LT_OQ); // AVX res = a < b 
+1

Cảm ơn bạn và điều gì về việc so sánh loại '__m256i'? Hai hàm đó chỉ xử lý '__m256' và' __m256d'? – Cartesius00

+1

IIRC, không có gì, bạn phải sử dụng _mm256_extractf128_si256 cho các số nguyên extarct vào float sau đó sử dụng các số khác –

+0

Vì vậy, không có cách nào nhanh chóng để so sánh hai 'int []' (mảng ints của chiều dài 8) bằng cách sử dụng '__mm256'? Tôi có nghĩa là sử dụng kịch bản 'tải, cmp ...' cổ điển. – Cartesius00