Repository navigation
KernelInterface-v0.4.2
KernelInterface KernelInterface-v0.4.2
Diff since KernelInterface-v0.4.1
Closed issues:
- Add generic print infrastructure (#17)
- Support generic error infrastructure (#18)
- weird issue with index macro (#30)
- Better stacktraces (#44)
- Stencil example (#49)
- Compilation error with dynamic ndrange (#54)
waitsome times fails (#90)- Illegal memory access was encountered (#91)
- @print functionality inconsistent with CUDADevice() (#112)
- Broadcasting fails with CUDA: unsupported dynamic function invocation (call to overdub) (#113)
- Degraded performance using kwargs in kernels (#114)
- User-facing API like vmap (#117)
- Error on CPU dynamic dispatch (#119)
- eps(::AbstractFloat) inside a kernel doesn't compile on Julia 1.5.1 (#127)
- uniform memory and
@synchronizeinside an if statement (#132) - Use with nested StructArrays (#138)
- Broken link to
@uniformin docs (#151) - Suggestion: Better ergonomics around collecting multiple kernels (#162)
- specify ngroups as alternative to ndrange (#173)
- Pull
@unrollout into its own tiny package (#199) nested task error: unsupported or misplaced expression aliasscopewhen usingjulia --compile=min(#232)- Reduction interface (#234)
- Docs for AMD support. (#235)
- Inconsistent
KernelErroron the GPU telling me to usereturnin my kernel (#248) - Methods for GPU not properly invalidated upon redefinition (#250)
- 3d convolutions (#259)
@synchronizeinside while loops doesn't work on CPUs (#262)- Function calls in kernels not called (#263)
- CI on nigthly is broken due to AMDGPU (#271)
- Synchronization in a nested while loop causes loss of threadID (#274)
- creation of a subarray for function calls results in an error with throw_checksize_error (#275)
@uniforms dependent on@indexvalues fail (#277)- ROCMKernels doesn't support 1.7 (#284)
- Types as arguments fail on GPU (#285)
- tuples with multiple functions cannot be accessed on the GPU with a complicated symbol (#286)
- Function redefinion on GPU fails with indirect call (#287)
- Inconsistent behavior with multiple GPU (#289)
wait(kernel(...)performs much worse on Julia v1.7 (#290)- Unnecessary recompilations using CUDAKernels (#293)
- InvalidIRError: Reason: unsupported dynamic function invocation (call to print_to_string(xs...) (#295)
- Enzyme gradient always seems to stall (#298)
- Include overview in the README (#302)
- Add back support for force-inlining (#313)
- Roadmap to 1.0 (#319)
- Doc: what does CPU() do ? (#324)
- StackOverflow for
get_deviceonROCArray(#325) - Simple Block Reduce Fails when using
whileloops (#330) - Missing docstring for
KernelAbstractions.partition(#333) - @print not functional on AMDGPU (#339)
- Using RuntimeGeneratedFunctions gives a GPU compilation error (#347)
- Const on 1.9 is failing on CI (#350)
KernelAbstractions.@spawn backend ...for easy Julia task based concurrency (#358)- StackOverflow Error on get_backend(cu(rand(3))) (#366)
- Offsetting kernel indices (#384)
- How do I detect what GPU is installed on a host? (#385)
- Add API for device selection (#395)
- Index type (#396)
- Possible error due to KernelAbstractions while using VSCode debugger (#405)
- Variable scoping issue leading to unexpected UndefVarError on CPU (#413)
- exposing warp-level semantics (#420)
- Julia 1.11 private tests are failing (#433)
- Looping over high-dimensional arrays (#438)
- Allow
returnorreturn nothingin kernels (#443) - BUG:
@synchronizeinside loop in CPU is not working (#465) - Inconsistent results across platforms and datatypes on CPU backend (#468)
- Significant perf drop when using dynamic ranges in GPU kernel (#470)
@indexcannot be used in the CPU if is not a direct rhs of an assignment (#471)- simple batched dot kernel is ~1.7x slower with Const on Titan RTX (#479)
- issue with using enzyme on kernel abstractions on CUDA backend (#480)
- LLVM error when using Atomix.@atomic with FP16 (#486)
- Enzyme autodiff produces out-of-bounds error for some kernels. (#493)
- Atomic operations on complex numbers (#497)
- Error when using
@Constmacro with Julia --check-bounds=no startup option (#498) - How (if possible) can we get rid of SparseArrays and StaticArrays? (#506)
- amd gpu give different results when nested loop is used (#517)
- 1.11: reduce_private test generates gcframe under --check-bounds=yes (#528)
- Qualified
KA.@indexmacro not detected. (#542) - localmem does not work for cpu backend? (#544)
- Kernel only gives proper result when adding
@print()(#547) - Complex struct as input to a kernel (#574)
- ndrange semantics and performance surprise (#585)
- Codecov failure (#586)
- Vendor-agnostic device information (#617)
get_backendsupport forMVector(#620)- options for more aggressive inlining (#628)
- API for # of cores/multiprocessors (#631)
- Unexpected behavior for
KA.device!(backend, num)(#636) - WaterLily performance regression on CPU multi-threading backend for Julia 1.12.0 (#644)
- UndefVarError when variable is defined (#647)
@Constcan lead to wrong results on CPU in Julia 1.11/1.12 (#652)- How to query a backend's native/recommended groupsize? (#740)
showofGeneratedKernelError{Msg}throws for an unboundMsg(#897)