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

Refactor CI test scripts #263

Merged
merged 28 commits into from
Jan 17, 2024
Merged

Conversation

qinsoon
Copy link
Member

@qinsoon qinsoon commented Jan 8, 2024

This PR tries to consolidate the new dacapo chopin tests and the old dacapo 2006 tests to make them consistent. It also exposes tests to mmtk-core using Github workflows rather than shell scripts (WIP, mmtk/mmtk-core#935). It fixes the heap sizes for 2006 tests (mmtk/mmtk-core#424).

Changes in the PR:

  • Separate building from testing when we run dacapo 2006 tests mmtk-openjdk CI.
  • Using moderate heap sizes (proportional to the min heap size) to run dacapo 2006 tests.
  • The old ci-test.sh still works (binding tests in the mmtk-core repo is still functioning).

WIP:

@qinsoon qinsoon force-pushed the refactor-correctness-ci branch 2 times, most recently from d155bda to 0f38978 Compare January 10, 2024 04:54
@qinsoon qinsoon force-pushed the refactor-correctness-ci branch 3 times, most recently from 48bcb63 to be01ed4 Compare January 11, 2024 00:33
@qinsoon qinsoon force-pushed the refactor-correctness-ci branch 2 times, most recently from 7c9ba96 to 137ab0f Compare January 16, 2024 05:23
@qinsoon qinsoon marked this pull request as ready for review January 16, 2024 21:00
@qinsoon qinsoon requested review from wks and k-sareen January 16, 2024 21:00
Comment on lines 20 to 21
F=`ls *_bin-debug.tar.gz`
mv $F ${F/_bin-debug/_bin}
Copy link
Contributor

Choose a reason for hiding this comment

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

We can use the rename command line utility for this. But also see the other comment on build.yml.

Suggested change
F=`ls *_bin-debug.tar.gz`
mv $F ${F/_bin-debug/_bin}
rename _bin-debug _bin *_bin-debug.tar.gz

uses: actions/upload-artifact@v3
with:
name: linux-x86_64-server-${{ inputs.debug-level }}-bundles-${{ env.BUILD_SUFFIX }}
path: ./git/openjdk/build/linux-x86_64-normal-server-${{ inputs.debug-level }}/bundles/*_bin.tar.gz
Copy link
Contributor

Choose a reason for hiding this comment

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

This is the only place the _bin.tar.gz file (instead of _bin-debug.tar.gz) is used. If we can use wildcard here, we won't need to change the file name.

Copy link
Member Author

Choose a reason for hiding this comment

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

I removed the renaming in ci-build.sh, and added two paths (*_bin.tar.gz and *_bin-debug.tar.gz) here for matching and uploading artifacts. I will see if it works.

style-check:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
Copy link
Contributor

Choose a reason for hiding this comment

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

checkout@v2 is too old. We should bump it to v4. Since this PR is doing refactoring, it is a good chance to do a global search/replacement for GitHub actions like this.

Copy link
Member Author

Choose a reason for hiding this comment

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

I changed all the checkout uses to v4.

@wks
Copy link
Contributor

wks commented Jan 17, 2024

The log shows that the CI successfully uploaded jdk-11.0.19-internal+0_linux-x64_bin-debug.tar.gz as an artifact.

But pmd failed with the Immix plan for both the fastdebug and the release builds.

And the log shows it is still using DaCapo Chopin RC3 instead of the released version.

@qinsoon
Copy link
Member Author

qinsoon commented Jan 17, 2024

But pmd failed with the Immix plan for both the fastdebug and the release builds.

We have random failures in the dacapo chopin tests.

And the log shows it is still using DaCapo Chopin RC3 instead of the released version.

Yeah. I don't plan to move to the release version in this PR.

Copy link
Contributor

@wks wks left a comment

Choose a reason for hiding this comment

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

LGTM

@qinsoon qinsoon merged commit 54f6688 into mmtk:master Jan 17, 2024
55 checks passed
DEBUG_LEVEL=${DEBUG_LEVEL:="fastdebug"}

# Build target. Could be empty, or product-bundles.
build_target=$1
Copy link
Collaborator

Choose a reason for hiding this comment

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

This variable is unused

cd $OPENJDK_PATH
runbms_dacapo2006_with_heap_multiplier fop $heap_multiplier
runbms_dacapo2006_with_heap_multiplier luindex $heap_multiplier
}

# -- SemiSpace --
export MMTK_PLAN=SemiSpace
Copy link
Collaborator

Choose a reason for hiding this comment

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

I thought the idea was to move away from using environment variables since OpenJDK has support for passing MMTk options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants