Repository navigation
Conversation
…GPUCompiler GPUCompiler now rewrites the simdgroup matrix load/store and tensor intrinsics for older AIR versions during AIR lowering, next to the barrier and atomic intrinsics, and tells the downgrader the element type of the simdgroup matrix pointer operand.
Temporary, until JuliaGPU/GPUCompiler.jl#1046 is released.
Member
Author
|
Closing along with JuliaGPU/GPUCompiler.jl#1046; the legalization stays here. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
JuliaGPU/GPUCompiler.jl#1046 moves the AIR-version legalization of the simdgroup matrix load/store and tensor intrinsics into GPUCompiler's AIR lowering, next to the barrier and atomic intrinsics. This removes Metal.jl's copy from its
finish_ir!override, along with thearg_eltypesmetadata for the simdgroup matrix pointer operands, which GPUCompiler now derives too. Device code keeps emitting the newest form of each intrinsic.Draft until GPUCompiler.jl#1046 is released; the last commit gets GPUCompiler from that branch and will be replaced by a compat bump.
device/intrinsics/simd,linalgandbfloat16pass on an M1 with macOS 27 on Julia 1.10 and 1.13, including the simdgroup matrix kernels compiled and run atmacos=v"15"(AIR 2.7) and the tensor extent query atmacos=v"26"(AIR 2.8).