feat: add some simpler cuda_kernels#2880
Conversation
d4f28c4 to
2e893dd
Compare
c791e2c to
3ff1e2e
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files
|
a39f54e to
faca261
Compare
23c96e9 to
31dd317
Compare
jpivarski
left a comment
There was a problem hiding this comment.
These look good, but they need tests (user-level tests in tests-cuda).
Do you know which ak.* functions would test them? One way to find out is to search the codebase for a kernel name and put in an exception before the kernel runs, then run everything in the tests directory to see what fails on the CPU, then just copy that test into tests-cuda. If you have a choice, you'd want to find one that doesn't trigger other kernels that don't yet exist in CUDA.
Another way to search is to do the same in the tests-cuda directory with an exception on one of the kernels that's similar to the kernel whose test you want to add. The tests in the tests-cuda directory are already designed around not touching kernels that don't yet exist. (Eventually, everything will need to work, but you want to get there in small steps.)
These can be merged and their tests can come in another PR, or you can put the tests in this PR for better bookkeeping (so that you can be sure that you got them all; the diff makes a good checklist).
ianna
left a comment
There was a problem hiding this comment.
@ManasviGoyal and @jpivarski - I'm ok with the one-to-one copy of the CPU to GPU kernels. However, our code readability has improved a lot (thanks to @agoose77 and @ioanaif :-) I was wandering if we should make the kernels code more readable (e.g self-documented) by using similar to the code base variable names?
I'd prefer to not refactor the kernel names and the names of their arguments because
|
|
This PR doesn't affect awkward-cpp, so it does not need to go before @agoose77's upcoming release of awkward-cpp and awkward. |
Added some
cuda_kernels