[rteval] Add initial rteval support#19
Conversation
This commit introduces initial rteval support with these options: - LOAD_CPUS and MEASUREMENT_CPUS can be set. Defaults to no use. - THRESHOLD can be set and defaults to 150. - SET_BREAK can be set to create a breakpoint for other tracing tools. - TRACE_CMD can be set to collect a trace.dat, which is stored to logs. - Sets a default EVENTS list for tracing but allows a custom list to be entered. - ONLYLOADS can be used to generate loads for another tool to measure. - GEN_REPORT can be used to collect sosreports, which is copied to the logs. Additionally, sample yamls have been generated for load generation, trace-cmd, and normal operation. Signed-off-by: Chris White <chwhite@redhat.com>
| @@ -0,0 +1,13 @@ | |||
| # Based on centos:stream9 as per your requirement | |||
There was a problem hiding this comment.
Change comment to:
Based on centos:stream9 to allow for building without a Red Hat subscription
|
|
||
| # if tracing is enabled, disable some things that may get in the way | ||
| if [[ "$TRACE_CMD" == "y" || "$SET_BREAK" == "y" ]]; then | ||
| # If setting a break point for another tool to use, disable reprot generation so it does not intefer. |
There was a problem hiding this comment.
nit: spelling "reprot" and "interfer"
| restartPolicy: Never | ||
| containers: | ||
| - name: rteval | ||
| image: qquay.io/container-perf-tools/rteval |
There was a problem hiding this comment.
Image is incorrect - make sure you test each of your yamls.
| - name: tool | ||
| value: "rteval" |
There was a problem hiding this comment.
The tool env variable is not being used.
| spec: | ||
| runtimeClassName: performance-openshift-node-performance-profile | ||
| restartPolicy: Never | ||
| containers: |
There was a problem hiding this comment.
There are no cpu/memory resources specified for this container, which means it will float across all the application CPUs. Is that what you want? If so, then this is not a guaranteed QoS pod and the annotations you specified will have no effect so should be deleted.
| - name: LOAD_CPUS | ||
| value: "0" |
There was a problem hiding this comment.
CPU 0 is going to be one of the reserved platform CPUs. Do you want to run the load there? Also, in kubernetes you do not have control over which CPUs the pod is going to run on. Would it be better to create a guaranteed QoS pod and then just specify the number of LOAD_CPUS and have the cmd.sh script allocate that number of CPUs from the set that are assigned to the pod at creation time?
Description:
This PR introduces support for rteval in our tooling. The new integration brings in several configuration options to provide flexibility for different tracing and performance measurement scenarios.
Key Features:
CPU Configuration: Set specific CPUs for LOAD and MEASUREMENT purposes.
Threshold Settings: Users can define a custom threshold, defaulting to 150.
Breakpoint Support: Introduces SET_BREAK for integrating with other tracing tools.
Trace Collection: Using TRACE_CMD, users can collect trace data which will be stored in logs.
Event List Management: A default event list for tracing is set, but users have the option to provide a custom list.
Load Generation: Using ONLYLOADS, external tools can measure generated loads.
Report Collection: GEN_REPORT facilitates the collection of sosreports, which are subsequently stored in logs.
Extras:
Sample YAML configurations have been added, catering to scenarios like load generation, tracing with trace-cmd, and standard operations.