Hardware Requirements
It is rather hard (or impossible) to come up with defined hardware requirements for running the CMR. The reason for this is that there are several influencing factors that are application and configuration specific:
- The amount of data that is instrumented
- The length of an invocation sequence
- The amount of requests that are send
- The amount of agents being connected.
- The usage patterns for analysis (UI)
- The desired data retention period for data in the in memory buffer
We have already highly optimized data serialization and memory optimization in place.
Some guidelines
Dimension | Used for | Our typical setup |
---|---|---|
CPU |
| 4 core |
Memory |
| 16GB |
Harddisc |
| 50GB |
Details
Impact of the amount of data
- All data points needs to be send to the CMR over the network
- All data points need to be analyzed by the CMR
- All data points are stored within an optimized in-memory buffer on the CMR for quick analysis.
Impact of number of agents
- For each agent, the CMR currently keeps a separate class cache that stores a representation of the known classes (necessary for instrumentation).
- Our current tests show that in average this class cache is ~4kb per loaded class.
- We plan to optimize the data structure to keep only one class cache for all agents (see - INSPECTIT-2196Getting issue details... STATUS )