Page MenuHomePhabricator

ThomasRaoux (Thomas Raoux)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 29 2019, 2:32 PM (190 w, 3 d)

Recent Activity

Today

ThomasRaoux accepted D146816: [mlir][linalg] Use affine apply in im2col gather index calculations.

Thanks!

Fri, Mar 24, 9:04 AM · Restricted Project, Restricted Project

Yesterday

ThomasRaoux accepted D144678: [mlir][linalg] Refactor convolution to img2col conversion to use gather semantics.

LGTM!

Thu, Mar 23, 4:16 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D146736: [mlir][Vector] NFC - Reorganize vector patterns.

The re-oragnization looks good to me. I assume no changes in the patterns so I haven't looked into them.

Thu, Mar 23, 11:17 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D146742: [mlir][Vector] Retire one old filter-based test.
Thu, Mar 23, 10:56 AM · Restricted Project, Restricted Project

Tue, Mar 21

ThomasRaoux accepted D145447: [mlir][sparse][gpu] end-to-end test for 2:4 sparsity on NVidia GPUs.

Looks great!

Tue, Mar 21, 11:01 AM · Restricted Project, Restricted Project

Sun, Mar 19

ThomasRaoux accepted D146130: [mlir][Transform] Add support for mapping to GPU warps and to linear ids.

LGTM, added a few nits

Sun, Mar 19, 10:21 PM · Restricted Project, Restricted Project

Fri, Mar 17

ThomasRaoux accepted D146319: [mlir][gpu][nvvm] refined sparsity selector test and verification of mma.sp.
Fri, Mar 17, 11:52 AM · Restricted Project, Restricted Project

Wed, Mar 15

ThomasRaoux added inline comments to D146150: [mlir][memref] Fold subview into GPU subgroup MMA load/store ops.
Wed, Mar 15, 9:36 AM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D146150: [mlir][memref] Fold subview into GPU subgroup MMA load/store ops.
Wed, Mar 15, 9:16 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D146150: [mlir][memref] Fold subview into GPU subgroup MMA load/store ops.

Thanks Lei!

Wed, Mar 15, 9:15 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D146110: [mlir][gpu][nvvm] fixed bug with literal for inline asm for mma instruction.

LGTM but it would be good to have @christopherbate's opinion

Wed, Mar 15, 9:10 AM · Restricted Project, Restricted Project

Tue, Mar 14

ThomasRaoux added inline comments to D145133: [mlir][TilingInterface] Modify `TilingInterface` methods to better return the state of the transformed IR..
Tue, Mar 14, 2:57 AM · Restricted Project, Restricted Project

Mon, Mar 13

ThomasRaoux accepted D145942: [mlir][vector] Add gather lowering patterns.

LGTM

Mon, Mar 13, 6:17 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D145942: [mlir][vector] Add gather lowering patterns.
Mon, Mar 13, 8:41 AM · Restricted Project, Restricted Project

Thu, Mar 9

ThomasRaoux accepted D145638: [mlir][vector][nvgpu] Move MMA contraction preparation to VectorUtils.
Thu, Mar 9, 8:43 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D145638: [mlir][vector][nvgpu] Move MMA contraction preparation to VectorUtils.

LGTM, added one more nit about file name.

Thu, Mar 9, 8:27 AM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D145638: [mlir][vector][nvgpu] Move MMA contraction preparation to VectorUtils.
Thu, Mar 9, 7:22 AM · Restricted Project, Restricted Project

Wed, Mar 8

ThomasRaoux added a comment to D145638: [mlir][vector][nvgpu] Move MMA contraction preparation to VectorUtils.

Thanks for the clean up!

Wed, Mar 8, 6:55 PM · Restricted Project, Restricted Project
ThomasRaoux committed rG117db47d02c1: [mlir][scf] Fix bug in software pipeliner and simplify the logic (authored by ThomasRaoux).
[mlir][scf] Fix bug in software pipeliner and simplify the logic
Wed, Mar 8, 12:06 PM · Restricted Project, Restricted Project
ThomasRaoux closed D145598: [mlir][scf] Fix bug in software pipeliner and simplify the logic.
Wed, Mar 8, 12:06 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D145598: [mlir][scf] Fix bug in software pipeliner and simplify the logic.
Wed, Mar 8, 10:03 AM · Restricted Project, Restricted Project

Tue, Feb 28

