oneapi-src / oneapi-src/unified-runtime
Improve compiler interface testing
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 57
- Forks
- 120
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 1
Description
Our testing of the compilation related Program* APIs is fairly basic at the moment, there's a lot we could do with it to improve coverage and rigour. To that end we should track any ideas that come up for this kind of testing here.
This was inspired by #877 which fixes a bug in the ProgramLink tests by making them worse: it turns out we can't link together two binaries that come out of our device binary generation system, so pending a potentially quite tricky rework of that we've had to settle for just linking one program. Therefore:
- Implement a ProgramLink test which links together multiple programs
After a quick look at the ProgramBuild and ProgramCompile tests it also occurred to me that we should probably
- Verify program state in ProgramBuild and ProgramCompile tests with appropriate ProgramGetInfo and ProgramGetBuildInfo queries
When urProgramCreateWithBinary is modified by #2147 to allow multiple binaries and multiple devices we should test that properly:
- Write a multi-device ProgramCreateWithBinary test
Contributor guide
No contributing guide indexed for this repository
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.
Research direction
Start with the existing ProgramLink, ProgramBuild, and ProgramCompile tests, then review the ProgramGetInfo and ProgramGetBuildInfo queries they can use to verify state. Keep the limitations from #877 in mind, and revisit urProgramCreateWithBinary after #2147; done means the listed multi-program, state-verification, and multi-device cases are covered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- compilers, testing-qa
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100