Skip to content
An jvm agent library that counts the number of executed java bytecode instructions during a program run.
C Makefile Java
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


ATTENTION: Eventually adjust Makefile to your environment. It may work for OSX
and ubuntu linux without adjustments.

This project contains a jvm agent library that can be used to count the number
of java bytecode instructions that are executed during a certain program run.
It displays the results on a per method basis. This has been used to check
the impact of compiletime optimizations to the bytecode in the context of a
compiler course at the Karlstuhe Institute of Technology.

Be aware that running a jvm with this agent library attached results in a
heavy slowdown, due to massive callbacks and a disabled jit compiler.

- make
    Builds jvm agent library for the instruction counter 'libcounter.(jnilib|so)'.
- make test
    Build classes needed for a testrun.
- make run-test
    Runs the testcase java program and counts the executed instructions.
- make clean
    Cleans up intermediate compilation results.
- make clean-all
    Cleans up all generated files.

This program is written by Juergen Graf <>.
You can’t perform that action at this time.