A tool meant to help answer the question "How lean is my program?"
OWM runs a specified program and samples its performance until completion. Then the final measurements are displayed, and may optionally be saved as a textual report or CSV data.
OWM is not a profiler. It only reports final bulk statistics. These are not precise since after process termination values are not available. Instead it samples roughly 10 times per second until statistics are no longer retrievable.
Saving
When data is saved to an existing report or CSV file it is appended to the end.
Effort is made to be locale-aware when writing reports and CSV data. This means respecting "comma as decimal point" and delimiting output columns with semicolons in such cases. Other locale formats should work automatically as well. In the report text the appropriate "thousands separators" should be used too.
CSV text values are always wrapped in quotes (") with quote characters escaped by doubling (as ""). No other escaping is
attempted.
CSV output files always use the ANSI encoding of the current locale.
Requirements
Requires at least Windows 2000, but some things might fail before Windows Vista.
Only tested on Windows 10.
Sample report (U.S. English locale)
There is more information in the included ReadMe.txt file.
OWM runs a specified program and samples its performance until completion. Then the final measurements are displayed, and may optionally be saved as a textual report or CSV data.
OWM is not a profiler. It only reports final bulk statistics. These are not precise since after process termination values are not available. Instead it samples roughly 10 times per second until statistics are no longer retrievable.
Saving
When data is saved to an existing report or CSV file it is appended to the end.
Effort is made to be locale-aware when writing reports and CSV data. This means respecting "comma as decimal point" and delimiting output columns with semicolons in such cases. Other locale formats should work automatically as well. In the report text the appropriate "thousands separators" should be used too.
CSV text values are always wrapped in quotes (") with quote characters escaped by doubling (as ""). No other escaping is
attempted.
CSV output files always use the ANSI encoding of the current locale.
Requirements
Requires at least Windows 2000, but some things might fail before Windows Vista.
Only tested on Windows 10.
Sample report (U.S. English locale)
Code:
Program ExportQuery.exe
Run date and time 2/2/2017 1:09:14 PM
Note
Exit code 0
Termination Normal
Elapsed time 2,074 ms
CPU: Kernel time 62 ms
CPU: User time 953 ms
CPU: Total time 1,015 ms
I/O: Read operations 119
I/O: Write operations 149
I/O: Other operations 295
I/O: Total operations 563
I/O: Read bytes transferred 2,408,900 bytes
I/O: Write bytes transferred 607,823 bytes
I/O: Other bytes transferred 4,012 bytes
I/O: Total bytes transferred 3,020,735 bytes
Memory: Page faults 6,127
Memory: Peak total workingset 22,450,176 bytes
Memory: Avg total workingset 22,437,374 bytes
Memory: Peak shared workingset 11,223,040 bytes
Memory: Avg shared workingset 11,210,238 bytes
Memory: Peak private workingset 11,227,136 bytes
Memory: Avg private workingset 11,227,136 bytes
Memory: Peak pagedpool usage 166,912 bytes
Memory: Peak nonpagedpool usage 8,960 bytes
Memory: Peak pagefile usage 13,578,240 bytes
There is more information in the included ReadMe.txt file.