问题标签 [cpuid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C# 中的 CPUID 支持
上周我一直在用头撞砖墙。那面砖墙:CPUID。
我偶然发现的所有内容都说要在 C++ 中构建一个实现 CPUID 的类库,然后在 C# 项目中使用它。
由于各种原因,我一直无法让 C++ 类库在我的 C# 项目中正常工作,我正要放弃并告诉客户他们的请求无法满足。但是,我已经走到了尽头,想寻求帮助。
有什么方法可以让__cpuid () 或 asm 在 C# 中编译而无需构建外部程序集?
c# - 从 C# 获取 CPU ID 代码以使用 C++
我有这个 C# 代码来获取处理器 ID,但我无法将它传递给 C++,我尝试了很多但我真的做不到,我刚开始使用 C++,我希望能够获得 CPU ID就像我以前用 C# 得到的 C++
这是我在 C# 中的代码:
x86 - 为什么在没有它的处理器上报告支持超线程?
我正在尝试收集系统信息,并在 Intel Xeon E5420 上注意到以下内容:
执行后CPUID(EAX=1)
,EDX[28] 被设置,表明支持超线程,尽管处理器在英特尔网站上被列为不支持超线程 ( ark.intel.com )
有人对此有解释吗?
multithreading - 对于 Mac 和 BSD,我如何找到当前线程正在运行的 cpu?
我正在寻找一个在 Mac OS 和 BSD 上等效于 Linuxsched_getcpu()
和 Windows 的功能GetCurrentProcessorNumberEx()
,以便实现一个用于 cpu-local 存储的库。显然可以使用 cpuid 或 rdtscp 指令来模拟这一点,但可以通过内核合作做得更好:https ://lkml.org/lkml/2007/1/6/190 。
我已经知道线程的当前 CPU 可能会在我使用这些信息时发生变化。
c++ - 如何使用 cpuid 获取 TLB 页面大小
对于英特尔,我使用:
它给出“描述符解码值” - 好的;
对于 AMD,我使用:
它提供了 eax 中 4MB(ebx 中 4KB)的关联性和条目。
这里是 :
EAX = FF30FF10 EBX = FF30FF20" FF - 完整关联数据,48d 条目数据,FF - 完整关联指令,16d 条目指令
所以我有 4KB 和 4MB 还是什么?
PS我是对的,TLB页面和L1缓存-不同的东西?或者也许是 L1 指令。缓存大小是我需要的吗?
xcode - 如何在 Mac 框架中调用 cpuid 指令?
我想使用 cpuid 指令来识别 Intel CPU 的功能。我在 Kernel.framework 中找到了 cpuid.h 标头,因此我将 Kernel.framework 添加到我的项目中并包含<Kernel/i386/cpuid.h>
在我的源文件中。那产生了
我不明白。但是do_cpuid
我认为我想要使用的函数是内联定义的,所以我尝试将它复制到我的源代码中。
这给了我错误:
谷歌搜索该错误使我想到了这个问题:Mac 上的问题:“在重新加载 asm 时找不到 BREG 类中的寄存器”
但是该问题的解决方案是使用 dynamic-no-pic 选项(GCC_DYNAMIC_NO_PIC
构建设置),并且 Xcode 对构建设置的帮助说“不适合共享库(需要与位置无关)。” 我正在构建一个框架,我认为它算是一个共享库。那么我怎样才能使这项工作呢?
java - 在 Windows 上使用 JNA 调用 __cpuid 函数
我需要在 Java 中获取处理器信息(供应商、型号等)。我通常会使用 C/C++,但不幸的是,对于我当前的项目,这必须在 Java 中完成。我正在使用 JNA 进行本机访问,并且我已将 JNA 声明Library
如下:
我正在尝试像这样拨打电话:
但是我得到了Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'intrin': The specified module could not be found.
这可能意味着我正在加载错误的库。
那么我需要加载什么库才能访问__cpuid
Windows 上的功能?
c++ - i5-2500k 上的 cpuid 指令:未设置 MMX、SSE、SSE2 位
这是预期的吗?我希望我的 Sandy Bridge CPU 报告它可以处理 MMX、SSE 和 SSE2 指令。这些位是否没有设置,因为这些“旧”指令集已被一些新指令集“取代”?
我在这里使用此代码将 CPU 检测放入我的代码中。
输出:
c++ - 如何在 Linux 中调用“cpuid”?
在为 Windows 编写新代码时,我偶然发现_cpuinfo()
了 Windows API。因为我主要处理 Linux 环境 (GCC),所以我想访问 CPUInfo。
我尝试了以下方法:
这个使用程序集,但我不想重新发明轮子。有没有其他方法可以在不组装的情况下实现 CPUInfo?