我一直在研究确定CPU及其功能的方法(例如SEE,SSE2等)。
然而,我发现的所有方法都使用cpuid指令来处理汇编代码。鉴于在编译器甚至目标之间在c / c ++中进行汇编的不同方式(在VC下没有64位目标的内联汇编),id反而避免这种情况。
是否有一些简单的库或OS功能(用于Windows和Linux)来获取此信息?
目前我只对使用x86和x86-64 CPU的平台感兴趣,而且我至少需要支持AMD和Intel。
答案 0 :(得分:4)
实际上,确实有libcpuid可能符合您的需求。
上次我找到这样的图书馆时,我找到了crisscross。这是C ++。
还有geekinfo。
但我不知道一个只做cpuid的跨平台库。
答案 1 :(得分:1)
在linux下查看/ proc / cpuinfo
答案 2 :(得分:0)
这与硬件相关 - 这是操作系统通常会屏蔽你的一个方面 - 要求它是跨平台的,这有点难。
拥有它会很有用,但是我担心你可能只需枚举你想要支持的CPU和功能的交叉产品,以及操作系统的数量(这里是两个)和所有的写测试。我不认为它已经完成了 - 如果我忽视某些事情,某人肯定会纠正我。
这将是一个有用的图书馆,祝你好运!