zoukankan      html  css  js  c++  java
  • 软工第一次作业 进度记录三 简单的性能分析

    到了今天,编码工作已经基本完成。除了非文本文件的字符、单词计数仍然和标准答案不一样以外,文本文件计数都是正确的,而且效率较高。非文本文件的读取大概无解了,不打算修改了。

    对于助教给出的样例,visual studio生成的Release版本exe能在30s内完成,linux下经过少许修改生成的可执行文件大约20s完成。

    在visual studio上进行了一个简单的性能测试。分析如下:

    1. fclose函数占用非独占时间最多,几近20%,但占用独占时间少。说明文件操作依然较慢,尤其是测试集中小文件较多。

    2. 对词组的排序占据时间第二多,占11.36%。因为只需要查找前十个,因此我采用的是在统计结束后插入排序。暂时没有想到优化方案。

    3. 对单词、词组的释放占据了第三多的时间,占11.14%。我的数据是动态分配内存存储的,所以这里时间多也很正常。考虑到现有性能已经较好,希望节省空间,而且就算更改为静态方式存储对性能改善也不会太大,还是维持现有的方案。

    4. 占据第四多时间的依然是文件流操作……

    总结:我原本以为string会成为性能瓶颈,结果并没有。文件操作比我想象中费时。

  • 相关阅读:
    c#: 传不确定个数参的方法
    导出Excel并设置样式
    无线网络国际会议排名
    初学Java接口
    初学Java修饰符
    [转]计算机类核心期刊投稿的一些资料汇总
    初学Java数据类型和变量
    初学Java数组
    初学Java运算符
    几个著名P2P会议与期刊及领军人物
  • 原文地址:https://www.cnblogs.com/jennawu/p/8666638.html
Copyright © 2011-2022 走看看