How to Check How Many Writes Are Done While You Build?

May 10, 2011

In the following post I’ll show you how you can measure how many read and writes (in bytes) your build takes. This may prove useful since the amount of writes can have a tremendous effect on the build total time. More on how to shorten your build time in a future post.

Step 1: Download Process Monitor

The key for measuring the build read and writes is to download the great tool by Sysinternals, Process Monitor.

Process Monitor is a tool which monitors all the processes in your system for several activities, like: file-access, registry, etc. It has rich support for filtering and summarizing the information.

image

Step 2: Setup a filter on your build process

Select the “Filter” menu and then “Filter…” menu item.
Now add a new filter with “Process Name” is “devenv.exe”, or “msbuild.exe”, depending on how you build your project.

image

Also disable all activities but the “file system” activity, since we want to focus on these alone.

image

Step 3: Run your build process

Clear the captured data from the process monitor to get a clean screen.

image

Now invoke your build process with your favorite tool: Visual Studio or msbuild.

Step 4: Get the results

Select the “Tools” menu and then “File Summary…” menu item.

image

Note: some file names were blacked to protect the client’s properties.

Step 5: Check by folder

Present the file summary by folders to get a better understanding on which folders you get most of the writes.

image

This is it. Here you can already see exactly how many read and writes you are doing and also how much time was invested in those writes (check the File Time column).

In a future post I’ll cover how you can decrease build time using this information.

That’s it for now,
Arik Poznanski.

Add comment
facebook linkedin twitter email

Leave a Reply