gpt4 book ai didi

build - 如何检测 CMake 中的 sse 可用性

转载 作者:行者123 更新时间:2023-12-04 20:20:41 25 4
gpt4 key购买 nike

在 CMakeLists.txt 文件中,有没有办法检测可用的 SSE 的最高级别,并将其保存到 CMAKE_CXX_FLAGS?换句话说,我希望能够写出类似的东西:

FindSSE()  # defines SSE_FLAGS
set(CMAKE_CXX_FLAGS ${SSE_FLAGS})

例如,如果平台最高支持 SSE 级别 3,则 FindSSE() 会将 SSE_FLAGS 设置为 -msse3。

最佳答案

这可能有点矫枉过正,但 OptimizeForArchitecture.cmake来自 vc on gitorious 将提供基于架构的优化列表。
您可以直接使用该脚本,也可以将其修剪为您需要的代码。
更好的解决方案是制作一个使用 SSE 指令的小型 cmake 测试脚本并检查每个变体是否编译/运行。
编辑:更具体地说,还有 FindSSE.cmake在各个地方,虽然它仍然使用有点笨拙的解析方法/proc/cpuinfo

关于build - 如何检测 CMake 中的 sse 可用性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6901369/

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