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

Make std-benchmarks/benchOnly Startup work #8390

Merged
merged 4 commits into from
Nov 27, 2023

Conversation

JaroslavTulach
Copy link
Member

@JaroslavTulach JaroslavTulach commented Nov 25, 2023

Pull Request Description

Adjustments to #8378 to make sure it runs with std-benchmarks/benchOnly Startup.

Checklist

Please ensure that the following checklist has been satisfied before submitting the PR:

  • All code follows the style guides.
  • All code has been tested:

@JaroslavTulach JaroslavTulach added the CI: No changelog needed Do not require a changelog entry for this PR. label Nov 25, 2023
@JaroslavTulach JaroslavTulach self-assigned this Nov 25, 2023
@JaroslavTulach JaroslavTulach changed the title Wip/jtulach/benchmark startup 8324 Make std-benchmarks/benchOnly Startup work Nov 25, 2023
from Standard.Base import IO

main = IO.println "Hello World"
t.write f
Copy link
Member Author

Choose a reason for hiding this comment

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

Previously the benchmark created the Enso file on the fly - do you know that by default the BenchProcessor runs the Enso code in "design" execution environment - e.g. writing into temporary file doesn't change its content?

To mitigate that I created Empty_World.enso and Hello_World.enso in the repository.

@JaroslavTulach
Copy link
Member Author

JaroslavTulach commented Nov 25, 2023

Benchmarks finally seem to run. The base results are:

that means the overhead of the engine runtime (and JVM runtime) is currently 2.7s - then there is another 1.2s overhead associated with processing standard library.

Btw. one can built:

sbt:enso> engine-runner/buildNativeImage

and then execute time ./runner --run test/Benchmarks/src/Startup/Empty_World.enso - the result is 163ms. E.g. we have a way to reduce those 2.7s to 163ms which would get the whole startup below 1.5s.

@JaroslavTulach JaroslavTulach added the CI: Keep up to date Automatically update this PR to the latest develop. label Nov 27, 2023
@JaroslavTulach JaroslavTulach added CI: Ready to merge This PR is eligible for automatic merge and removed CI: Keep up to date Automatically update this PR to the latest develop. labels Nov 27, 2023
@mergify mergify bot merged commit 8df47a7 into develop Nov 27, 2023
31 of 34 checks passed
@mergify mergify bot deleted the wip/jtulach/BenchmarkStartup_8324 branch November 27, 2023 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI: No changelog needed Do not require a changelog entry for this PR. CI: Ready to merge This PR is eligible for automatic merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants