Add benchmark metrics to iOS CI pipeline #4286
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.



This PR adds benchmark measurements for the VM bytecode translation and native iOS compilation steps in the CI pipeline.
Changes
scripts/build-ios-app.sh: Added timing for the./mvnw packagecommand which performs the Bytecode to C translation. The duration is saved tovm_time.txtin the artifacts directory.scripts/run-ios-ui-tests.sh: Added timing for thexcodebuildcommand. The VM time is read from the artifacts, and both times are exported as environment variables (CN1SS_VM_TIME,CN1SS_COMPILATION_TIME).scripts/lib/cn1ss.sh: Updated the screenshot processing helper to pass these environment variables as arguments to the Java reporting tool.scripts/common/java/RenderScreenshotReport.java: Added support for--vm-timeand--compilation-timearguments. The report now includes a "Benchmark Results" section displaying these durations. Logic was updated to ensure the success message is still displayed when appropriate, even when benchmark data is present.Example Output
The PR comment will now include a section like:
PR created automatically by Jules for task 8027837712868060644 started by @shai-almog