Windows下限制程序CPU速率

前言

最近有个间歇需求需要将一个单线程程序的CPU速率限制到单核心的50%,在GitHub上找到一个程序,针对它写了一些脚本。

Process Governor 进程调控器

“此应用程序允许您对 Windows 进程设置约束。”

Github地址:https://github.com/lowleveldesign/process-governor

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import os
import psutil

def get_pid_by_name(process_name):
for proc in psutil.process_iter(['pid', 'name']):
if proc.info['name'] == process_name:
return proc.info['pid']
return None

process_name = "tailscale-ipn.exe"
pid = get_pid_by_name(process_name)

command = "X:\procgov\procgov32.exe --cpurate 50 -p" + str(pid)
os.system(command)
input("回车关闭")

先写一个Python脚本程序,因为procgov需要使用administrator权限运行,所以再写一个bat脚本调用

1
python X:\procgov\start.py

给这个bat脚本创建快捷方式,在属性>快捷方式>高级,勾选用管理员身份运行

双击bat即可达到一键查找指定名称的程序的pid并且限制CPU使用的目的


Windows下限制程序CPU速率
http://www.evec.cc/2024/03/13/cpu_rate_limit/
作者
前夕
发布于
2024年3月13日
许可协议