ThomasRaoux accepted D144972: [mlir][NFC] Address filecheck_lint findings in Vector/CPU/test-broadcast.mlir..
Tue, Feb 28, 8:46 AM · Restricted Project, Restricted Project

Thu, Feb 23

ThomasRaoux added a comment to D144678: [mlir][linalg] Refactor convolution to img2col conversion to use gather semantics.

still looking, few nits for now

Thu, Feb 23, 3:25 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D144656: [mlir][Linalg] Reimplement hoisting on tensors as a subset-based transformation.
Thu, Feb 23, 2:39 PM · Restricted Project, Restricted Project
ThomasRaoux committed rG17b2e73cb477: [mlir][LinAlg][Transform] Add a transform op for conv2d to im2col (authored by qcolombet).
[mlir][LinAlg][Transform] Add a transform op for conv2d to im2col
Thu, Feb 23, 2:30 PM · Restricted Project, Restricted Project
ThomasRaoux closed D144108: [mlir][LinAlg][Transform] Add a transform op for conv2d to im2col.
Thu, Feb 23, 2:29 PM · Restricted Project, Restricted Project
ThomasRaoux abandoned D144294: [mlir][linalg] Add pattern to convert batch_matmul to matmul.
Thu, Feb 23, 1:54 PM · Restricted Project, Restricted Project

Feb 21 2023

ThomasRaoux accepted D144414: [mlir][Vector] Add folding for masked reductions and vector.mask.
Feb 21 2023, 7:27 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D144427: [mlir][Vector] Add support for high-order masked contractions.
Feb 21 2023, 7:26 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D144427: [mlir][Vector] Add support for high-order masked contractions.
Feb 21 2023, 12:03 PM · Restricted Project, Restricted Project
ThomasRaoux added a comment to D144414: [mlir][Vector] Add folding for masked reductions and vector.mask.

Looks good overall, added few nits

Feb 21 2023, 12:02 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D144239: [mlir][Vector] Support masking for more contraction flavors.

LGTM

Feb 21 2023, 11:54 AM · Restricted Project, Restricted Project

Feb 20 2023

ThomasRaoux added a comment to D144294: [mlir][linalg] Add pattern to convert batch_matmul to matmul.

I am unclear why this special casing is needed...
I routinely convert higher-D ops into lower-D generic ops with rank-reducing patterns.
In my use cases, I am not relying on the named ops for further transformations / optimizations.

IMO this just points at the need to finally start that inverse generalization transform: linalg.generic -> linalg.named op.
I was still dragging my feet because I am still hoping we can do significantly better than special casing, but when the special casing leaks into N^2 land, it is time to just do it.

So bottom line, could you start a new file called Specialization.cpp with a functional transform API FailureOr<LinalgOp> specialize(linalg::GenericOp genericOp).

For this use case, you should only need:

if (isaContractionOpInterface(genericOp) && /*check indexing maps*/ && /*check reduction type*/)
  return rewriter.replaceOpWithNewOp<linalg::MatmulOp>(...);

That switch can grow over time and is the only place in the compiler where we need such logic.
This will compose with rank-reducing patterns that we have filtere over time to properly use rank-reducing slices.

Feb 20 2023, 7:00 PM · Restricted Project, Restricted Project

Feb 17 2023

ThomasRaoux requested review of D144294: [mlir][linalg] Add pattern to convert batch_matmul to matmul.
Feb 17 2023, 12:57 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D144108: [mlir][LinAlg][Transform] Add a transform op for conv2d to im2col.

Thanks for addressing @qcolombet , I am fine with iterating from this and seeing where it goes.
I can see that it will not be in an ideal form for mapping im2col on device, I expect we will be able to evolve it iteratively.

Please wait for @mravishankar for a final confirmation

Feb 17 2023, 7:41 AM · Restricted Project, Restricted Project
ThomasRaoux committed rGddeb55ab3359: [mlir] add option to multi-buffering (authored by ThomasRaoux).
[mlir] add option to multi-buffering
Feb 17 2023, 7:35 AM · Restricted Project, Restricted Project
ThomasRaoux closed D144227: [mlir] add option to multi-buffering.
Feb 17 2023, 7:35 AM · Restricted Project, Restricted Project
ThomasRaoux updated the diff for D144227: [mlir] add option to multi-buffering.

rebase and address review comment

Feb 17 2023, 7:34 AM · Restricted Project, Restricted Project

Feb 16 2023

ThomasRaoux committed rG0eabb884abeb: [mlir][gpu] NFC let user pick the threadID values when distributing… (authored by ThomasRaoux).
[mlir][gpu] NFC let user pick the threadID values when distributing…
Feb 16 2023, 7:27 PM · Restricted Project, Restricted Project
ThomasRaoux closed D144219: [mlir][gpu] NFC let user pick the threadID values when distributing foreach_thread.
Feb 16 2023, 7:27 PM · Restricted Project, Restricted Project
ThomasRaoux updated the diff for D144219: [mlir][gpu] NFC let user pick the threadID values when distributing foreach_thread.
Feb 16 2023, 7:26 PM · Restricted Project, Restricted Project
ThomasRaoux added a reverting change for rG2fc3c5c34c4c: [mlir][vector] Prevent duplicating operations during vector distribute: rGe3a88a41af83: Revert "[mlir][vector] Prevent duplicating operations during vector distribute".
Feb 16 2023, 7:08 PM · Restricted Project, Restricted Project
ThomasRaoux committed rGe3a88a41af83: Revert "[mlir][vector] Prevent duplicating operations during vector distribute" (authored by ThomasRaoux).
Revert "[mlir][vector] Prevent duplicating operations during vector distribute"
Feb 16 2023, 7:08 PM · Restricted Project, Restricted Project
ThomasRaoux added a reverting change for D143629: [mlir][vector] Prevent duplicating operations during vector distribute: rGe3a88a41af83: Revert "[mlir][vector] Prevent duplicating operations during vector distribute".
Feb 16 2023, 7:07 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D144227: [mlir] add option to multi-buffering.
Feb 16 2023, 3:35 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D144219: [mlir][gpu] NFC let user pick the threadID values when distributing foreach_thread.
Feb 16 2023, 2:36 PM · Restricted Project, Restricted Project

Feb 15 2023

ThomasRaoux added a comment to D144159: [mlir][vector] Improve vector type accessor methods.

please mark it as NFC

Feb 15 2023, 7:21 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D144159: [mlir][vector] Improve vector type accessor methods.

Thanks!

Feb 15 2023, 7:21 PM · Restricted Project, Restricted Project
ThomasRaoux added a comment to D144113: [mlir][vectorToGPU] Fix type used when folding transpose into read op.

IMO, the accessor name could use some improvements---it's very confusing and error-prone just being getVectorType(); making it something like getSrcVectorType() would make it far easier to avoid pitfalls. At least for me, I need to read the impl to double check what it means by just getVectorType().

Feb 15 2023, 9:57 AM · Restricted Project, Restricted Project
ThomasRaoux committed rG3cf7f2249825: [mlir][vectorToGPU] Fix type used when folding transpose into read op (authored by ThomasRaoux).
[mlir][vectorToGPU] Fix type used when folding transpose into read op
Feb 15 2023, 9:34 AM · Restricted Project, Restricted Project
ThomasRaoux closed D144113: [mlir][vectorToGPU] Fix type used when folding transpose into read op.
Feb 15 2023, 9:34 AM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D144113: [mlir][vectorToGPU] Fix type used when folding transpose into read op.
Feb 15 2023, 9:24 AM · Restricted Project, Restricted Project
ThomasRaoux added a reviewer for D144113: [mlir][vectorToGPU] Fix type used when folding transpose into read op: antiagainst.
Feb 15 2023, 8:57 AM · Restricted Project, Restricted Project
ThomasRaoux requested review of D144113: [mlir][vectorToGPU] Fix type used when folding transpose into read op.
Feb 15 2023, 8:56 AM · Restricted Project, Restricted Project

Feb 14 2023

ThomasRaoux accepted D143965: [mlir][Vector] Add support for masked vector.contract.

LGTM

Feb 14 2023, 11:57 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D143939: [mlir][Vector] Add support for masked vector gather ops.

Looks good to me. Would be better to have a test to at least make sure it doesn't crash or emit wrong code until everything is ready

Feb 14 2023, 11:27 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D143922: [mlir][gpu] Add support for unsigned integer extend in vector to gpu.subgroup_mma lowering.
Feb 14 2023, 8:45 AM · Restricted Project, Restricted Project
ThomasRaoux accepted D143937: [mlir][Vector] Enable masking for static shapes.

awesome!

Feb 14 2023, 8:41 AM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D143922: [mlir][gpu] Add support for unsigned integer extend in vector to gpu.subgroup_mma lowering.
Feb 14 2023, 8:39 AM · Restricted Project, Restricted Project

Feb 13 2023

ThomasRaoux added inline comments to D143922: [mlir][gpu] Add support for unsigned integer extend in vector to gpu.subgroup_mma lowering.
Feb 13 2023, 11:25 PM · Restricted Project, Restricted Project
ThomasRaoux committed rG288ae0b92f57: [mlir][gpu] NFC change to pass threadID ops to… (authored by ThomasRaoux).
[mlir][gpu] NFC change to pass threadID ops to…
Feb 13 2023, 5:28 PM · Restricted Project, Restricted Project
ThomasRaoux closed D143950: [mlir][gpu] NFC change to pass threadID ops to rewriteOneForeachThreadToGpuThreads.
Feb 13 2023, 5:28 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D143950: [mlir][gpu] NFC change to pass threadID ops to rewriteOneForeachThreadToGpuThreads.
Feb 13 2023, 5:19 PM · Restricted Project, Restricted Project
ThomasRaoux updated the diff for D143950: [mlir][gpu] NFC change to pass threadID ops to rewriteOneForeachThreadToGpuThreads.

address review comment

Feb 13 2023, 5:18 PM · Restricted Project, Restricted Project
ThomasRaoux added a reviewer for D143950: [mlir][gpu] NFC change to pass threadID ops to rewriteOneForeachThreadToGpuThreads: harsh.
Feb 13 2023, 2:27 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D143950: [mlir][gpu] NFC change to pass threadID ops to rewriteOneForeachThreadToGpuThreads.
Feb 13 2023, 2:10 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D143922: [mlir][gpu] Add support for unsigned integer extend in vector to gpu.subgroup_mma lowering.
Feb 13 2023, 10:09 AM · Restricted Project, Restricted Project

Feb 10 2023

ThomasRaoux accepted D143738: [mlir][Vector] Significantly improve VectorToGPU.cpp.

Thanks!

Feb 10 2023, 7:31 AM · Restricted Project, Restricted Project

Feb 9 2023

ThomasRaoux committed rG2fc3c5c34c4c: [mlir][vector] Prevent duplicating operations during vector distribute (authored by ThomasRaoux).
[mlir][vector] Prevent duplicating operations during vector distribute
Feb 9 2023, 12:27 AM · Restricted Project, Restricted Project
ThomasRaoux closed D143629: [mlir][vector] Prevent duplicating operations during vector distribute.
Feb 9 2023, 12:26 AM · Restricted Project, Restricted Project

Feb 8 2023

ThomasRaoux updated the diff for D143629: [mlir][vector] Prevent duplicating operations during vector distribute.
Feb 8 2023, 11:19 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D143629: [mlir][vector] Prevent duplicating operations during vector distribute.
Feb 8 2023, 11:17 PM · Restricted Project, Restricted Project

Feb 7 2023

ThomasRaoux added a comment to D143223: [mlir][gpu] Add support for integer types in gpu.subgroup_mma ops.

@ThomasRaoux I added changes to the GPUToNVVM lowering to support integer types. Would it be better to move those changes to a separate revision?

Feb 7 2023, 2:20 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D143223: [mlir][gpu] Add support for integer types in gpu.subgroup_mma ops.

Thanks for also adding lowering to nvvm!

Feb 7 2023, 2:15 PM · Restricted Project, Restricted Project

Feb 6 2023

ThomasRaoux committed rGd18523c0430c: [mlir][linalg] Check for tensor of 0 dims during vectorization (authored by ThomasRaoux).
[mlir][linalg] Check for tensor of 0 dims during vectorization
Feb 6 2023, 10:34 PM · Restricted Project, Restricted Project
ThomasRaoux closed D143462: [mlir][linalg] Check for tensor of 0 dims during vectorization.
Feb 6 2023, 10:34 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D143462: [mlir][linalg] Check for tensor of 0 dims during vectorization.
Feb 6 2023, 10:16 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D143223: [mlir][gpu] Add support for integer types in gpu.subgroup_mma ops.

What would happen if we run lowering to SPIRV or NVVM? We don't want to crash or miscompile.

