这是一个在SSE / AVX指令系列中经验丰富的用户,以及熟悉其性能分析的人员。我看到了很多不同的实现和方法,范围从older for SSE2到新的。网络充斥着这样的链接。但就我个人而言,我对sse装配分析并不十分经验。有些人指出了uops,缓存,这需要一些低级知识。所以我要求提示和你的个人经历。如果你有时间推出一些比较,那么"什么是最快的"为什么,你看到了什么方法。实现可能不那么精确,单个FP精度的10-16位就足够了。越多越好,但是当它不影响速度时。
PS。为了避免元洪水,我可以准确地描述任务的细节:
__m128 sincos(float x)
的函数;返回其sin(x)和cos(x)值近似值。 nan
,inf
,依此类推)。如果方法需要参数规范化,其性能实现(fmod())也是主题。但问题不在于处理特殊的FP案例。这可能是重复的,但我在这里找不到类似的问题,所以请指出我,如果已有的话。