Cleaning of a hard drive and performance improvements is a frequently discussed topic, but rarely with any specific target or root cause explanation.
Years ago, as a young greenhorn, my mentor gave me a important tip: “if you don’t understand the problem you can’t be certain to have fixed it“.
So, with that in mind, I would like to drill into some detail.
Before I begin, please understand that this is not an attempt to detract from the reported improvements, but to discuss why such cleaning has a positive effect so that others can benefit.
OK, here goes:
My understanding is that a system can only be slowed down in a very few ways:
-
[*]CPU bottleneck – not enough processor power to perform the tasks required
[*]I/O bottleneck – fragmented or full disks, bad drivers or other resource latency waiting for data from a storage device
[*]Network latency – waiting for a network resource response, be it from the WAN or LAN
[*]Insufficient memory – causing excessive disk swapping (arguably a I/O bottleneck)
[*]Poorly configured system preferences – asking for system resources that do not exist or cannot support the request – e.g gfx capabilities
Each has its own sub divisions: for example a network latency may be caused by a malware infection, or a hardware issue. Anyway, assuming I have not missed anything big (please correct me if I have), I would like to reflect on those against the observed performance increases obtained by cleaning and maintenance as suggested.
Clearly there has been an increase in performance observed, but why? What is is about the removal of log files, setup files, temporary internet files, etc that makes the system run faster?
If I might offer a few of my own answers to see if they fit the bill….
Example 1. A system that has high disk utilisation will benefit from a disk clean up because free space is generated which can then be rationalized using a defrag, making the drive work less to access the data. In effect reducing the I/O bottleneck. But that only should a marked effect on a drive that is heavily used.
Example 2. Many applications come bundled with branding and additional features that are configured to load at startup. This can affect the CPU utilisation and memory utilisation, both of which can have a detrimental effect on performance. Being careful during an installation can often allow one to request not to install additional features. Using msconfig, or 3rd-party apps can get to the root of the issue, buy preventing various startup items from launching. Fine and well, but other than consuming RAM and potentially causing disk swapping, a start up item should not generate a CPU bottleneck after it has loaded.
Example 3. Browsing the internet may be more responsive if the Temporary Internet Files are rationalised, but the purpose of these files are to provide a local cache to reduce network utilisation, so if there is no local cache, the system must download the files from the web server again. That suggests that a total removal of temporary internet files may actually have a detrimental effect. On the flip side however, if the drive is getting full, removal of these files may improve the disk performance as in Example 1. Also if a corrupt file is located in the cache, removing it would be beneficial to prevent errors.
Example 4. Network latency is not something that removing data form a drive should affect, but perhaps refreshing the TCP/IP stack may have an effect if one is experiencing slow network browsing or access of data on a network share.
Example 5. Poorly a poorly configures system can often be helped by resetting some parameters to default, for example internet explorer settings. This isn’t really disk cleanup or removal of data, but has been included for completeness.
So, where does that leave us?
There are observed performance increases by regularly maintaining a system and/or data drive, but why?
What are your experiences and understanding?