Feb 6 2023, 9:40 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D143423: [mlir][vector] add proper verification to vector.print operation.
Feb 6 2023, 1:54 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D143423: [mlir][vector] add proper verification to vector.print operation.
Feb 6 2023, 10:58 AM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D143423: [mlir][vector] add proper verification to vector.print operation.
Feb 6 2023, 10:48 AM · Restricted Project, Restricted Project

Feb 3 2023

ThomasRaoux committed rGa7686db801ff: [mlir][gpu] Allow distributing to different level of IDs without failing (authored by ThomasRaoux).
[mlir][gpu] Allow distributing to different level of IDs without failing
Feb 3 2023, 6:03 PM · Restricted Project, Restricted Project
ThomasRaoux closed D143298: [mlir][gpu] Allow distributing to different level of IDs without failing.
Feb 3 2023, 6:03 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D143298: [mlir][gpu] Allow distributing to different level of IDs without failing.
Feb 3 2023, 2:57 PM · Restricted Project, Restricted Project
ThomasRaoux committed rGc0318f079a0c: Fix bazel dependency (authored by ThomasRaoux).
Fix bazel dependency
Feb 3 2023, 12:18 AM · Restricted Project
ThomasRaoux closed D143244: Fix bazel dependency.
Feb 3 2023, 12:18 AM · Restricted Project, Restricted Project
ThomasRaoux committed rG62570b722fa3: [mlir][linalg] Fix crash in vectorizer when expanding affine apply (authored by ThomasRaoux).
[mlir][linalg] Fix crash in vectorizer when expanding affine apply
Feb 3 2023, 12:17 AM · Restricted Project, Restricted Project
ThomasRaoux closed D143243: [mlir][linalg] Fix crash in vectorizer when expanding affine apply.
Feb 3 2023, 12:17 AM · Restricted Project, Restricted Project

Feb 2 2023

ThomasRaoux requested review of D143244: Fix bazel dependency.
Feb 2 2023, 11:54 PM · Restricted Project, Restricted Project
ThomasRaoux requested review of D143243: [mlir][linalg] Fix crash in vectorizer when expanding affine apply.
Feb 2 2023, 11:52 PM · Restricted Project, Restricted Project

Jan 30 2023

ThomasRaoux accepted D142922: [mlir][vector] Add folder for bitcast of integer splat constants.

Nice :) Thanks! Make sure to update the title and description.

Jan 30 2023, 6:57 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D142945: [mlir] return nullopt for getNeutralElement.
Jan 30 2023, 5:54 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D142922: [mlir][vector] Add folder for bitcast of integer splat constants.
Jan 30 2023, 4:42 PM · Restricted Project, Restricted Project
ThomasRaoux accepted D142915: [mlir][vector] Clarify vector.contract promotion behavior.

Thanks!

Jan 30 2023, 3:32 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D142915: [mlir][vector] Clarify vector.contract promotion behavior.
Jan 30 2023, 11:14 AM · Restricted Project, Restricted Project

Jan 29 2023

ThomasRaoux accepted D142319: [mlir] skip 0-D vector in BubbleUpBitCastForStridedSliceInsert.

LGTM

Jan 29 2023, 6:07 PM · Restricted Project, Restricted Project
ThomasRaoux added inline comments to D142319: [mlir] skip 0-D vector in BubbleUpBitCastForStridedSliceInsert.
Jan 29 2023, 4:40 PM · Restricted Project, Restricted Project

Jan 26 2023

ThomasRaoux accepted D142661: [mlir][Linalg] Adding a greedy packing transform dialect op..
Jan 26 2023, 1:43 PM · Restricted Project, Restricted Project

Jan 19 2023

ThomasRaoux updated subscribers of D141804: [mlir][linalg] Omit printing result types for named ops..

For instance developers often store models/IR in linalg format to be able to work in isolation of the front end. Those kind of changes forces them to regenerate models.

I think this is the only valid argument against landing this PR in this whole thread.

I am also curious why linalg was used as a storage format. Are there many clients/models that use it instead of higher level dialects?

Jan 19 2023, 12:19 PM · Restricted Project, Restricted Project
ThomasRaoux committed rG066b4fcb8df2: [mlir] Update VectorToGPU to new memory space (authored by ThomasRaoux).
[mlir] Update VectorToGPU to new memory space
Jan 19 2023, 12:13 PM · Restricted Project, Restricted Project