Skip to content

Add nightly tests#433

Merged
vosen merged 9 commits intomasterfrom
nightly_run
Jul 24, 2025
Merged

Add nightly tests#433
vosen merged 9 commits intomasterfrom
nightly_run

Conversation

@vosen
Copy link
Copy Markdown
Owner

@vosen vosen commented Jul 24, 2025

No description provided.

@vosen vosen requested a review from Copilot July 24, 2025 22:39

This comment was marked as outdated.

@vosen vosen requested a review from Copilot July 24, 2025 22:50

This comment was marked as outdated.

@vosen vosen requested a review from Copilot July 24, 2025 22:56

This comment was marked as outdated.

@vosen vosen requested a review from Copilot July 24, 2025 22:59

This comment was marked as outdated.

vosen and others added 2 commits July 24, 2025 16:02
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@vosen vosen requested a review from Copilot July 24, 2025 23:04

This comment was marked as outdated.

@vosen vosen requested a review from Copilot July 24, 2025 23:09

This comment was marked as outdated.

@vosen vosen requested a review from Copilot July 24, 2025 23:10
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds nightly testing infrastructure for running comprehensive GPU tests with ROCm support. The implementation creates two GitHub Actions workflows that coordinate to run tests in parallel using multiple shards while avoiding redundant executions.

  • Creates a scheduled workflow that triggers nightly tests at 8 AM UTC
  • Implements parallel test execution with configurable thread count (24 threads)
  • Adds deduplication logic to prevent running tests on the same SHA twice

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/trigger_nightly_tests.yml Scheduler workflow that checks for duplicate runs and triggers the actual test workflow
.github/workflows/nightly_tests.yml Main test workflow that sets up ROCm, downloads ZLUDA binaries, and runs parallel tests
Comments suppressed due to low confidence (1)

.github/workflows/trigger_nightly_tests.yml:12

  • The version v2.4 does not exist for octokit/request-action. The latest available version is v2.3.1. Consider using v2.3.1 or @v2 for the latest v2.x version.
    - uses: octokit/request-action@v2.4
Comment on lines +23 to +24
uses: ./.github/workflows/nightly_tests.yml
secrets: inherit No newline at end of file
Copy link

Copilot AI Jul 24, 2025

Choose a reason for hiding this comment

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

The workflow call syntax is incorrect. When calling a reusable workflow, it should be used within a job step, not as the entire job definition. Consider restructuring this as a step within the build job or using a different approach to trigger the workflow.

Suggested change
uses: ./.github/workflows/nightly_tests.yml
secrets: inherit
steps:
- name: Run nightly tests
uses: ./.github/workflows/nightly_tests.yml
secrets: inherit
Copilot uses AI. Check for mistakes.
run: |
pids=()
exit_codes=()
for i in $(seq 0 $((${{ env.TEST_THREADS }} - 1))); do
Copy link

Copilot AI Jul 24, 2025

Choose a reason for hiding this comment

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

The arithmetic expression $((${{ env.TEST_THREADS }} - 1)) mixes GitHub Actions syntax with shell arithmetic. This should be $((TEST_THREADS - 1)) since the environment variable is already expanded in the shell context.

Suggested change
for i in $(seq 0 $((${{ env.TEST_THREADS }} - 1))); do
for i in $(seq 0 $((TEST_THREADS - 1))); do
Copilot uses AI. Check for mistakes.
Comment on lines +36 to +37
for i in $(seq 0 $((${{ env.TEST_THREADS }} - 1))); do
cargo run -r -- zluda/libcuda.so.1 --shard-index $i --shard-count ${{ env.TEST_THREADS }} > output_$i.log 2>&1 &
Copy link

Copilot AI Jul 24, 2025

Choose a reason for hiding this comment

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

Similar to the previous issue, ${{ env.TEST_THREADS }} should be $TEST_THREADS since the environment variable is already available in the shell context.

Suggested change
for i in $(seq 0 $((${{ env.TEST_THREADS }} - 1))); do
cargo run -r -- zluda/libcuda.so.1 --shard-index $i --shard-count ${{ env.TEST_THREADS }} > output_$i.log 2>&1 &
for i in $(seq 0 $(($TEST_THREADS - 1))); do
cargo run -r -- zluda/libcuda.so.1 --shard-index $i --shard-count $TEST_THREADS > output_$i.log 2>&1 &
Copilot uses AI. Check for mistakes.
@vosen vosen merged commit c1dda55 into master Jul 24, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants