加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

窗口 – 比较冷启动到暖启动

发布时间:2021-03-15 12:23:34 所属栏目:Windows 来源:网络整理
导读:我们的应用程序在重新启动(冷启动)之后要花费更多的时间来比已经打开一次(热启动). 大多数(如果不是全部)差异似乎来自加载DLL,当DLL处于高速缓存的内存页面中时,它们加载速度更快.我们尝试使用ClearMem来模拟重新启动(因为它比实际重新启动的时间要少得多)

我们的应用程序在重新启动(冷启动)之后要花费更多的时间来比已经打开一次(热启动).

大多数(如果不是全部)差异似乎来自加载DLL,当DLL处于高速缓存的内存页面中时,它们加载速度更快.我们尝试使用ClearMem来模拟重新启动(因为它比实际重新启动的时间要少得多),并且得到了混合的结果,在一些机器上似乎模拟了非常一致的重新引导,有些不是.

总结我的问题是:

>您是否在寒冷和暖暖的开始之间遇到了发射时间的差异?
>你有什么差别吗?
>你知道一种可靠地模拟重启的方法吗?

编辑:

澄清意见:

>应用程序主要是native C和一些.NET(第一个加载为CLR的.NET程序集).
>我们正在寻求改善加载时间,显然我们在我们的代码中做了我们的分析和改进热点.

我忘记提到的是,通过重新建立所有二进制文件,我们得到了一些改进,因此加载程序不必在加载时执行此操作.

你是如何配置你的代码的?并不是所有的分析方法都是平等的,有些则比其他方法更好.你在加载大量文件吗?如果是这样,磁盘碎片和寻找时间可能会发挥作用.

甚至可以将基本的定时信息粘贴到代码中,并写入日志文件,并在冷/热启动时检查文件将有助于确定应用程序在哪里花费时间.

没有更多的信息,我会倾向于文件系统/磁盘缓存,因为两个环境之间的差异.如果是这样,那么您需要花更少的时间加载文件,或者找到更快的方式加载文件.一个例子(可能不适用)是,如果要加载二进制数据文件的加载是将它们全部组合成单个文件,请在一次读取中将整个文件的一个文件拖放到内存中,然后解析出其内容.较少的磁盘和时间花费阅读磁盘.再一次,也许这不适用.我不知道任何清除磁盘/文件系统缓存的工具,但是您可以编写一个快速应用程序来读取一堆与磁盘不相关的文件,从而使文件系统/磁盘缓存加载不同的信息.

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读