-
Notifications
You must be signed in to change notification settings - Fork 6
Benchmarks
The benchmarks on this page are not intended to be definitive. They are intended to show the order-of-magnitude of the overhead associated with using PMDA++ over PCP's C API. If performance is absolutely critical for you (you're working with very high-speed sampling of hardware devices, or monitoring highly constrained devices?) then you should perform your own benchmarking on the relevant device(s) / platform(s).
The benchmarking was performed by a basic benchmark.sh script, which works as follows:
- Start a
pmie
instance to sample a specified metric (such astrivial.time
) from the PMDA-under-test, at a specified rate (such as once per millisecond, or 1KHz). - Use
pmval
to fetch the PMDA's user or system time over a specified period (such as 10 seconds). - Stop the
pmie
instance.
The above process is executed multiple times for both the C and C++ versions of the PMDA being tested to compare the overhead of the C++ wrapper over the underlying C API.
Note, depending on your version of PCP, and its access controls, you may need to run the benchmark script as root, or some other user with permission to monitor the PMDA-under-test via the proc
PMDA.
Coming soon...