gpt4 book ai didi

c++ - 尝试在 SSE 编程中使用和掩码添加 __m128

转载 作者:搜寻专家 更新时间:2023-10-30 23:59:35 24 4
gpt4 key购买 nike

我正在尝试使用比较操作的结果添加到 SSE 变量。我刚刚意识到,当使用 _mm_cmplt_ps 操作时,如果结果为真,它会返回一个 NAN,因为无法表示 0xffffffff,这对我来说毫无用处:

__m128 va;
__m128 vb;
__m128 result =_mm_set1_ps(0.0f);
vb = _mm_cmplt_ps(va,vb);
result = _mm_add_ps(result,vb); // problem is that I would like to convert vb to 1.0's and 0.0's

最佳答案

您可以将比较掩码应用于 1.0 值的 vector ,例如

__m128  va, vb;
__m128 vcmp = _mm_cmplt_ps(va, vb);
__m128 vresult = _mm_and_ps(_mm_set1_ps(1.0f), vcmp);

关于c++ - 尝试在 SSE 编程中使用和掩码添加 __m128,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15808565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com