Restore CUDA coverage reporting and test uncovered CUDA vector paths.
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- c, github-actions, gitlab
- Domain
- backend, ci-cd, observability-sre, testing
Research direction
Start by comparing the Codecov report around commits 1699807c and bf0eb79a, then trace the noether-cuda job through CUDA compilation, test execution, lcov generation, and upload. Inspect backends/cuda-ref/ceed-cuda-ref-vector.c and coverage tests for CeedHostScale_Cuda, CeedHostAXPY_Cuda, CeedHostSetValueStrided_Cuda, and CeedVectorSyncArray_Cuda; done means documenting where coverage is lost and restoring reporting or adding tests for the uncovered paths.
Written by the indexing model from the issue text.
Description
Hi all,
My name is Alyssa, I am a PhD student in Computational Science. I am very interested to contribute to the project. I would appreciate your guidance on my idea for contributing.
While researching the repository, I noticed that CUDA source files are missing from recent LibCEED CodeCov reports, even though noether-cuda GitLab job reports successful completion. The last Codecov report I found containing CUDA source coverage was commit 1699807c on October 12. After commit bf0eb79a, the CUDA vector implementation no longer appears in the Codecov file report. Furthermore in report including the CUDA coverage, the following vector functions in backends/cuda-ref/ceed-cuda-ref-vector.c had no coverage.
Specifically functions:
CeedHostScale_CudaCeedHostAXPY_CudaCeedHostSetValueStrided_Cuda- Additionally
CeedVectorSyncArray_Cudasynchronization path is missing coverage.
My intended contribution would be to diagnose and fix this coverage issue. I would first reproduce the behavior locally, trace the workflow from CUDA compilation and test execution through lcov generation and Codecov upload, and determine at which stage coverage is lost at. If the issue is caused by CI or coverage configuration, I would contribute a fix to restore CUDA files to Codecov. If the missing coverage is caused by untested CUDA Host or Device paths, I would add or modify the relevant tests and verify the resulting coverage locally and in CI. At minimum, the deliverable would be a documented diagnosis and if, applicable, a fix restoring CUDA coverage to Codecov.
I have access to NVIDIA RTX A4000 GPUs with CUDA 13.2 for local investigation.
Please let me know if this missing CUDA coverage is expected or is an issue in the coverage workflow. I would also appreciate feedback on whether this would be an appropriate contribution.
Thank you,
Alyssa.
- Dominant language
- C
- Stars
- 273
- Forks
- 84
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 21
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from CEED/libCEED
-
release preparation spack
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
CEED/libCEED#2094 · 2 comments ·
Maintainers usually reply within 1 day
-
examples Python
Difficulty 4/5 3-5 days Newbie friendliness 52/100
CEED/libCEED#2084 · 3 comments · 1 reaction ·
Maintainers usually reply within 1 day
-
Pin Action VersionsOpenCI
Difficulty 5/5 Over a week Newbie friendliness 35/100
CEED/libCEED#2075 · 1 reaction ·
Maintainers usually reply within 1 day
-
documentation
Difficulty 5/5 Over a week Newbie friendliness 25/100
Maintainers usually reply within 1 day
Similar issues
-
5700模组网络优先级问题Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
severity: low
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
luainkernel/lunatik#2372 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
ly05010419/MacNativeGames#1796 ·
Maintainers usually reply within 1 day
-
ZSTD_decompressStream accepts a Compressed_Block with Block_Size 0 that ZSTD_decompress rejectsOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
jniebuhr/gaggimate#1009 · 1 comment ·
Maintainers usually reply within 1 day