gpt4 book ai didi

c - 为什么 C 程序第一次运行时,运行速度慢了 10 倍

转载 作者:太空宇宙 更新时间:2023-11-04 00:13:06 26 4
gpt4 key购买 nike

我的使用排序的 C 程序第一次运行速度比其他时间慢 10 倍。它使用整数文件进行排序,即使我更改数字,程序仍然运行得更快。当我重新启动 PC 时,第一次程序运行速度慢了 10 倍。我使用 time 来计算时间。

最佳答案

即使不再需要,操作系统也会将数据保存在 RAM 中(这称为“缓存”),因此当程序再次运行时,它会从那里获取所有数据,并且没有磁盘 I/O。即使您更改了数据,该更改也会首先在 RAM 中发生,并且即使在写入文件后它也会保留在那里。

请注意,它不会永远留在 RAM 中。如果内存需要用于其他用途,则缓存将被删除。那时,需要磁盘访问(此时它再次缓存在 RAM 中。)

这就是为什么重启后第一次访问总是很慢的原因;数据尚未缓存,因为它从未从文件中读取过。

关于c - 为什么 C 程序第一次运行时,运行速度慢了 10 倍,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13365914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com