The example illustrates a "clock-time" benchmark for assessing detection speed.
It's important to understand the trade-offs between performance, memory usage and accuracy, that the 51Degrees pipeline configuration makes available, and this example shows a range of different configurations to illustrate the difference in performance.
By default, this example runs in multi-threaded mode using all available CPU cores for optimal performance. Use the --single
flag to run in single-threaded mode for comparison.
Requesting properties from a single component reduces detection time compared with requesting properties from multiple components. If you don't specify any properties to detect, then all properties are detected.
This example is available in full on GitHub.
## Usage
In detail, the example shows how to
1. Specify config for engine:
This setting specifies the performance profile that will be used when initializing the C library.
2. Initialization of the engine with the following parameters:
WithConfigIpi allows to configure the Ipi matching algorithm.
WithDataFile sets the path to the local data file, this parameter is required to start the engine
WithAutoUpdate enables or disables auto update
WithProperties configures an Engine with a comma-separated list of manager properties derived from the provided slice.te
3. Run evidence processing with parameters and get the report as returned value
Expected output (performance_report.log):
Multi-threaded mode (default):
Single-threaded mode (–single flag):