作业要求参见[https://edu.cnblogs.com/campus/nenu/2019fall/homework/7628]
因为没有完成功能四,所以对同学的程序进行效能分析
要求0 以 战争与和平 作为输入文件,重读向由文件系统读入。连续三次运行,给出每次消耗时间、CPU参数。
使用命令行进入程序所在文件夹,输入如下命令:
ptime python wf.py -s < war_and_peace.txt
第一次运行:
第二次运行:
第三次运行:
CPU参数:Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz 3.41GHz
第三次运行时间:0.860s
第三次运行时间:0.852s
第三次运行时间:0.903s
平均运行时间:0.872s
要求1 给出你猜测程序的瓶颈。
程序运行的平均时间时0.872s,可以跳绳的空间很小,经过修改后,程序的运行时间不但减少反而增加,所以程序可以优化空间很小。
• 要求2 通过 profile 找出程序的瓶颈。
效能分析步骤:
python -m cProfile -s time wf.py -s < war_and_peace.txt
要求3 根据瓶颈,"尽力而为"地优化程序性能。
要求4 再次 profile,给出在 要求1 中的最花费时间的3个函数此时的花费。要求包括截图。
由上图的函数的运行时间,这个函数功能完善,优化空间很小,对他进行优化不但不能锁单运行时间,还增加了运行时间,这一关是最优化的程序
• 要求5 程序运行时间。
等待教师的测评。
代码Git地址https://e.coding.net/xushanshan/cipindexiaonengfenxi.git