Nexus: Set workstation thread binding to none #6903
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ornl CI | |
on: | |
issue_comment: | |
types: [created] | |
jobs: | |
sulfur-cpu: | |
if: | | |
github.repository_owner == 'QMCPACK' && | |
github.event.issue.pull_request && | |
startsWith(github.event.comment.body, 'Test this please') | |
runs-on: [self-hosted, Linux, X64, ornl-sulfur-1] | |
env: | |
GH_JOBNAME: ${{matrix.jobname}} | |
GH_OS: Linux | |
strategy: | |
fail-fast: false | |
matrix: | |
jobname: [ | |
GCC11-MPI-MKL-AFQMC-Real-Mixed, # mixed precision | |
GCC11-MPI-MKL-AFQMC-Complex-Mixed, | |
GCC11-MPI-MKL-AFQMC-Real, # full precision | |
GCC11-MPI-MKL-AFQMC-Complex, | |
] | |
steps: | |
- name: Verify actor | |
# Only trigger for certain "actors" (those commenting the PR, not the PR originator) | |
# this is in-line with the current workflow | |
env: | |
ACTOR_TOKEN: ${{secrets.TOKENIZER}}${{github.actor}}${{secrets.TOKENIZER}} | |
SECRET_ACTORS: ${{secrets.CI_GPU_ACTORS}} | |
if: contains(env.SECRET_ACTORS, env.ACTOR_TOKEN) | |
id: check | |
run: | | |
echo "triggered=true" >> $GITHUB_OUTPUT | |
# Request repo info, required since issue_comment doesn't point at PR commit, but develop | |
- name: GitHub API Request | |
if: steps.check.outputs.triggered == 'true' | |
id: request | |
uses: octokit/[email protected] | |
with: | |
route: ${{github.event.issue.pull_request.url}} | |
env: | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
# Create a separate PR status pointing at GitHub Actions tab URL | |
# just like any other third-party service | |
- name: Create PR status | |
if: steps.check.outputs.triggered == 'true' | |
uses: guibranco/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "ornl-sulfur CI ${{ matrix.jobname }}" | |
state: "pending" | |
sha: ${{fromJson(steps.request.outputs.data).head.sha}} | |
target_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} | |
- name: Get PR information | |
if: steps.check.outputs.triggered == 'true' | |
id: pr_data | |
run: | | |
echo "branch=${{ fromJson(steps.request.outputs.data).head.ref }}" >> $GITHUB_OUTPUT | |
echo "repo_name=${{ fromJson(steps.request.outputs.data).head.repo.full_name }}" >> $GITHUB_OUTPUT | |
echo "repo_clone_url=${{ fromJson(steps.request.outputs.data).head.repo.clone_url }}" >> $GITHUB_OUTPUT | |
echo "repo_ssh_url=${{ fromJson(steps.request.outputs.data).head.repo.ssh_url }}" >> $GITHUB_OUTPUT | |
- name: Checkout PR branch | |
if: steps.check.outputs.triggered == 'true' | |
uses: actions/checkout@v4 | |
with: | |
token: ${{secrets.GITHUB_TOKEN}} | |
repository: ${{fromJson(steps.request.outputs.data).head.repo.full_name}} | |
ref: ${{steps.pr_data.outputs.branch}} | |
- name: Configure | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-sulfur-1.sh configure | |
- name: Build | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-sulfur-1.sh build | |
- name: Test | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-sulfur-1.sh test | |
- name: Report PR status | |
if: always() && steps.check.outputs.triggered == 'true' | |
uses: guibranco/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "ornl-sulfur CI ${{matrix.jobname}}" | |
state: ${{job.status}} | |
sha: ${{fromJson(steps.request.outputs.data).head.sha}} | |
target_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} | |
sulfur-cuda: | |
if: | | |
github.repository_owner == 'QMCPACK' && | |
github.event.issue.pull_request && | |
( startsWith(github.event.comment.body, 'Test this please') || | |
startsWith(github.event.comment.body, 'Start testing in-house') ) | |
runs-on: [self-hosted, Linux, X64, ornl-sulfur-2] | |
env: | |
GH_JOBNAME: ${{matrix.jobname}} | |
GH_OS: Linux | |
strategy: | |
fail-fast: false | |
matrix: | |
jobname: [ | |
V100-Clang16-MPI-CUDA-AFQMC-Offload-Real-Mixed, # auxiliary field, offload | |
V100-Clang16-MPI-CUDA-AFQMC-Offload-Real, | |
V100-Clang16-MPI-CUDA-AFQMC-Offload-Complex-Mixed, | |
V100-Clang16-MPI-CUDA-AFQMC-Offload-Complex, | |
V100-GCC11-MPI-CUDA-Real-Mixed, | |
V100-GCC11-MPI-CUDA-Real, | |
V100-GCC11-MPI-CUDA-Complex-Mixed, | |
V100-GCC11-MPI-CUDA-Complex, | |
] | |
steps: | |
- name: Verify actor | |
# Only trigger for certain "actors" (those commenting the PR, not the PR originator) | |
# this is in-line with the current workflow | |
env: | |
ACTOR_TOKEN: ${{secrets.TOKENIZER}}${{github.actor}}${{secrets.TOKENIZER}} | |
SECRET_ACTORS: ${{secrets.CI_GPU_ACTORS}} | |
if: contains(env.SECRET_ACTORS, env.ACTOR_TOKEN) | |
id: check | |
run: | | |
echo "triggered=true" >> $GITHUB_OUTPUT | |
# Request repo info, required since issue_comment doesn't point at PR commit, but develop | |
- name: GitHub API Request | |
if: steps.check.outputs.triggered == 'true' | |
id: request | |
uses: octokit/[email protected] | |
with: | |
route: ${{github.event.issue.pull_request.url}} | |
env: | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
# Create a separate PR status pointing at GitHub Actions tab URL | |
# just like any other third-party service | |
- name: Create PR status | |
if: steps.check.outputs.triggered == 'true' | |
uses: guibranco/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "ornl-sulfur CI ${{ matrix.jobname }}" | |
state: "pending" | |
sha: ${{fromJson(steps.request.outputs.data).head.sha}} | |
target_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} | |
- name: Get PR information | |
if: steps.check.outputs.triggered == 'true' | |
id: pr_data | |
run: | | |
echo "branch=${{ fromJson(steps.request.outputs.data).head.ref }}" >> $GITHUB_OUTPUT | |
echo "repo_name=${{ fromJson(steps.request.outputs.data).head.repo.full_name }}" >> $GITHUB_OUTPUT | |
echo "repo_clone_url=${{ fromJson(steps.request.outputs.data).head.repo.clone_url }}" >> $GITHUB_OUTPUT | |
echo "repo_ssh_url=${{ fromJson(steps.request.outputs.data).head.repo.ssh_url }}" >> $GITHUB_OUTPUT | |
- name: Checkout PR branch | |
if: steps.check.outputs.triggered == 'true' | |
uses: actions/checkout@v4 | |
with: | |
token: ${{secrets.GITHUB_TOKEN}} | |
repository: ${{fromJson(steps.request.outputs.data).head.repo.full_name}} | |
ref: ${{steps.pr_data.outputs.branch}} | |
- name: Configure | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-sulfur-2.sh configure | |
- name: Build | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-sulfur-2.sh build | |
- name: Test | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-sulfur-2.sh test | |
- name: Report PR status | |
if: always() && steps.check.outputs.triggered == 'true' | |
uses: guibranco/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "ornl-sulfur CI ${{matrix.jobname}}" | |
state: ${{job.status}} | |
sha: ${{fromJson(steps.request.outputs.data).head.sha}} | |
target_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} | |
nitrogen-rocm: | |
if: | | |
github.repository_owner == 'QMCPACK' && | |
github.event.issue.pull_request && | |
( startsWith(github.event.comment.body, 'Test this please') || | |
startsWith(github.event.comment.body, 'Start testing in-house') ) | |
runs-on: [self-hosted, Linux, X64, ornl-nitrogen-1] | |
env: | |
GH_JOBNAME: ${{matrix.jobname}} | |
GH_OS: Linux | |
strategy: | |
fail-fast: false | |
matrix: | |
jobname: | |
[ | |
RadeonVII-ROCm-NoMPI-CUDA2HIP-Real-Mixed, | |
RadeonVII-ROCm-NoMPI-CUDA2HIP-Real, | |
RadeonVII-ROCm-NoMPI-CUDA2HIP-Complex-Mixed, | |
RadeonVII-ROCm-NoMPI-CUDA2HIP-Complex, | |
] | |
steps: | |
- name: Verify actor | |
# Only trigger for certain "actors" (those commenting the PR, not the PR originator) | |
# this is in-line with the current workflow | |
env: | |
ACTOR_TOKEN: ${{secrets.TOKENIZER}}${{github.actor}}${{secrets.TOKENIZER}} | |
SECRET_ACTORS: ${{secrets.CI_GPU_ACTORS}} | |
if: contains(env.SECRET_ACTORS, env.ACTOR_TOKEN) | |
id: check | |
run: | | |
echo "triggered=true" >> $GITHUB_OUTPUT | |
# Request repo info, required since issue_comment doesn't point at PR commit, but develop | |
- name: GitHub API Request | |
if: steps.check.outputs.triggered == 'true' | |
id: request | |
uses: octokit/[email protected] | |
with: | |
route: ${{github.event.issue.pull_request.url}} | |
env: | |
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} | |
# Create a separate PR status pointing at GitHub Actions tab URL | |
# just like any other third-party service | |
- name: Create PR status | |
if: steps.check.outputs.triggered == 'true' | |
uses: guibranco/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "ornl-nitrogen CI ${{matrix.jobname}}" | |
state: "pending" | |
sha: ${{fromJson(steps.request.outputs.data).head.sha}} | |
target_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} | |
- name: Get PR information | |
if: steps.check.outputs.triggered == 'true' | |
id: pr_data | |
run: | | |
echo "branch=${{ fromJson(steps.request.outputs.data).head.ref }}" >> $GITHUB_OUTPUT | |
echo "repo_name=${{ fromJson(steps.request.outputs.data).head.repo.full_name }}" >> $GITHUB_OUTPUT | |
echo "repo_clone_url=${{ fromJson(steps.request.outputs.data).head.repo.clone_url }}" >> $GITHUB_OUTPUT | |
echo "repo_ssh_url=${{ fromJson(steps.request.outputs.data).head.repo.ssh_url }}" >> $GITHUB_OUTPUT | |
- name: Checkout PR branch | |
if: steps.check.outputs.triggered == 'true' | |
uses: actions/checkout@v4 | |
with: | |
token: ${{secrets.GITHUB_TOKEN}} | |
repository: ${{fromJson(steps.request.outputs.data).head.repo.full_name}} | |
ref: ${{steps.pr_data.outputs.branch}} | |
- name: Configure | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-nitrogen-1.sh configure | |
- name: Build | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-nitrogen-1.sh build | |
- name: Test | |
if: steps.check.outputs.triggered == 'true' | |
run: tests/test_automation/github-actions/ci/run_step_ornl-nitrogen-1.sh test | |
- name: Report PR status | |
if: always() && steps.check.outputs.triggered == 'true' | |
uses: guibranco/[email protected] | |
with: | |
authToken: ${{secrets.GITHUB_TOKEN}} | |
context: "ornl-nitrogen CI ${{matrix.jobname}}" | |
state: ${{job.status}} | |
sha: ${{fromJson(steps.request.outputs.data).head.sha}} | |
target_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}} |