Content area
Full Text
Solving software performance problems
Disk thrashing, also known as virtual memory thrashing, is among the more serious software performance problems. In this article, I will examine the mechanisms behind disk thrashing and explain how you can control it.
My most recent encounter with disk thrashing involved a version-control system called "Code Co-op" developed by my company (Reliable Software, http://www .relisoft.com/). One of Code Co-op's modes of synchronization involves sending change scripts via e-mail. Normally changes are small, but there are cases when large scripts must be exchanged. Since many users had problems sending large attachments through e-mail servers, we built script compression into Code Co-op. Everything worked fine in testing, even with large scripts. Users, however, had a different idea of what a large project was and disk thrashing suddenly raised its ugly head.
Disk thrashing occurs when programs have to deal with large amounts of data. When data size crosses a certain threshold, program performance can suddenly drop by orders of magnitude. In such cases, for instance, you won't see a lot of CPU activity when looking at the Windows Task Manager performance...