python 内存占用率_python指定cpu使用率,与内存占用率

该博客介绍了一个Python脚本`running.py`,用于模拟指定CPU核心数的使用和内存占用。用户可以通过命令行参数设置CPU运算频率时间和内存占用量。脚本创建多个进程执行简单计算任务,并通过调整参数来控制资源占用率。文章最后提供了作者信息和版权声明。
摘要由CSDN通过智能技术生成

python指定cpu使用率,与内存占用率

"""

runing.py -c 2 -t 0.01 -m 1000

-c cpu核数,不加-c参数为最大核数

-t cpu运算频率时间,间隔,越小占用越高

-m 内存占用,1000MB

"""

import sys

import time

from time import clock

import argparse

from multiprocessing import Process

from multiprocessing import cpu_count

import math

# import tempfile

# # 屏蔽 Traceback信息

# sys.stderr=tempfile.TemporaryFile()

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'

)

parse.add_argument(

"-m",

"--memory",

default= 1000,

help='memory'

)

args = parse.parse_args()

cpu_logical_count = int(args.count)

cpu_sleep_time = args.time

memory_used_mb = int(args.memory)

try:

cpu_sleep_time = int(args.time)

except ValueError:

try:

cpu_sleep_time = float(args.time)

except ValueError as ex:

raise ValueError(ex)

_doc = """

runing.py -c 2 -t 0.01 -m 1000

-c 指定cpu核数,不加-c参数默认为当前cpu最大核数

-t cpu运算频率时间,间隔,越小占用越高

-m 内存占用,1000MB

CPU使用率需要手动增加减少-t参数来达到,预期使用率。

"""

print("\n====================使用说明=========================")

print("{}".format(_doc))

print("\n====================================================")

print('\n当前占用CPU核数:{}'.format(cpu_logical_count))

print('\n内存预计占用:{}MB'.format(memory_used_mb))

print('\n资源浪费中......')

try:

# 内存占用

s = ' ' * (memory_used_mb * 1024 * 1024)

except MemoryError:

print("剩余内存不足,内存有溢出......")

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("资源浪费结束!")

新测可用:

da776744014c8d6d75520d8f38be11dd.png

结果:

e3a2da862430129a2552c839e7de2f4b.png

命令行模式,通过ctrl+c来结束

作  者:出  处:http://www.cnblogs.com/yhleng/

关于作者:专注于软件自动化测试领域。如有问题或建议,请多多赐教!

版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。

特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我

声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值