Repository navigation
OpenCL v1.0.0
Breaking changes: none.
Merged pull requests:
- Fall back to a kernel in fill! for unsupported pattern sizes (#503) (@maleadt)
- Tell GPUCompiler which driver consumes the SPIR-V (#504) (@maleadt)
- Julia 1.14 compatibility (#505) (@maleadt)
- Report all toolchain JLLs and their overrides in versioninfo (#507) (@maleadt)
- Use 1.13 instead of 1.13-nightly on Windows (#508) (@christiangnrd)
- SPIRVIntrinsics: call the 3-D builtins as functions (#511) (@maleadt)
- Support wrapping host memory as a CLArray (#513) (@maleadt)
- Add OpenCL.synchronize and OpenCL.@sync (#514) (@maleadt)
- SPIRVIntrinsics: support bits-union element types in local memory (#516) (@maleadt)
- Wait for the device cooperatively (#518) (@maleadt)
- Implement KernelInterface, and support KernelAbstractions 0.10 (#519) (@maleadt)
- Add device property to check for non-uniform work-group support (#523) (@christiangnrd)
- Upgrade to LLVM.jl 10 (#525) (@maleadt)
- SPIRVIntrinsics: sub-group votes and collectives, unchecked shuffle lanes (#526) (@vchuravy)
- Report kernel lookups to the compile hook instead of recompiling (#529) (@maleadt)
- Declare the method tables instead of building the view (#530) (@maleadt)
- SPIRVIntrinsics: use the device scope for atomics on global memory (#531) (@maleadt)
- SPIRVIntrinsics: fix the compare-and-swap loop of @atomic (#532) (@maleadt)
- Remove stale PoCL test skips (#533) (@maleadt)
- Support GPUArrays 12 (#541) (@maleadt)
- SPIRVIntrinsics: implement the atomics with UnsafeAtomics (#542) (@maleadt)
- Use GPUCompiler's atomics descriptor (#543) (@maleadt)
- Also run event tests on rusticl (#545) (@christiangnrd)
- Return 0 from sub_group_size on devices without sub-groups (#556) (@maleadt)
- Indicate when subgroup ballot operations are supported by a backend (#557) (@christiangnrd)
- Test on Intel's CPU runtime (#561) (@maleadt)
- Hash compiler configuration kwargs without boxing them (#564) (@maleadt)
- Reduce the host code compiled for every new kernel (#565) (@maleadt)
- Skip the GPUArrays sum/prod tests on Intel's CPU runtime (#566) (@maleadt)
- Fix comparisons with
Rationals (#567) (@maleadt) - Keep checked conversions out of the exception runtime (#568) (@maleadt)
- Lower the macOS pocl test timeout to 90 minutes (#571) (@maleadt)
- Fill unspecified type parameters when adapting to CLArray (#572) (@maleadt)
- Raise a clear error when passing CPU arrays to kernels (#573) (@maleadt)
- SPIRVIntrinsics: make SpecialFunctions a weak dependency (#574) (@maleadt)
- Translate SPIR-V to OpenCL C in-process (#576) (@maleadt)
- Query binaries of an unbuilt program in the tests again (#577) (@maleadt)
- Re-enable CI against upstream PoCL (#579) (@maleadt)
- Check the alignment of arrays passed to kernels (#581) (@maleadt)
- Test KernelAbstractions launches by their behavior, not the launch kind (#582) (@maleadt)
- Support arrays of isbits unions (#583) (@maleadt)
- Require spirv2clc 0.2.7, and expect float-rational comparisons to work (#588) (@maleadt)
- Render code blocks with
DocumenterCodeBlocks(#589) (@maleadt) - Cache the kernel lookup of
clfunctionwith GPUCompiler'scached_lookup(#590) (@maleadt)
Closed issues:
- Accessing a matrix via boolean mask doesn't work (#301)
- Hardware-accelerated linear KA index is wrong (#346)
- Behaviour discrepancy between the REPL and the testing environment round 2: second reduction boogaloo (#350)
mapreducedim!is super slow (#352)- Issue with nested device arrays (#411)
- [CI] Figure out why Windows is missing some vectorization symbols. (#415)
- Errors thrown in kernels are not reported on Intel's OpenCL driver (NEO) (#501)
- Intel's OpenCL driver (NEO) stores a wrong
Boolfield in a struct followed by a tuple (#502) - pocl_jll: double powr and rootn return Inf on CPUs without AVX2 (LLVM bug, upstream fix available) (#506)
- PoCL crashes building a kernel that branches on undef and calls a function (#509)
- PoCL crashes building kernels that use a value defined on only some paths before a barrier (#510)
- Local memory of a bits-union element type does not compile (#515)
- LLVM's SPIR-V back-end emits invalid SPIR-V for pointers extracted from aggregates (bits-union values) (#517)
- PoCL: clEnqueueSVMMemFill crashes on host memory (#536)
- PoCL: binaries can't be queried before the program is built (#537)
- PoCL: clEnqueueWaitForEvents is not implemented (#538)
- PoCL: Float16 pow fails to link on Windows without SSE4.1 (#539)
- PoCL: pocl_jll links kernels against a build-time SLEEF path (#540)
- Float atomics tests force native addition on devices without cl_ext_float_atomics (#546)
- Launching a kernel with a new signature compiles a lot of signature-independent host code (#550)
- cl.sub_group_size doesn't return 0 for devices without sub-groups (#553)
- TagBot trigger issue (#580)