Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added end to end test for mem ballast #80

Merged
merged 4 commits into from
Jul 3, 2019
Merged

Added end to end test for mem ballast #80

merged 4 commits into from
Jul 3, 2019

Conversation

owais
Copy link
Contributor

@owais owais commented Jul 1, 2019

This commit adds an end to end test to verify performance gain acheived
with memory ballast

It mainly checks the CPU usage and does not test against memory usage.
I'll be submitting another PR that will specifically test memory
behaviour and ensure the ballast does not actually consume memory.

TestNoBackend10kSPS test was very reliably consuming >20 CPU on my
machine so I increased the accepted values to 30 for this test.

songy23
songy23 previously approved these changes Jul 1, 2019
Copy link
Member

@songy23 songy23 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@@ -188,3 +158,81 @@ func Test1000SPSWithAttributes(t *testing.T) {
})
}
}


func Test1000SPSWithAttributes(t *testing.T) {
Copy link
Member

@tigrannajaryan tigrannajaryan Jul 1, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test with ballast specifies the same expectedMaxCPU as the one without ballast. However test results that you posted show that with ballast it actually uses less CPU. So, perhaps tighten a bit expectedMaxCPU in this test? I suggest you leave about 30% of slack in CPU (that was my rule of thumb when writing other perf tests).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I did reduce the numbers before creating the PR. Probably I missed something in the first push. In any case, updated the numbers and reduced them a further.

TestBallast1000SPSWithAttributes/0*0bytes|PASS | 12s| 21.9| 25.3| 73| 114| 10000| 10000
TestBallast1000SPSWithAttributes/100*50bytes|PASS | 12s| 60.2| 68.3| 498| 847| 10000| 10000
TestBallast1000SPSWithAttributes/10*1000bytes|PASS | 12s| 41.0| 45.3| 354| 576| 9990| 9990
TestBallast1000SPSWithAttributes/20*5000bytes|PASS | 12s| 64.4| 74.0| 780| 1079| 9990| 9990
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a nice CPU improvement.

@codecov-io
Copy link

codecov-io commented Jul 1, 2019

Codecov Report

❗ No coverage uploaded for pull request base (master@e0e3e0b). Click here to learn what that means.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff            @@
##             master      #80   +/-   ##
=========================================
  Coverage          ?   69.77%           
=========================================
  Files             ?      101           
  Lines             ?     6392           
  Branches          ?        0           
=========================================
  Hits              ?     4460           
  Misses            ?     1698           
  Partials          ?      234

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e0e3e0b...f2dac10. Read the comment docs.

tigrannajaryan
tigrannajaryan previously approved these changes Jul 1, 2019
pjanotti
pjanotti previously approved these changes Jul 1, 2019
@owais owais dismissed stale reviews from pjanotti and tigrannajaryan via 7106783 July 1, 2019 17:41
pjanotti referenced this pull request in pjanotti/opentelemetry-service Jul 1, 2019
* Update the Agent architecture graph.

* Fix a typo.
tigrannajaryan
tigrannajaryan previously approved these changes Jul 1, 2019
@tigrannajaryan
Copy link
Member

@owais Build status is not reported from Travis. You may want to restart.

@owais
Copy link
Contributor Author

owais commented Jul 1, 2019

Looks like a bug. The build has passed: https://travis-ci.org/open-telemetry/opentelemetry-service/builds/552958842?utm_source=github_status&utm_medium=notification

I don't have the option to restart builds for this repo and it's PRs.

@tigrannajaryan
Copy link
Member

It will restart automatically after you merged the other PR and rebase this one.

@flands flands added this to the 0.1.0 milestone Jul 1, 2019
@tigrannajaryan
Copy link
Member

tigrannajaryan commented Jul 2, 2019

Build failed because of #43

@owais
Copy link
Contributor Author

owais commented Jul 2, 2019

Yea, I've been seeing quite a few random failures. Will rebase after we merge #85

tigrannajaryan
tigrannajaryan previously approved these changes Jul 2, 2019
@tigrannajaryan
Copy link
Member

@owais did you make changes or just rebased? If you need to rebase it is better to use "Update branch" button in Github. It reruns CI, but does not invalidate reviews (unlike rebasing and pushing the branch manually, which requires re-approval). So you don't need to ask for reapproval in that case.

tigrannajaryan
tigrannajaryan previously approved these changes Jul 3, 2019
@owais
Copy link
Contributor Author

owais commented Jul 3, 2019

@tigrannajaryan I rebased. Update branch features ends up creating a merge commit as it merges master into the branch. Is that acceptable?

This commit adds an end to end test to verify performance gain acheived
with memory ballast

It mainly checks the CPU usage and does not test against memory usage.
I'll be submitting another PR that will specifically test memory
behaviour and ensure the ballast does not actually consume memory.

`TestNoBackend10kSPS` test was very reliably consuming >20 CPU on my
machine so I increased the accepted values to 30 for this test.
@tigrannajaryan
Copy link
Member

Update branch features ends up creating a merge commit as it merges master into the branch. Is that acceptable?

@owais I don't think this is true. If I remember correctly when you merge the PR, the commit is squashed and rebased, no merge commit is created.

@pjanotti
Copy link
Contributor

pjanotti commented Jul 3, 2019

CI hit #59

@owais
Copy link
Contributor Author

owais commented Jul 3, 2019

@owais I don't think this is true. If I remember correctly when you merge the PR, the commit is squashed and rebased, no merge commit is created.

I see. I meant it creates a merge commit in the branch when updating from master but that wouldn't matter if the repo has only "squash and merge" available.

Update again. Thanks.

@pjanotti pjanotti merged commit 127ea97 into open-telemetry:master Jul 3, 2019
@owais owais deleted the e2e-ballast-test branch July 3, 2019 17:39
MovieStoreGuy pushed a commit to atlassian-forks/opentelemetry-collector that referenced this pull request Nov 11, 2021
* add support for Link.

* add AddLink to mockSpan

* update api documentation.
hughesjj pushed a commit to hughesjj/opentelemetry-collector that referenced this pull request Apr 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants