Add resource usage performance tests for creating a span#1499
Add resource usage performance tests for creating a span#1499lzchen merged 12 commits intoopen-telemetry:mainfrom
Conversation
4529423 to
9a7efe3
Compare
...telemetry-sdk/tests/performance/resource-usage/trace/profile_resource_usage_simple_export.py
Show resolved
Hide resolved
|
Should we include a README on how to run these tests like you outlined in the description? |
Is this to fulfill the "out-of-process" requirement in the specs? |
|
Can you create an issue for finding a way to report these perf test results? |
No nothing to do with that. In fact we chose to not include the "receiver" at all and just made it a no-op right now for simplicity sake. Using a m5.xlarge EC2 instance is just to be transparent about where we got these results which should hopefully make it easy to reproduce these results. i.e. if you spin up this type of instance you should get the same results. |
bbfcc4a to
e888a36
Compare
I updated the README for |
opentelemetry-sdk/README.rst
Outdated
|
|
||
| pip install opentelemetry-sdk | ||
|
|
||
| Running Performance Tests |
There was a problem hiding this comment.
Curious does this belong in the sdk README? I feel like it would be useful in the top level.
Also, unrelated but should be in the same place as a "HOW TO" for writing benchmark tests right?
There was a problem hiding this comment.
Yes I agree I think it would be better at the top level! Since running the tests is different from developing tests, I can move it there.
Also, unrelated but should be in the same place as a "HOW TO" for writing benchmark tests right?
Hm, I guess we could write a "How to write Resource Utilization Tests" section like we did for benchmarks here. However, since it doesn't require a specific format like the benchmarks did (because you can just profile any Python program, I just provided examples here) I can't immediately think of any meaningful guidelines to provide.
e888a36 to
6f17cc2
Compare
Description
Adds resource usage tests (testing CPU & Memory) according to the performance tests guideline on the specifications.
This PR adds example files that can be run to see where CPU & Memory allocations are mostly made over simple test cases for the OTel SDK.
We don't have an automated solution for reporting on CPU & Memory usage right now, but I added the tests in this PR description just like how the Java SDK does it as a temporary solution.
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
All tests were run on a m5.xlarge EC2 instance:
2a. Run the
SimpleExportSpanProcessorscalenetest usingGet the following results:
2b. Run the
BatchExportSpanProcessorscalenetest usingGet the following results:
Does This PR Require a Contrib Repo Change?
Checklist:
- [ ] Changelogs have been updated- [ ] Unit tests have been added- [ ] Documentation has been updated