Skip to content

Conversation

@yhmtsai
Copy link
Member

@yhmtsai yhmtsai commented Nov 21, 2025

It is raised from #1931 and #1867.

they are in quick or additional branch rule in CI setting, but I will revert them before merge

Fixes #1931

For ARM, apart from the benchmark statistic check,
we also have CGS SolvesDenseSystemMixedComplex on complex in https://github.com/ginkgo-project/ginkgo/actions/runs/19371107556/job/55427021354
Currently, using -ffp-contract=off can pass both.

ROCm 7 does not support MI50 officially.
For ROCm 7,
we can not define the warpSize via compiler option because one of their file use the same name as variable.
I only changed that in hip config and checked that all ginkgo based on the value not warpSize.

some extra conditions for kernel because we have grid size = 0 for those kernel. It starts to be capture in ROCm 7

Additional hipGetLastError() in the OverAllocating test because ROCm 7 still has that and be captured by hipGetLastError() in sparse handle creation (so exception be thrown in the next test). We throw it here again to avoid polluting the next test step.
Related Issue: ROCm/rocm-libraries#2801

For custom thrust namespace, ROCm 7.1.0 does not fully adapt the custom namespace in some place, but I believe they fix it in ROCm/rocm-libraries#1769
Need to check it when the new release comes.

For CUDA 13, server currently install it as usr/local package not from spack.
Thus, I add temporary lmod file during pre_script, which should not be necessary with spack setup. I can just keep the corresponding fix without including the ci and lmod. Or, keep the temporary workaround and then remove it when the server has that.

@yhmtsai yhmtsai requested review from a team November 21, 2025 13:44
@yhmtsai yhmtsai self-assigned this Nov 21, 2025
@yhmtsai yhmtsai added the 1:ST:ready-for-review This PR is ready for review label Nov 21, 2025
@ginkgo-bot ginkgo-bot added reg:build This is related to the build system. reg:testing This is related to testing. reg:ci-cd This is related to the continuous integration system. mod:cuda This is related to the CUDA module. type:solver This is related to the solvers mod:hip This is related to the HIP module. labels Nov 21, 2025
@ginkgo-bot
Copy link
Member

Error: The following files need to be formatted:

core/config/config.cpp
include/ginkgo/core/base/combination.hpp
include/ginkgo/core/base/device_matrix_data.hpp
include/ginkgo/core/base/lin_op.hpp
include/ginkgo/core/base/matrix_assembly_data.hpp
include/ginkgo/core/base/matrix_data.hpp
include/ginkgo/core/base/mtx_io.hpp
include/ginkgo/core/base/perturbation.hpp
include/ginkgo/core/factorization/cholesky.hpp
include/ginkgo/core/factorization/factorization.hpp
include/ginkgo/core/factorization/lu.hpp
include/ginkgo/core/factorization/par_ic.hpp
include/ginkgo/core/factorization/par_ict.hpp
include/ginkgo/core/factorization/par_ilu.hpp
include/ginkgo/core/factorization/par_ilut.hpp
include/ginkgo/core/log/batch_logger.hpp
include/ginkgo/core/log/convergence.hpp
include/ginkgo/core/log/papi.hpp
include/ginkgo/core/log/stream.hpp
include/ginkgo/core/matrix/batch_identity.hpp
include/ginkgo/core/matrix/fft.hpp
include/ginkgo/core/matrix/identity.hpp
include/ginkgo/core/matrix/scaled_permutation.hpp
include/ginkgo/core/matrix/sparsity_csr.hpp
include/ginkgo/core/multigrid/fixed_coarsening.hpp
include/ginkgo/core/preconditioner/batch_jacobi.hpp
include/ginkgo/core/preconditioner/gauss_seidel.hpp
include/ginkgo/core/preconditioner/isai.hpp
include/ginkgo/core/preconditioner/sor.hpp
include/ginkgo/core/reorder/mc64.hpp
include/ginkgo/core/reorder/nested_dissection.hpp
include/ginkgo/core/reorder/rcm.hpp
include/ginkgo/core/reorder/scaled_reordered.hpp
include/ginkgo/core/solver/batch_bicgstab.hpp
include/ginkgo/core/solver/batch_cg.hpp
include/ginkgo/core/solver/bicg.hpp
include/ginkgo/core/solver/bicgstab.hpp
include/ginkgo/core/solver/cb_gmres.hpp
include/ginkgo/core/solver/cg.hpp
include/ginkgo/core/solver/cgs.hpp
include/ginkgo/core/solver/direct.hpp
include/ginkgo/core/solver/fcg.hpp
include/ginkgo/core/solver/gcr.hpp
include/ginkgo/core/solver/gmres.hpp
include/ginkgo/core/solver/idr.hpp
include/ginkgo/core/solver/ir.hpp
include/ginkgo/core/solver/triangular.hpp

You can find a formatting patch under Artifacts here or run format! if you have write access to Ginkgo

@yhmtsai yhmtsai changed the title Add ARM github action, ROCm 7 gitlab job and corresponding update Add ARM github action, ROCm 7, CUDA 13 gitlab job and corresponding update Nov 24, 2025
@yhmtsai yhmtsai added this to the Ginkgo 1.11 milestone Nov 24, 2025

if(CUDAToolkit_VERSION VERSION_GREATER_EQUAL 13)
find_package(Thrust REQUIRED)
thrust_create_target(Thrust)
Copy link
Member

Choose a reason for hiding this comment

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

Shouldn't we also add this to ginkgo_cuda?

- 'master'
- 'develop'
- 'release/**'
- 'arm_action'
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
- 'arm_action'

I think this caused the CI to run twice.

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

Labels

1:ST:ready-for-review This PR is ready for review mod:cuda This is related to the CUDA module. mod:hip This is related to the HIP module. reg:build This is related to the build system. reg:ci-cd This is related to the continuous integration system. reg:testing This is related to testing. type:solver This is related to the solvers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support ROCm 7.0

4 participants