CPU负载监测工具与Python脚本测试

 

 

 

1、CPU负载监测工具

Intel开发商提供的免费工具coredirector,用于精准控制线程调度(12代以后CPU),同时也可以查看CPU各核心的使用情况。

 

2、Python脚本测试CPU负载

原理:利用Python创建多个进程,每个进程跑一个死循环计算,达到测试CPU的目的。
以8核为例,创建8个进程任务,基本可以使CPU跑满(笔记本要插电源否则可能限制CPU)
PS:可以打包exe文件更方便测试。

  

import multiprocessing
import time


def cpu_bound_task(start_time, times):

    while True:
        # 进行一些复杂计算
        sum(i * i for i in range(10000))
        if time.time() - start_time > times:
            break


if __name__ == "__main__":
    # 在多进程程序中判断当前程序是否为冻结(frozen)状态 ,打包您的程序时,会将 Python 运行环境和代码打包到一个单独的文件夹中。在这个情况下,程序就处于冻结状态,这个函数会调整multiprocessing模块的行为,使其能够创建子进程
    multiprocessing.freeze_support()
    # 获取 CPU 核心数量
    num_cpus = multiprocessing.cpu_count()
    global start_time
    global times
    tasks = int(input("*********检测到本电脑有【" + str(num_cpus) + "】个CPU核心,请输入测试的进程任务数量:"))
    times = int(input("*********请输入测试时间(秒)(不要太久,300秒以内):"))

    start_time = time.time()


    # print(tasks)
    # print(times)
    # 创建并启动进程
    processes = []
    for _ in range(tasks):
        p = multiprocessing.Process(target=cpu_bound_task, args=(start_time, times))
        processes.append(p)
        p.start()

    # 阻塞主线程,直到子进程完成(这里实际上不会结束)
    for p in processes:
        p.join()

    print("测试结束!!!")
    input("**********请输入任意字符回车后退出*********")
    import sys
    sys.exit()

 

 
 
posted @ 2024-09-18 13:49  之间。  阅读(0)  评论(0)    收藏  举报