zoukankan      html  css  js  c++  java
  • python控制cpu使用率

    以下亲测可行。

    使用方法:命令行模式

    runing.py -c 2 -t 0.01

    -c 指定cpu核数:不指定-c参数默认为所有核数。

    -t 数值越大,cpu使用率越低。

    runing.py

    """
    runing 100
    """
    import time
    from time import clock
    import argparse
    from multiprocessing import Process
    from multiprocessing import cpu_count
    import math
    
    def exec_func(bt):
    
        while True: 
            for i in range(0, 9600000):
                pass
            time.sleep(bt)
    
    
    
    if __name__ == "__main__":
    
        parse = argparse.ArgumentParser(description='runing')
    
        parse.add_argument(
            "-c",
            "--count",
            default= cpu_count(),
            help='cpu count'
            )
    
        parse.add_argument(
            "-t",
            "--time",
            default= 0.01,
            help='cpu time'
            )
    
    
        args = parse.parse_args()
    
        cpu_logical_count = int(args.count)
    
        cpu_sleep_time = args.time
    
        try:
            cpu_sleep_time = int(args.time)
        except ValueError:
            try:
                cpu_sleep_time = float(args.time)
            except ValueError as ex:
                raise ValueError(ex)
    
        print('
    ====================占用CPU核数{}.===================='.format(cpu_logical_count))
        print('
    资源浪费starting......')
        print(cpu_sleep_time)
    
        try:
    
            p = Process(target=exec_func, args=("bt",))
    
            ps_list = []
    
            for i in range(0, cpu_logical_count):
                ps_list.append(Process(target=exec_func, args=(cpu_sleep_time,)))
    
            for p in ps_list:
                p.start()
    
            for p in ps_list:
                p.join()
        except KeyboardInterrupt:
            print("手工结束!")
  • 相关阅读:
    安装mysql
    date, Calendar
    心态
    jdbc ---- DBUTilDao 类
    jdbc--------JdbcUtilDao 类
    Python与C/C++相互调用
    用链表和数组实现HASH表,几种碰撞冲突解决方法
    用链表实现消息队列
    文件系统的发展
    [深度学习]开源的深度学习框架
  • 原文地址:https://www.cnblogs.com/yhleng/p/11891246.html
Copyright © 2011-2022 走看看