草庐IT

cpu_temp

全部标签

windows - 如何通过SNMP或其他方式监控Windows CPU和风扇温度

我想监控windows机器的3种数据:处理器温度,风扇温度和风扇速度,每5分钟检索一次这些数据。如果这些数据可以通过SNMP获取,那是我的首选。我想知道这些数据的根数据源是来自微软还是主板供应商。如果他们来自Microsoft,他们的OID应该以1.3.6.1.4.1.311开头,如果他们来自主板供应商,他们的OID应该以1.3.6.1.4.1开头.[motherboardvendorprivatesnmpvendorOID],例如1.3.6.1.4.1.11为HP服务器机器,11代表HP的私有(private)snmp供应商OID。 最佳答案

windows - 从命令行在 Windows 上查找 CPU 时间

我想使用命令行脚本查找CPU时间(如通过任务管理器所示)。我已经使用typeperf来获取%Utilization但是,我不确定如何获取CPU时间而不是%。我能想到的一个选择是找出进程的总正常运行时间,然后使用%找出CPU时间——但下一个问题又是如何找到进程的总正常运行时间。如有任何帮助/指点,我们将不胜感激。谢谢,阿舒托什 最佳答案 如果使用详细选项/v调用,tasklist将打印出CPU时间。pslist来自SysInternals默认输出CPU时间。 关于windows-从命令行在

c++ - 一种使键盘事件队列既响应又不占用整个 CPU 能力的方法

我正在制作Sdl游戏,它是2d射击游戏。我使用SDL导入表面,使用OpenGL在屏幕上绘制它们(这样做是因为它比SDL工作得更快)。我有两个线程在运行,一个用于处理内容和渲染,另一个用于输入。基本上,处理一个占用我CPU的1-2%,而输入循环占用25%(在四核上,所以它是1个全核)。我尝试在每个while(SDL_PollEvent(&keyevent))之前执行SDL_Delay(1)并且它有效!将整个过程的CPU负载降低到3%。然而,有一个令人讨厌的副作用。整个程序的输入是有缺陷的:它没有检测到所有按下的键,例如,为了让角色移动,有时需要长达3秒的敲击键盘才能使用react。我也尝

windows - 为什么 : visible, 控制分配的 TActions 会影响应用程序的 CPU 使用率?

如果TAction链接到对象,例如TToolButton(TToolBar的项目)或TActionClientItem(TActionToolBar的项目)并且该对象在运行时可见,那么每当您在表单中移动鼠标时(工具栏以外的任何地方),似乎都会根据数字在CPU上完成额外的负载可见TAction的数量,这是与在前面提到的任一栏上都没有TAction链接的项目可见时移动鼠标相比。很明显,完成的额外负载的显着百分比完全取决于您正在运行的装备类型,但我注意到,当您的应用程序具有以下内容时,实际差异可能会很大:很多可见的TAction链接项目已经为onMouseOver事件执行小计算的自定义组件,

windows - CPU密集型线程智慧

我想在一台机器上运行一个批处理,比如20个CPU密集型组合(基本上是非常长的嵌套for循环)。这20个作业中的每一个都不与其他19个作业共享数据。如果机器有N个核心,那么我应该分拆N-1个这些工作吗?还是N?或者我应该只启动所有20个,然后让Windows弄清楚如何安排它们? 最佳答案 不幸的是,没有简单的答案。唯一可以确定的方法是实现并分析您的应用程序。通常,为了获得最大吞吐量,如果作业是纯CPU,您会希望每个核心一个。根据工作类型,这将包括每个超线程代码一个或每个“真正的物理核心”一个。(如果所有20个作业的工作相同,那么超线程

.net - 制作将使用 Windows Temp 目录的自解压 zip (SFX) Windows 程序安装程序的最简单方法是什么?

我有一个非常简单的程序,它包含一个调用x86Win32.dll(Lib.dll)的.NET2.0exe(Program.exe)。我想将它们打包成一个名为Tool.exe的自解压zip(SFX)Tool.exe会将文件(Program.exe和Lib.dll)解压到WindowsTemp系统目录下,然后调用Program.exe这样我就可以提供一个名为Tool.exe的单文件.exe下载,就用户而言,他们只是在运行Tool.exe而不是一个多文件程序。WinRAR具有SFX功能,并且能够自动启动提取的.exe,但它似乎没有让您选择让它提取到WindowsTemp目录(您可以指定绝对路径

windows - 在 DLL 中使用 cpu 特定功能有哪些标准技术?

简短版本:我想知道是否有可能以及如何最好地利用特定于CPU的DLL中的指令?稍微长一点的版本:从比方说Microsoft下载(32位)DLL时,似乎一种尺寸适合所有处理器。这是否意味着它们是严格按照最低公分母(即操作系统支持的最低平台)?或者是否有一些技术用于在DLL中导出单个接口(interface)但利用幕后CPU特定代码以获得最佳性能?如果是这样,它是如何完成的? 最佳答案 我不知道任何标准技术,但如果我必须做这样的事情,我会在DllMain()函数中编写一些代码来检测CPU类型并填充跳转表带有指向每个函数的CPU优化版本的函

windows - 如何在 Windows 上限制进程的 CPU 使用率? (需要代码,而不是应用程序)

有些程序可以限制Windows中进程的CPU使用率。例如BES和ThreadMaster.我需要编写自己的程序来完成与这些程序相同的功能,但具有不同的配置功能。有谁知道进程的CPU节流是如何完成的(代码)?我不是在谈论设置进程的优先级,而是如何将其CPU使用率限制在例如15%,即使没有其他进程竞争CPU时间也是如此。更新:我需要能够限制任何已经在运行但我无权访问源代码的进程。 最佳答案 您可能希望在作业对象中运行进程,并使用SetInformationJobObject设置作业对象的最大CPU使用率,与JOBOBJECT_CPU_R

c++ - 在 Windows 中访问 Intel CPU I/O 寄存器的简便方法

我使用需要256字节TLP负载大小的PCIe板。我得到了支持它的CPU(Corei7-3930K)和英特尔主板DX79SR,它不在BIOS中提供TLP有效载荷大小设置。默认情况下,最大TLP负载为128字节,我需要将其更改为256字节,无需BIOS。我找到了在Windows中显示此值的PCIUtils软件,但它是一个多用途的可移植软件,它太复杂而无法找到我需要的东西。英特尔文档describewhatvalues我需要在CPUI/O寄存器中设置并且有anotherdocument表示I/O位置是C8Fh和CFCh。这是我卡住的地方,如果我想设置这些寄存器,我不知道从哪里开始。我是一位经

windows - 如何人为地将CPU负载到某个百分点?

为了测试我的应用程序(检测当前CPU使用率),我需要在CPU上设置人工工作负载,例如:10%、20%、30%等,最高可达100%。有什么办法吗? 最佳答案 使用任何你想要的cpu绑定(bind)代码,然后打蜡,打蜡。换句话说,要达到50%的负载,请运行cpu绑定(bind)代码x毫秒,然后在x毫秒内不执行任何操作。要实现其他负载,您可以算一下。什么都不做很容易,sleep,暂停,延迟等等。如果是C++11,尝试线程和std::this_thread::sleep_for(std::chrono::milliseconds(100))