Utility programs, which perform similar and largely independent operations on a sequence of inputs, include such common applications as compilers, interpreters, and document parsers; databases; and compression and encoding tools. The repetitive behavior of these programs, while often clear to users, has been difficult to capture automatically. ActiveProf is a tool to detect phases in those programs. It is based on active profiling technique in which controlled inputs to utility programs are used to expose execution phases, which are then marked, automatically, through source code (or binary) instrumentation, enabling us to exploit phase transitions in production runs with arbitrary inputs. It is both effective and programmable compared to code and interval phases. It has been applied to memory management and memory leak detection.
The current versions have been tested on Linux 2.6.18 Intel x86 & x86_64 machines. The software is free for non-profit uses. You can cite the paper above if this tool offers any help to your research.