Skip to content

[ci] add ppc64le C++ test job#7345

Open
asifsheikhibm wants to merge 6 commits into
lightgbm-org:masterfrom
asifsheikhibm:ppc64le-cpp
Open

[ci] add ppc64le C++ test job#7345
asifsheikhibm wants to merge 6 commits into
lightgbm-org:masterfrom
asifsheikhibm:ppc64le-cpp

Conversation

@asifsheikhibm

@asifsheikhibm asifsheikhibm commented Jun 25, 2026

Copy link
Copy Markdown

Contributes to #7262

Added Power support for cpp workflow.
Added separate job for clang and gcc for ppc64le.

Happy to adjust the workflow based on CI or community feedback.

@jameslamb jameslamb left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks but I'm not willing to add 3 new C++ CI jobs for this and even more Python jobs, or to maintain support for both gcc and clang on this architecture... that's a big expansion of our CI matrix.

Let's please start with a single cpp-tests job using gcc and then in a follow-up PR a single python-package job also using gcc.

Maybe in the future if we get more demand for this architecture we could expand the CI matrix, but let's please be conservative for now.

@jameslamb jameslamb changed the title added ppc64le support for cpp workflow [ci] add ppc64le C++ test job Jun 25, 2026
@jameslamb

Copy link
Copy Markdown
Member

I've also added a link in the description to #7262. Please do that here on GitHub, it's very helpful for folks to understand the connection between this code change and prior conversations. Helps to answer questions like "why?" and "how does this work?" without anyone having to ask.

Comment thread .github/workflows/cpp.yml
task: cpp-tests
compiler: msvc
container: null
- os: ubuntu-24.04-ppc64le

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Does this repo actually have access to those runners?

Looks like these have been waiting to run for 14+ hours so far.

Image

If the repo has access and those are the normal wait times, then we cannot make these jobs something that runs in PR CI. Anything that makes PR CI take longer than 45 minutes would be unacceptable.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

No, it does not take much time to allocate runners. The GHA team has already verified this from the backend. These jobs are stuck due to permission issues. Could you please review the following permissions:
https://github.com/IBM/actionspz/blob/main/docs/onboarding.md#for-organization-admins-update-runner-groups

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Ok thanks, I'd missed a setting in the runner group. Just enabled that and pushed an empty commit, let's see if it runs.

By the way, is the runner group name Default something that was created by the GitHub App for these IBM runners? And if not and that's a GitHub default thing, why did these runners end up in it?

In my opinion, they should be in a dedicated runner group with an informative name (PowerPC-runners or similar). Default is too generic, and the settings projects want for these runners may be different from what they want for other runners.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

They still look stuck, by the way, and the runners show as "offline" in the Default runner group.

image

What else do I need to do?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Ok I see one did get picked up: https://github.com/lightgbm-org/LightGBM/actions/runs/28260135761/job/83733256511?pr=7345

But only 1 so far.

Is there a concurrency limit on these runners? If we can only run 1 job at a time across the whole repo, that would also make me very hesitatnt to add these jobs to PR CI.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

@jameslamb, We have multiple runners available, which allows us to run several jobs concurrently. There isn’t a repo-wide restriction limiting us to a single job at a time, so adding these jobs to PR CI should not create a bottleneck.

@jameslamb jameslamb mentioned this pull request Jun 26, 2026
2 tasks
@asifsheikhibm asifsheikhibm requested a review from jameslamb June 29, 2026 09:02
@asifsheikhibm

Copy link
Copy Markdown
Author

Thanks but I'm not willing to add 3 new C++ CI jobs for this and even more Python jobs, or to maintain support for both gcc and clang on this architecture... that's a big expansion of our CI matrix.

Let's please start with a single cpp-tests job using gcc and then in a follow-up PR a single python-package job also using gcc.

Maybe in the future if we get more demand for this architecture we could expand the CI matrix, but let's please be conservative for now.

we have incorporated the review comment, kept only cpp test using gcc and removed clang jobs.
Can you please trigger the workflow again?

@sandeepgupta12

Copy link
Copy Markdown

@jameslamb, can you please review changes?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants