Skip to content

v1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 27 Oct 07:45
· 6 commits to main since this release
e3df311

OpenCL v1.0.0

Diff since v0.10.12

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 clfunction with GPUCompiler's cached_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 Bool field 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)