-
Notifications
You must be signed in to change notification settings - Fork 73
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
New benchmarks in java #222
base: java_benchmarks_support
Are you sure you want to change the base?
New benchmarks in java #222
Conversation
…erless-benchmarks into java_benchmarks_support
@@ -168,7 +168,7 @@ def build_base_image( | |||
) | |||
|
|||
for fn in os.listdir(directory): | |||
if fn not in ("index.js", "__main__.py", "Main.java"): | |||
if fn not in ("index.js", "__main__.py"): |
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.
Why is the .java fil deleted now?
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.
Because Main.java is now in the same directory as the other files. They are all part of a Maven project and have been packaged into a fat jar for deployment on OpenWhisk. For functions larger than 48 MB, I think I will need to add Main.java again.
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.
I wil complete this part in new java support pull request which is origin of this pull request.
@@ -0,0 +1,6 @@ | |||
{ | |||
"timeout": 60, | |||
"memory": 24, |
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.
this doesn't appear to be a correct value - is it really just 24 MB?
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.
Thanks for asking. I wasn’t sure. Now the benchmark is running correctly without any errors, but in general, how should I find this value?
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.
This needs to be found experimentally as it differs per each benchmark
I'm also not sure if we even set this up on OpenWhisk.
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.
I will check it. thanks.
@mahlashrifi Few comments in addition to the review :-)
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Hi,
I hope you are doing well. I have made a pull request to clarify which parts are unnecessary and which parts need to be added.
This pull request contains three components:
1- Completion of Java support for benchmarking on OpenWhisk (when the fat jar, including wrapper and source code, is less than 48 MB).
The initial commits are included in this pull request.
2- Two new benchmarks:
Training function of TeaStore
CheckLogin benchmark of TeaStore
3- Six additional benchmarks that are essentially variations of CheckLogin with different dependencies. I noticed something called "payload" in the results of running SeBS benchmarks, but I wasn’t sure how to use it. These six benchmarks were meant to serve as examples for using our implementation. My intention was to test whether the jar file size directly affects the delay in running serverless functions, but I found no significant impact.
![summary2](https://private-user-images.githubusercontent.com/69010140/377593708-88cc2070-b348-4105-8ff2-27add22369e5.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwOTIzNDksIm5iZiI6MTczOTA5MjA0OSwicGF0aCI6Ii82OTAxMDE0MC8zNzc1OTM3MDgtODhjYzIwNzAtYjM0OC00MTA1LThmZjItMjdhZGQyMjM2OWU1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA5VDA5MDcyOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTYwMTZkZTNjZmY2ZTUwN2MzN2VmYjIxMjc5NjQzMzI5YzVmOTEwMTUwNTkzNDI0YzA2NGQzMWFjODllNGNiYWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.egjRNPxDn1G5eRJSvWXMh7oXfxXvHjre7pRN6Kel6xY)
![size_vs_time](https://private-user-images.githubusercontent.com/69010140/377590588-44255e53-dfff-440a-9dfe-1ec7451459f3.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwOTIzNDksIm5iZiI6MTczOTA5MjA0OSwicGF0aCI6Ii82OTAxMDE0MC8zNzc1OTA1ODgtNDQyNTVlNTMtZGZmZi00NDBhLTlkZmUtMWVjNzQ1MTQ1OWYzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA5VDA5MDcyOVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRjNzMxN2NmN2Y4YWM5ZjFlNWNhNjM3N2QwYzJmNTZiOTIzYmFhYmUzN2E0NGU3NTc0Y2M5MDU0N2Y4YTkxYjQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.p2rOQ7Z2LiskKXmxTpIECpFSOJYuQIfKx325A7llEac)
The attached diagram and summarized information provide further details. I believe that if we can set the payload in SeBS, these additional codes can be omitted.