首页 > 其他 > 详细

效能分析

时间:2018-10-06 21:08:53      阅读:180      评论:0      收藏:0      [点我收藏+]

作业要求【https://edu.cnblogs.com/campus/nenu/2018fall/homework/2145

代码地址【https://coding.net/u/liuyy0817/p/counts/git

 

要求0 以 战争与和平 作为输入文件,重读向由文件系统读入。连续三次运行,给出每次消耗时间、CPU参数。 

要求1 给出你猜测程序的瓶颈。你认为优化会有最佳效果,或者在上周在此处做过优化 (或考虑到优化,因此更差的代码没有写出) 。

要求2 通过 profile 找出程序的瓶颈。给出程序运行中最花费时间的3个函数(或代码片断)。要求包括截图。 

要求3 根据瓶颈,"尽力而为"地优化程序性能。 

要求4 再次 profile,给出在 要求1 中的最花费时间的3个函数此时的花费。要求包括截图

要求5 程序运行时间。根据在教师的机器 (Windows8.1) 上运行的速度排名,分为3档。此题得分,第1档20分, 第2档10分,第3档5分。功能测试不能通过的,0分。

第一次运行时间:

技术分享图片

CPU参数:

技术分享图片

 

 

 

 第二次运行时间:

技术分享图片

 CPU参数:

技术分享图片

 

 

第三次运行时间:

技术分享图片

 CPU参数:

技术分享图片

 

我猜测瓶颈是在匹配文件名处,因为他需要每一次都进行比较。

1 for (int i = 0; i<len; i++)
2         {
3             if (isalpha(temp[i]) || temp[i] == - || temp[i] == \‘)
4             {
5                 tmp[j] = temp[i];
6                 j++;
7             }
8 
9         }

执行最多的三个函数

技术分享图片

至于优化,我实在想不出来该如何进行优化,对此,我需要更深入的学习。

效能分析

原文:https://www.cnblogs.com/liuyy0817/p/9748026.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!