-
Notifications
You must be signed in to change notification settings - Fork 328
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
Turning Sieve benchmarks into Enso benchmarks #8475
Conversation
Current results on my computer:
|
} | ||
return new Gen() | ||
|
||
compute_nth_prime_natural_in_js = Sieve_Without_Types.compute_nth_prime gen=natural_in_js |
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.
These JavaScript benchmarks work with:
sbt:enso> runEngineDistribution --run test/Benchmarks Sieve
but not with std-benchmarks/benchOnly Sieve
. Please help, @Akirathan!
a2acce6 adds JavaScript benchmarks. They however seem to show the price we pay for JavaScript interop is high!
Running official benchmarks and once again. The picture confirms (not surprisingly) that the "Enso Sieve Benchmarks" run at the same speed as the "JMH Sieve Benchmarks". E.g. we can integrate and use/watch the new benchmarks. |
@@ -231,7 +231,7 @@ private void generateClassForGroup( | |||
" throw new IllegalStateException(\"Project root directory does not exist or cannot be read: \" + Objects.toString(projectRootDir));"); | |||
out.println(" }"); | |||
out.println(" File languageHomeOverride = Utils.findLanguageHomeOverride();"); | |||
out.println(" var ctx = Context.newBuilder(LanguageInfo.ID)"); | |||
out.println(" var ctx = Context.newBuilder()"); |
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 thought it was going to be a classpath issue, not "restricted to Enso language" issue! Thank you for your help, @Akirathan!
Hmm this is very curious indeed 🤔 |
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.
Does it make sense to keep JMH benchmark as well - the more the merrier and gives us some reference?
Official results are here.
|
Jaroslav Tulach reports a new STANDUP for yesterday (2023-12-07): Progress: - "removing JMH sieve": c849ff9
Next Day: Bugfix something
|
Probably not. The results are the same with the Enso benchmarking infrastructure |
Jaroslav Tulach reports a new STANDUP for the last Friday (2023-12-08): Progress: - AoC: https://discord.com/channels/401396655599124480/1182572489025531955/1182572641333280860
Next Day: Bugfix something
|
Pull Request Description
Having the benchmarks in Enso will make it easier to rewrite certain parts of the algorithm to other languages.
Important Notes
Execute as
sbt:enso> runEngineDistribution --run test/Benchmarks Sieve
or as
sbt:enso> std-benchmarks/benchOnly Sieve
Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:
Java, Enso
style guides.