8000 Tags · astrozot/Metal.jl · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Tags: astrozot/Metal.jl

Tags

v1.6.0

Toggle v1.6.0's commit message
[Diff since v1.5.1](JuliaGPU/Metal.jl@v1.5.1...v1.6.0)

- Metal, MPS, and MPSGraph frameworks’ enums and objects are now automatically wrapped with Clang.jl
- Initial MPSGraph support. Currently used to replace MPS matrix multiplication on configurations where the previous method could fail (JuliaGPU#381)
- Many more improvements and bug fixes

**Merged pull requests:**
- Add error checking to command buffer completion handler (JuliaGPU#521) (@vovw)
- Enable `add_functions!` test under shader validation (JuliaGPU#522) (@christiangnrd)
- Update wrapping readme (JuliaGPU#525) (@christiangnrd)
- Automatically wrap Metal and MPS headers (feat. Properties) (JuliaGPU#526) (@christiangnrd)
- Objective-C Availability support (JuliaGPU#527) (@christiangnrd)
- Small followup to JuliaGPU#526 (JuliaGPU#528) (@christiangnrd)
- Add `nextafter` intrinsic (JuliaGPU#529) (@christiangnrd)
- Improvements to float intrinsics (JuliaGPU#531) (@christiangnrd)
- Fix Float16 sincos intrinsic (JuliaGPU#533) (@christiangnrd)
- Fix format suggestion formatting when diff contains "```" (JuliaGPU#534) (@christiangnrd)
- Fix rewriter for version-gated expressions (JuliaGPU#535) (@christiangnrd)
- Move BFloat16 code out of extension (JuliaGPU#536) (@christiangnrd)
- Version-related fixes to MPSNDArray (JuliaGPU#537) (@christiangnrd)
- Use GPUToolbox.jl (JuliaGPU#538) (@christiangnrd)
- [tests] Assume compatible system if xcode not installed (JuliaGPU#539) (@christiangnrd)
- Add .git-blame-ignore-revs and a few other fixes (JuliaGPU#541) (@christiangnrd)
- Integer & atomic Intrinsics improvements (JuliaGPU#544) (@christiangnrd)
- [NFC] Indentation consistency (JuliaGPU#545) (@christiangnrd)
- Update .git-blame-ignore-revs (JuliaGPU#546) (@christiangnrd)
- Link to issue (JuliaGPU#548) (@christiangnrd)
- Test both simd shuffle intrinsics. (JuliaGPU#553) (@christiangnrd)
- Enabling previously disabled test and mark broken (JuliaGPU#554) (@christiangnrd)
- Support pow with Int exponent (JuliaGPU#557) (@christiangnrd)
- Fixes and more tests for `unsafe_wrap` (JuliaGPU#558) (@christiangnrd)
- `Pi` and `e` to `Float32` and `Float16` (JuliaGPU#559) (@christiangnrd)
- Update GPUToolbox compat (JuliaGPU#560) (@christiangnrd)
- Split up intrinsics tests (JuliaGPU#561) (@christiangnrd)
- Remove reference to 'dir' in profiling docs (JuliaGPU#563) (@christiangnrd)
- Ensure synchronization before unsafe_wrapping of shared gpu array (JuliaGPU#564) (@christiangnrd)
- [NFC] Move linear algebra wrappers out of `MPS` lib (JuliaGPU#565) (@christiangnrd)
- Initial MPSGraph support (JuliaGPU#566) (@christiangnrd)
- Remove copy when possible from cpu rnad using GPU RNG (JuliaGPU#568) (@christiangnrd)
- Code coverage and misc fixes (JuliaGPU#569) (@christiangnrd)
- Remove obsolete `MtlLargerDeviceArray` (JuliaGPU#574) (@christiangnrd)
- Silence warning on 1.12+ (JuliaGPU#575) (@christiangnrd)
- 15.4 SDK changes (JuliaGPU#579) (@christiangnrd)
- Faster matmul sometimes (JuliaGPU#580) (@christiangnrd)
- Fix `erf` and a few other improvements (JuliaGPU#582) (@christiangnrd)
- Use an appropriate amount of threads in unified memory example (JuliaGPU#583) (@christiangnrd)
- Clean up test imports (JuliaGPU#584) (@christiangnrd)
- Fix some type ambiguities (JuliaGPU#585) (@christiangnrd)
- Fix findall output type (JuliaGPU#587) (@christiangnrd)
- Fix tests for macOS 13 (JuliaGPU#591) (@christiangnrd)
- Minor `findall` and `accumulate` tests improvements (JuliaGPU#592) (@christiangnrd)
- Bump version (JuliaGPU#595) (@christiangnrd)

**Closed issues:**
- API Validation failures (JuliaGPU#467)
- Handle MTLCommandBuffer Error Logs (JuliaGPU#510)
- `sincos` intrinsic fails to compile with Float16 (JuliaGPU#530)
- Can't compare `Float32` with `pi` on Metal (JuliaGPU#551)
- `^(::Float32, ::Integer)` uses double precision (JuliaGPU#552)
- Code coverage broken (JuliaGPU#556)
- Remove `MtlLargerDeviceArray`? (JuliaGPU#573)
- Installation of Metal does not work when DiffEqGPU is also installed. (JuliaGPU#577)
- `findall` output always uses default storage mode instead of matching input storage mode (JuliaGPU#578)
- Qualify definitions of BroadcastStyle (JuliaGPU#586)
- New Dynamic Dispatch when using ColorTypes (JuliaGPU#588)
- Release new version of Metal.jl (JuliaGPU#593)

v1.5.1

Toggle v1.5.1's commit message
[Diff since v1.5.0](JuliaGPU/Metal.jl@v1.5.0...v1.5.1)

**Merged pull requests:**
- Adapt to `minver` in ObjectiveC.jl (JuliaGPU#513) (@christiangnrd)
- Add Runic action to suggest formatting changes. (JuliaGPU#517) (@maleadt)
- Increase polling interval for benchmark action (JuliaGPU#518) (@christiangnrd)
- Adapt to GPUArrays.jl changes. (JuliaGPU#519) (@maleadt)

**Closed issues:**
- Benchmark CI failures due to too many requests (JuliaGPU#516)

v1.5.0

Toggle v1.5.0's commit message
[Diff since v1.4.2](JuliaGPU/Metal.jl@v1.4.2...v1.5.0)

Metal.jl 1.5 is a relatively minor release, which the most important change being behind the scenes: [GPUArrays.jl v11 has switched to KernelAbstractions.jl](https://juliagpu.org/post/2025-01-07-gpuarrays-11/) (JuliaGPU#461).

There is also one (technically) breaking change: `code_agx` and `@device_code_agx` have been removed (JuliaGPU#512) because of the heavy Python dependency, and conflicts with PythonCall.jl. This functionality did not support recent M GPUs anyway, so it is unlikely to affect many users.

- Improve performance of shared storage copies: JuliaGPU#445
- Add an `is_m4` function: JuliaGPU#498
- JuliaGPU#499

- Fix `fill`: JuliaGPU#496

**Merged pull requests:**
- Add more tests to api validation testing (JuliaGPU#447) (@christiangnrd)
- Adapt to GPUArrays.jl transition to KernelAbstractions.jl. (JuliaGPU#461) (@maleadt)
- Switch CI to 1.11. (JuliaGPU#462) (@maleadt)
- Remove old code and test cleanup (JuliaGPU#464) (@christiangnrd)
- Adapt to JuliaGPU/GPUArrays.jl#567. (JuliaGPU#475) (@maleadt)
- Bump LLVM downgrader (JuliaGPU#479) (@maleadt)
- Store more debug files when encountering compilation errors. (JuliaGPU#482) (@maleadt)
- Use `OncePerProcess` in 1.12+ (JuliaGPU#483) (@christiangnrd)
- Don't run benchmarks from fork (JuliaGPU#485) (@christiangnrd)
- Still run GH Action when merged (JuliaGPU#486) (@christiangnrd)
- Bump IR downgrader (JuliaGPU#489) (@maleadt)
- Move MTL tests and add a few (JuliaGPU#491) (@christiangnrd)
- Generate MTL and MPS structs and enums with Clang.jl (JuliaGPU#492) (@christiangnrd)
- Fix copy tests (JuliaGPU#493) (@christiangnrd)
- Simplify benchmark runner and pipelines (JuliaGPU#494) (@maleadt)
- Fix global linear indexing (`fill!`) (JuliaGPU#496) (@christiangnrd)
- Couple typos and `is_m4` function (JuliaGPU#498) (@christiangnrd)
- Initial support for MPSNDArray (JuliaGPU#499) (@christiangnrd)
- Tweak benchmark CI job (JuliaGPU#501) (@maleadt)
- Fix `MPSNDArrayDescriptor` wrapper (JuliaGPU#502) (@christiangnrd)
- Metal library parsing: using CodecBzip2 feature to ignore padding. (JuliaGPU#504) (@maleadt)
- Followup to JuliaGPU#492: Enable C function wrapping (JuliaGPU#505) (@christiangnrd)
- Rerun random tests with chance of false negative once. (JuliaGPU#506) (@christiangnrd)
- Bump LLVM downgrader (JuliaGPU#507) (@maleadt)
- Test loading of package on unsupported platforms (JuliaGPU#509) (@christiangnrd)
- Remove `device_code_agx` (JuliaGPU#512) (@christiangnrd)
- Fix typo in random tests (JuliaGPU#514) (@christiangnrd)
- Fix Documenter failures (JuliaGPU#515) (@christiangnrd)

**Closed issues:**
- KernelAbstractions: add Atomix back-end (JuliaGPU#218)
- `@device_code_agx` errors when Metal Shader Validation is enabled (JuliaGPU#463)
- `fill` broken after KA integration (JuliaGPU#466)
- Compilation to native code failed: NSError: Undefined symbols (JuliaGPU#480)
- `ObjectiveC.Foundation.NSErrorInstance(ObjectiveC.id{ObjectiveC.Foundation.NSError}(0x000000014cb8bd90))` (JuliaGPU#487)
- phi-related IR downgrade issue (JuliaGPU#488)
- Circular dependency when precompiling (JuliaGPU#495)
- Bad interaction between PyCall and Metal (JuliaGPU#500)
- Add github actions CI for linux, windows and non-functional macOS to ensure that precompilation and loading works (JuliaGPU#508)

v1.4.2

Toggle v1.4.2's commit message
[Diff since v1.4.1](JuliaGPU/Metal.jl@v1.4.1...v1.4.2)

**Merged pull requests:**
- Fix loading on unsupported platforms (JuliaGPU#459) (@christiangnrd)

**Closed issues:**
- Relax package requirements (JuliaGPU#22)
- [windows:] Metal does not precompile anymore when installation not functional (JuliaGPU#457)
- [MacOS:] `Metal.functional()` wrongly returns true despite no GPUs available (JuliaGPU#458)

v1.4.1

Toggle v1.4.1's commit message
[Diff since v1.4.0](JuliaGPU/Metal.jl@v1.4.0...v1.4.1)

**Merged pull requests:**
- Update Readme (JuliaGPU#444) (@christiangnrd)
- Use CPU copy with SharedStorage (JuliaGPU#445) (@christiangnrd)
- Disable nightly CI and fix invalid Metal API usage (JuliaGPU#448) (@christiangnrd)
- Don't report benchmarks on main branch commits (JuliaGPU#450) (@christiangnrd)
- Fix JuliaGPU#451 and a couple other fixes (JuliaGPU#452) (@christiangnrd)
- Only load BFloat16s extension on Apple systems (JuliaGPU#454) (@christiangnrd)
- CompatHelper: bump compat for GPUCompiler to 1, (keep existing compat) (JuliaGPU#455) (@github-actions[bot])

**Closed issues:**
- Don't run benchmarks on the master branch? (JuliaGPU#449)
- `unsafe_wrap(Array, ...)` of a view does not preserve offset information (JuliaGPU#451)
- Metal does not load any more without error when installation not functional (JuliaGPU#453)

v1.4.0

Toggle v1.4.0's commit message
[Diff since v1.3.0](JuliaGPU/Metal.jl@v1.3.0...v1.4.0)

**Merged pull requests:**
- Use unified memory for scalar indexing of permutation matrices (JuliaGPU#313) (@tgymnich)
- Add `MPSMatrixRandom` (JuliaGPU#321) (@christiangnrd)
- [.gitignore] Also ignore versioned Manifests (JuliaGPU#410) (@christiangnrd)
- Remove broken link in Docs (JuliaGPU#413) (@christiangnrd)
- Remove unused [extras] section in Project.toml (JuliaGPU#415) (@christiangnrd)
- Small fix and typos (JuliaGPU#417) (@christiangnrd)
- Add Benchmarking CI (JuliaGPU#420) (@christiangnrd)
- [NFC] Fix warning in `topk` docstrings (JuliaGPU#421) (@christiangnrd)
- Allow initialisation of MTLSize with tuples of different integer types (JuliaGPU#425) (@tgymnich)
- Add CI for macOS 15 (JuliaGPU#426) (@christiangnrd)
- Simplify versioninfo() and report more packages. (JuliaGPU#429) (@maleadt)
- Allow controlling compilation target versions. (JuliaGPU#430) (@maleadt)
- Add a missing memory fence to a SIMD test. (JuliaGPU#432) (@maleadt)
- Fix `MPS.synchronize_state` (JuliaGPU#434) (@christiangnrd)
- Make `lu` results have same storage mode as input (JuliaGPU#435) (@christiangnrd)
- Fix benchmarking CI and benchmark Shared and Private storage modes (JuliaGPU#437) (@christiangnrd)
- NFC tweak to MPSMatrixCopy tests (JuliaGPU#439) (@christiangnrd)
- Get more descriptive errors from flaky test (JuliaGPU#440) (@christiangnrd)

**Closed issues:**
- Port the opportunistic synchronization from CUDA.jl (JuliaGPU#317)
- Control flow-related miscompilation: (JuliaGPU#401)
- More sporadic 1.11 hangs (JuliaGPU#412)
- Support for `LinearAlgebra.kron` (JuliaGPU#422)
- Can't use gemm! methods with Metal (JuliaGPU#423)
- Error for thread/group size with different integer types (JuliaGPU#424)
- README example broken (JuliaGPU#427)
- Intermittent load_store_tg test failure (JuliaGPU#428)

v1.3.0

Toggle v1.3.0's commit message
[Diff since v1.2.0](JuliaGPU/Metal.jl@v1.2.0...v1.3.0)

**Merged pull requests:**
- Fix typo in docs (JuliaGPU#384) (@christiangnrd)
- Bump minimal Julia requirement to v1.10. (JuliaGPU#385) (@maleadt)
- Remove Requires dependency (JuliaGPU#386) (@christiangnrd)
- Reflection: Figure out kernel names by looking at metallib section. (JuliaGPU#390) (@maleadt)
- Add tests for broadcasting minimum and maximum (JuliaGPU#391) (@tgymnich)
- Don't export `MTL` (JuliaGPU#392) (@christiangnrd)
- Add erfinv (JuliaGPU#394) (@tgymnich)
- Add expm1 (JuliaGPU#395) (@tgymnich)
- Cleanup some imports (JuliaGPU#398) (@christiangnrd)
- Remove type-pirated function (JuliaGPU#399) (@christiangnrd)
- Unexport some high-level MPS functionality from `MPS` (JuliaGPU#400) (@christiangnrd)
- Adapt to new REPL precompile changes (JuliaLang/julia#55210) (JuliaGPU#403) (@christiangnrd)
- Bump GPUCompiler. (JuliaGPU#404) (@maleadt)
- Bump LLVM compat (JuliaGPU#407) (@maleadt)
- Make 1.11 CI success mandatory. (JuliaGPU#408) (@maleadt)

**Closed issues:**
- Audit exports/public symbols (JuliaGPU#359)
- Compilation failure on 1.11 (JuliaGPU#370)
- `MTLBinaryArchive` (JuliaGPU#387)
- `Metal.code_agx()` failing in MacOS 15 Beta 3 (JuliaGPU#388)
- Test for min / max broadcasting issue (JuliaGPU#389)
- Type piracy (JuliaGPU#396)
- Potentially unused code in gpuarrays.jl (JuliaGPU#397)
- `Shared` vs `SharedStorage` in examples/unified_memory (JuliaGPU#405)
- Unsuported call to an unknown function when calling `Distributions` (JuliaGPU#406)

v1.2.0

Toggle v1.2.0's commit message
## Metal v1.2.0

[Diff since v1.1.0](JuliaGPU/Metal.jl@v1.1.0...v1.2.0)


**Merged pull requests:**
- Avoid constructing `MulAddMul`s on Julia v1.12+ (JuliaGPU#295) (@dkarrasch)
- Trigger the runtime profiler when a test times out. (JuliaGPU#330) (@maleadt)
- Add MPSMatrixSoftMax (JuliaGPU#333) (@christiangnrd)
- Reorganize and add some MPS tests (JuliaGPU#335) (@christiangnrd)
- Typo fix (JuliaGPU#336) (JuliaGPU#337) (@101001000)
- Add error message for running Metal.jl under Rosetta (JuliaGPU#339) (@tgymnich)
- Add `MPSCommandBuffer` (JuliaGPU#340) (@christiangnrd)
- Bump julia-actions/setup-julia from 1 to 2 (JuliaGPU#341) (@dependabot[bot])
- Revert error message for Rosetta (JuliaGPU#342) (@tgymnich)
- Update to ObjectiveC.jl v3. (JuliaGPU#343) (@maleadt)
- Add autoreleasepools to MPS interface methods. (JuliaGPU#344) (@maleadt)
- Don't redundantly return the cmdbuf from commit methods. (JuliaGPU#345) (@maleadt)
- Whitespace fixes (JuliaGPU#346) (@christiangnrd)
- CompatHelper: bump compat for LLVM to 7, (keep existing compat) (JuliaGPU#347) (@github-actions[bot])
- CompatHelper: add new compat entry for SpecialFunctions in [weakdeps] at version 2, (keep existing compat) (JuliaGPU#352) (@github-actions[bot])
- [NFC] Fix indentation (JuliaGPU#353) (@christiangnrd)
- Bump LLVM downgrader (JuliaGPU#354) (@maleadt)
- Don't export non-existent `contents` (JuliaGPU#356) (@christiangnrd)
- Remove/fix unused exports (JuliaGPU#357) (@christiangnrd)
- Unexport `SimpleVersion` and `AS` (JuliaGPU#360) (@christiangnrd)
- Add support for opaque pointers (JuliaGPU#361) (@maleadt)
- Docstrings (JuliaGPU#362) (@christiangnrd)
- Initial MacOS 15 support (JuliaGPU#365) (@christiangnrd)
- Replace `current_device()` with `device()` (JuliaGPU#366) (@christiangnrd)
- Support reading metallib v1.2.8 files from macOS 15. (JuliaGPU#367) (@maleadt)
- Add metallib (dis)assembly helper scripts. (JuliaGPU#368) (@maleadt)
- Simplify testing of examples. (JuliaGPU#369) (@maleadt)
- Temporarily allow 1.11 to fail. (JuliaGPU#371) (@maleadt)
- CompatHelper: add new compat entry for PrecompileTools at version 1, (keep existing compat) (JuliaGPU#372) (@github-actions[bot])
- Define complex sqrt (JuliaGPU#374) (@mtfishman)
- Check the macOS version during initialization. (JuliaGPU#375) (@maleadt)
- CompatHelper: bump compat for LLVM to 8, (keep existing compat) (JuliaGPU#376) (@github-actions[bot])
- Add `accumulate` implementation (JuliaGPU#377) (@chengchingwen)
- fix derived device array (JuliaGPU#378) (@chengchingwen)
- avoid ReshapedArray using Int128 in metal kernel (JuliaGPU#379) (@chengchingwen)
- improve type stability of derived array (JuliaGPU#380) (@chengchingwen)
- add `findall` implementation (JuliaGPU#382) (@zhenwu0728)
- Bump version (JuliaGPU#383) (@christiangnrd)

**Closed issues:**
- Tests sporadically timing out on 1.11 (JuliaGPU#329)
- ReshapedArray indexing broken because of Int128 operation (JuliaGPU#332)
- KernelAbstractions copyto! typo (JuliaGPU#336)
- Segmentation Faults (JuliaGPU#338)
- Port `accmulate!` and `findall` from CUDA.jl (JuliaGPU#348)
- Tests failing with `GPUCompiler` v0.26.5 and `LLVM` v7.1 (JuliaGPU#350)
- downgrades LLVM (JuliaGPU#355)
- sqrt(::Complex) unsupported due to conversion exceptions (JuliaGPU#364)

v1.1.0

Toggle v1.1.0's commit message
## Metal v1.1.0

[Diff since v1.0.0](JuliaGPU/Metal.jl@v1.0.0...v1.1.0)


**Merged pull requests:**
- Add `resize!` (JuliaGPU#279) (@mtfishman)
- Initial MTLTexture support (JuliaGPU#280) (@christiangnrd)
- Avoid redundant pointer conversions for threadgroup memory. (JuliaGPU#283) (@maleadt)
- Re-implement metallib generation in Julia. (JuliaGPU#284) (@maleadt)
- CompatHelper: add new compat entry for SHA at version 0.7, (keep existing compat) (JuliaGPU#286) (@github-actions[bot])
- Support more of the metallib format (JuliaGPU#288) (@maleadt)
- Address potentiallly buggy `mtl` behaviour. (JuliaGPU#290) (@christiangnrd)
- CompatHelper: add new compat entry for CodecBzip2 at version 0.8, (keep existing compat) (JuliaGPU#292) (@github-actions[bot])
- Remove an unneeded pointer method. (JuliaGPU#293) (@maleadt)
- Use NSAutoreleasePool to clean up memory. (JuliaGPU#294) (@maleadt)
- `adapt_storage`-related improvements (JuliaGPU#296) (@christiangnrd)
- CompatHelper: bump compat for ObjectiveC to 2, (keep existing compat) (JuliaGPU#297) (@github-actions[bot])
- Add support for signposts (JuliaGPU#300) (@maleadt)
- Retain NSError we rethrow to avoid an UAF. (JuliaGPU#302) (@maleadt)
- Minor mapreduce improvements (JuliaGPU#303) (@maleadt)
- Specialize broadcast to avoid integer divisions. (JuliaGPU#304) (@maleadt)
- Better Support for Unified Memory (JuliaGPU#305) (@tgymnich)
- Add 1.11 CI (JuliaGPU#306) (@christiangnrd)
- Remove unused files (JuliaGPU#307) (@tgymnich)
- Skip profiling tests on macOS 14.4/M1. (JuliaGPU#310) (@maleadt)
- Increase test timeout limit to accomodate 1.8 (JuliaGPU#311) (@christiangnrd)
- Test all storage modes (JuliaGPU#314) (@christiangnrd)
- Fix doctests (JuliaGPU#315) (@christiangnrd)
- Fix KernelAbstractions for Unified Memory (JuliaGPU#316) (@tgymnich)
- CompatHelper: add new compat entry for Preferences at version 1, (keep existing compat) (JuliaGPU#318) (@github-actions[bot])
- Minor cleanup (JuliaGPU#319) (@christiangnrd)
- Create MtlArray using memory allocated by Array (JuliaGPU#320) (@christiangnrd)
- Re-enable profiling tests on M1/14.4 when using Xcode 15.3. (JuliaGPU#322) (@maleadt)
- Small typo and doc fixup (JuliaGPU#325) (@christiangnrd)
- BFloat16s.jl extension and related improvements (JuliaGPU#326) (@christiangnrd)
- Support for Julia 1.11 (JuliaGPU#327) (@maleadt)

**Closed issues:**
- Validation-related back-end crash on macOS Ventura (JuliaGPU#34)
- slow broadcast copy in 2D (JuliaGPU#41)
- Poor performance of mapreduce (JuliaGPU#46)
- Multiplication with SubArrays (JuliaGPU#47)
- Add support to creating MtlArray using a memory allocated by Array (JuliaGPU#62)
- Improve use of unified memory (JuliaGPU#86)
- Use Autoreleasepools with Metal (JuliaGPU#103)
- Unknown RFLT tag generated by macOS 13 Metal compiler (JuliaGPU#167)
- mapreduce allocates a lot on the CPU (JuliaGPU#211)
- Legalization errors with vectorized code (JuliaGPU#257)
- Compilation Failure due to undefined symbols (JuliaGPU#276)
- `resize!`, `append!` not defined (JuliaGPU#277)
- tag new version (JuliaGPU#278)
- Panic during profiling tests on 14.4 beta (JuliaGPU#281)
- M3 backend cannot handle atomics with complicated pointer conversions (JuliaGPU#282)
- Int128 does not compile (JuliaGPU#287)
- Two suspicious `mtl`-related behaviours (JuliaGPU#289)
- LU factorization: add allowsingular keyword argument (JuliaGPU#299)
- Autorelease changes lead to use after free with errors (JuliaGPU#301)
- Reductions don't work on Shared Arrays (JuliaGPU#312)

v1.0.0

Toggle v1.0.0's commit message
## Metal v1.0.0

[Diff since v0.5.1](JuliaGPU/Metal.jl@v0.5.1...v1.0.0)


**Merged pull requests:**
- Matrix batches (JuliaGPU#158) (@tgymnich)
- Add 1.10 CI. (JuliaGPU#256) (@maleadt)
- Update manifest (JuliaGPU#258) (@github-actions[bot])
- CompatHelper: bump compat for GPUCompiler to 0.25, (keep existing compat) (JuliaGPU#259) (@github-actions[bot])
- Bump actions/checkout from 3 to 4 (JuliaGPU#260) (@dependabot[bot])
- Update manifest (JuliaGPU#261) (@github-actions[bot])
- CompatHelper: bump compat for CEnum to 0.5, (keep existing compat) (JuliaGPU#262) (@github-actions[bot])
- Update manifest (JuliaGPU#263) (@github-actions[bot])
- CompatHelper: add new compat entry for Artifacts at version 1, (keep existing compat) (JuliaGPU#264) (@github-actions[bot])
- Reduce launch overhead by generating code to encode arguments. (JuliaGPU#265) (@maleadt)
- Remove unused function argument (JuliaGPU#266) (@tgymnich)
- Introduce application tracing profiler (JuliaGPU#267) (@maleadt)
- Remove content(::MTLBuffer), use convert intead. (JuliaGPU#268) (@maleadt)
- Allow more kwargs syntax with kernel launches (JuliaGPU#269) (@maleadt)
- Don't re-use the IO object when shelling out to Python. (JuliaGPU#271) (@maleadt)
- Preserve storage mode when broadcasting. (JuliaGPU#273) (@maleadt)

**Closed issues:**
- Support for macOS Sonoma (JuliaGPU#201)
- Error with Julia 1.10 (JuliaGPU#274)
0