-
Notifications
You must be signed in to change notification settings - Fork 91
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
perf_bench_test start #54
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good start and good coding style!
- Pulling images and creating snapshots, creating records must be outside of the measurement loop. In fact, the task was to profile warm invocations, not cold. Hence, snapshots, records are unnecessary at this point (but you can keep them for future).
- Place remove instance and flush caches calls under a runtime argument
profile_cold_starts
that you need to add
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need to test by validating the logs. Currently, you confuse images and functions. These are different concepts.
The structure of the benchmark needs correction:
- Pull all necessary images by invoking funcPool.Serve() once per image
- Boot all functions with a single image (for the first version)
- Start the measurement loop
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks much better now, thanks.
- Why do you need the semaphore?
- your benchmark sends a potentially large burst once per second. This may result in a high load period followed by a low load period each second. You should modify the code so that your benchmark injects 1 RPC per timeInterval=second/TargetReqPerSec
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor corrections are needed
806f3fa
to
ae0bf82
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While there are few minor comments (mostly cleaning), you need to add a test for your benchmark, basically here
For example, you can invoke your benchmark to run load over 2 VMs for 2 seconds
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok, hopefully last changes. the code looks very good now, good job
…phore for concurrency control
1. Change anonymous goroutine function to named function 2. Change the time tiker implementation to the standard implementation 3. Remove useless code
1b9fd47
to
d97bba8
Compare
# This is the 1st commit message: refactor # This is the commit message #2: modify powerNodeSelector # This is the commit message #3: modify powerNodeSelector # This is the commit message #4: modify powerNodeSelector # This is the commit message #5: modify namespace # This is the commit message #6: modify namespace # This is the commit message #7: add namespace # This is the commit message #8: init power manager script # This is the commit message #9: add go code # This is the commit message #10: test # This is the commit message #11: test # This is the commit message #12: test # This is the commit message #13: test # This is the commit message #14: go.sum # This is the commit message #15: go sum # This is the commit message #16: go mod tidy # This is the commit message #17: test # This is the commit message #18: test # This is the commit message #19: test # This is the commit message #20: test # This is the commit message #21: test # This is the commit message #22: test # This is the commit message #23: test # This is the commit message #24: test # This is the commit message #25: test # This is the commit message #26: test # This is the commit message #27: test # This is the commit message #28: test # This is the commit message #29: print output # This is the commit message #30: test # This is the commit message #31: test # This is the commit message #32: test # This is the commit message #33: test # This is the commit message #34: test # This is the commit message #35: test # This is the commit message #36: test # This is the commit message #37: test # This is the commit message #38: test # This is the commit message #39: test # This is the commit message #40: refactor # This is the commit message #41: change val # This is the commit message #42: test # This is the commit message #43: test # This is the commit message #44: test # This is the commit message #45: exp1 # This is the commit message #46: add url # This is the commit message #47: test # This is the commit message #48: test # This is the commit message #49: test auth # This is the commit message #50: test # This is the commit message #51: test # This is the commit message #52: test # This is the commit message #53: test # This is the commit message #54: test # This is the commit message #55: fix bug # This is the commit message #56: remove log # This is the commit message #57: test # This is the commit message #58: test # This is the commit message #59: test # This is the commit message #60: fix loop # This is the commit message #61: increase invocation # This is the commit message #62: test # This is the commit message #63: test # This is the commit message #64: test # This is the commit message #65: test # This is the commit message #66: test # This is the commit message #67: test # This is the commit message #68: test # This is the commit message #69: Test # This is the commit message #70: test # This is the commit message #71: test # This is the commit message #72: test # This is the commit message #73: test # This is the commit message #74: test # This is the commit message #75: test # This is the commit message #76: test # This is the commit message #77: test # This is the commit message #78: test # This is the commit message #79: test # This is the commit message #80: test # This is the commit message #81: test # This is the commit message #82: test # This is the commit message #83: test # This is the commit message #84: test # This is the commit message #85: test # This is the commit message #86: test # This is the commit message #87: test # This is the commit message #88: test # This is the commit message #89: test # This is the commit message #90: test1 # This is the commit message #91: test # This is the commit message #92: test # This is the commit message #93: test # This is the commit message #94: test # This is the commit message #95: test # This is the commit message #96: test # This is the commit message #97: test # This is the commit message #98: test # This is the commit message #99: test # This is the commit message #100: test # This is the commit message #101: test # This is the commit message #102: test # This is the commit message #103: test # This is the commit message #104: test # This is the commit message #105: test # This is the commit message #106: test # This is the commit message #107: test # This is the commit message #108: test # This is the commit message #109: test1 # This is the commit message #110: test # This is the commit message #111: test # This is the commit message #112: Test # This is the commit message #113: test # This is the commit message #114: test # This is the commit message #115: test # This is the commit message #116: test # This is the commit message #117: test # This is the commit message #118: test # This is the commit message #119: Test # This is the commit message #120: Test # This is the commit message #121: test # This is the commit message #122: test # This is the commit message #123: Test # This is the commit message #124: test # This is the commit message #125: test # This is the commit message #126: test # This is the commit message #127: test # This is the commit message #128: test # This is the commit message #129: test # This is the commit message #130: test # This is the commit message #131: test # This is the commit message #132: test # This is the commit message #133: test # This is the commit message #134: test # This is the commit message #135: test # This is the commit message #136: test # This is the commit message #137: test # This is the commit message #138: test # This is the commit message #139: test # This is the commit message #140: test # This is the commit message #141: test # This is the commit message #142: test # This is the commit message #143: Test # This is the commit message #144: Test # This is the commit message #145: Test # This is the commit message #146: Test # This is the commit message #147: test # This is the commit message #148: test # This is the commit message #149: test # This is the commit message #150: test # This is the commit message #151: test # This is the commit message #152: test # This is the commit message #153: test # This is the commit message #154: Test
Requests are injected every second and instance are served sequentially.