Page MenuHomePhabricator

ThomasRaoux (Thomas Raoux)
User

Projects

User does not belong to any projects.

User Details

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

Recent Activity

Today

ThomasRaoux added a comment to D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.

The relaxing is too brutal IMO and will likely create multiple issues related to lowering to SCF and LLVM.
To reduce the pain in making this work with transformations I'd suggest to add restrictions on the type.
Basically you're only allowed to:

  1. take elements immediately to the left of your element type in the memref and stick these into the vector.
  2. cast to vector types that have the same number fo bits and a power of 2 size.

Anything else will be a significant amount of pain until we have a solid DataLayout in MLIR.

So basically you can allow the existing semantic + exactly 1 vector type_cast that changes vector type.

memref<axbxcxdxvector<txuxvxf32>> -> memref<axbx | cxdxvector<txuxvxf32>> -> memref<axbx vector<cxdxtxuxvxf32>> -> memref<axbx vector<whatever>> -> vector<whatever>, where:

  1. | is a separator that you can put anywhere on the memref (just like the current vector.type_cast)
  2. whatever has the same bitsize and alignment as cxdxtxuxvxf32.

To make 2. reasonably simple I'd say just allow the most minor of whatever and v x f32 that have a power of 2 size if you want to cast the element type.

I'd recommend very slowly and very carefully relaxing the constraints to match your needs without stepping out of bounds for now.

Wed, Aug 5, 2:46 PM · Restricted Project
ThomasRaoux abandoned D85058: [mlir][vector] Add experimental memref cast operation..

I'm abandoning this change as it is not needed after https://reviews.llvm.org/D85244.

Wed, Aug 5, 11:55 AM · Restricted Project

Yesterday

ThomasRaoux added inline comments to D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.
Tue, Aug 4, 5:03 PM · Restricted Project
ThomasRaoux updated the diff for D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.

rebase

Tue, Aug 4, 5:02 PM · Restricted Project
ThomasRaoux added a comment to D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.

also, with the restrictions out of the way, did you make sure this does not crash the lowering to llvm part (try out a few of your new examples). you may have to return failure() in the lowering logic itself if it breaks anything....

Tue, Aug 4, 3:45 PM · Restricted Project
ThomasRaoux updated the diff for D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.
Tue, Aug 4, 3:44 PM · Restricted Project
ThomasRaoux updated the diff for D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.
Tue, Aug 4, 3:18 PM · Restricted Project
ThomasRaoux requested review of D85244: [mlir][vector] Relax transfer_read/transfer_write restriction on memref operand.
Tue, Aug 4, 1:59 PM · Restricted Project

Mon, Aug 3

ThomasRaoux added a reviewer for D85058: [mlir][vector] Add experimental memref cast operation.: ftynse.
Mon, Aug 3, 8:04 AM · Restricted Project

Sun, Aug 2

ThomasRaoux added a comment to D85058: [mlir][vector] Add experimental memref cast operation..

Does this op really belong to the vector dialect?

It seems like you're plugging a hole somewhere, but it isn't clear what or why this is desirable. Can you explain this in a thread on Discourse?

I agree that understanding the need better would help. We already have reshape/type_cast/shape_cast ops with somewhat specific behaviors, and I want to make sure we design the right operations (preferable just a few).

Sun, Aug 2, 6:01 PM · Restricted Project

Fri, Jul 31

ThomasRaoux requested review of D85058: [mlir][vector] Add experimental memref cast operation..
Fri, Jul 31, 4:39 PM · Restricted Project
ThomasRaoux committed rGcfb955ac370c: [mlir][spirv] Relax restriction on pointer type for CooperativeMatrix load/store (authored by ThomasRaoux).
[mlir][spirv] Relax restriction on pointer type for CooperativeMatrix load/store
Fri, Jul 31, 9:03 AM
ThomasRaoux closed D84993: [mlir][spirv] Relax restriction on pointer type for CooperativeMatrix load/store.
Fri, Jul 31, 9:03 AM · Restricted Project

Thu, Jul 30

ThomasRaoux added inline comments to D84993: [mlir][spirv] Relax restriction on pointer type for CooperativeMatrix load/store.
Thu, Jul 30, 7:56 PM · Restricted Project
ThomasRaoux updated the diff for D84993: [mlir][spirv] Relax restriction on pointer type for CooperativeMatrix load/store.
Thu, Jul 30, 7:53 PM · Restricted Project
ThomasRaoux requested review of D84993: [mlir][spirv] Relax restriction on pointer type for CooperativeMatrix load/store.
Thu, Jul 30, 5:53 PM · Restricted Project
ThomasRaoux committed rG59156bad03ff: [mlir][spirv] Add support for converting memref of vector to SPIR-V (authored by ThomasRaoux).
[mlir][spirv] Add support for converting memref of vector to SPIR-V
Thu, Jul 30, 3:06 PM
ThomasRaoux closed D84982: [mlir][spirv] Add support for converting memref of vector to SPIR-V.
Thu, Jul 30, 3:06 PM · Restricted Project
ThomasRaoux added inline comments to D84982: [mlir][spirv] Add support for converting memref of vector to SPIR-V.
Thu, Jul 30, 2:54 PM · Restricted Project
ThomasRaoux updated the diff for D84982: [mlir][spirv] Add support for converting memref of vector to SPIR-V.
Thu, Jul 30, 2:53 PM · Restricted Project
ThomasRaoux added inline comments to D84982: [mlir][spirv] Add support for converting memref of vector to SPIR-V.
Thu, Jul 30, 2:35 PM · Restricted Project
ThomasRaoux updated the diff for D84982: [mlir][spirv] Add support for converting memref of vector to SPIR-V.

Address review comments

Thu, Jul 30, 2:33 PM · Restricted Project
ThomasRaoux requested review of D84982: [mlir][spirv] Add support for converting memref of vector to SPIR-V.
Thu, Jul 30, 1:56 PM · Restricted Project

Wed, Jul 22

ThomasRaoux committed rGa1b9fb220f6d: [mlir][linalg] Add vectorization transform for CopyOp (authored by ThomasRaoux).
[mlir][linalg] Add vectorization transform for CopyOp
Wed, Jul 22, 12:41 PM
ThomasRaoux closed D83739: [mlir][linalg] Add vectorization transform for CopyOp.
Wed, Jul 22, 12:41 PM · Restricted Project

Wed, Jul 15

ThomasRaoux added inline comments to D83739: [mlir][linalg] Add vectorization transform for CopyOp.
Wed, Jul 15, 10:26 AM · Restricted Project
ThomasRaoux updated the diff for D83739: [mlir][linalg] Add vectorization transform for CopyOp.

Handle scalar case and add a test for it.

Wed, Jul 15, 10:26 AM · Restricted Project

Mon, Jul 13

Herald added a project to D83739: [mlir][linalg] Add vectorization transform for CopyOp: Restricted Project.
Mon, Jul 13, 9:14 PM · Restricted Project
ThomasRaoux accepted D83714: [mlir][StandardToSPIRV] Use spv.UMod for index re-calculation.
Mon, Jul 13, 1:26 PM · Restricted Project
ThomasRaoux committed rG2f23270af9bb: [mlir] Support operations with multiple results in slicing (authored by ThomasRaoux).
[mlir] Support operations with multiple results in slicing
Mon, Jul 13, 1:25 PM
ThomasRaoux closed D83627: [mlir] Support operations with multiple results in slicing.
Mon, Jul 13, 1:25 PM · Restricted Project
ThomasRaoux added inline comments to D83627: [mlir] Support operations with multiple results in slicing.
Mon, Jul 13, 1:02 PM · Restricted Project
ThomasRaoux updated the diff for D83627: [mlir] Support operations with multiple results in slicing.
Mon, Jul 13, 12:56 PM · Restricted Project
ThomasRaoux updated the diff for D83627: [mlir] Support operations with multiple results in slicing.
Mon, Jul 13, 11:22 AM · Restricted Project
ThomasRaoux accepted D83679: [mlir][StandardToSPIRV] Fix conversion for signed remainder.
Mon, Jul 13, 10:59 AM · Restricted Project

Sun, Jul 12

ThomasRaoux updated the diff for D83627: [mlir] Support operations with multiple results in slicing.
Sun, Jul 12, 10:25 PM · Restricted Project
ThomasRaoux added inline comments to D83627: [mlir] Support operations with multiple results in slicing.
Sun, Jul 12, 10:24 PM · Restricted Project
ThomasRaoux updated the diff for D83627: [mlir] Support operations with multiple results in slicing.

Address review comments.

Sun, Jul 12, 10:21 PM · Restricted Project

Sat, Jul 11

Herald added a project to D83627: [mlir] Support operations with multiple results in slicing: Restricted Project.
Sat, Jul 11, 11:47 AM · Restricted Project

Fri, Jul 10

ThomasRaoux committed rG6d5aeb0dceeb: [mlir][linalg] Improve aliasing approximation for hoisting transfer read/write (authored by ThomasRaoux).
[mlir][linalg] Improve aliasing approximation for hoisting transfer read/write
Fri, Jul 10, 3:09 PM
ThomasRaoux closed D83538: [mlir][linalg] Improve aliasing approximation for hoisting transfer read/write. .
Fri, Jul 10, 3:09 PM · Restricted Project
ThomasRaoux updated the diff for D83538: [mlir][linalg] Improve aliasing approximation for hoisting transfer read/write. .

Address review comments

Fri, Jul 10, 2:50 PM · Restricted Project
ThomasRaoux updated the diff for D83538: [mlir][linalg] Improve aliasing approximation for hoisting transfer read/write. .

Thanks Nicolas. I addressed the review, please take another look to confirm that I got it right. Based on what you mentioned my understanding is that if any indices are different in the first ranks (from 0 to memrefRank-vectorRank) then the slices are disjoint for the rest of the ranks I check that the distance between the offset is smaller that the vector size (since I check that the vector types must match)

Fri, Jul 10, 12:50 PM · Restricted Project
Herald added a project to D83538: [mlir][linalg] Improve aliasing approximation for hoisting transfer read/write. : Restricted Project.
Fri, Jul 10, 12:27 AM · Restricted Project

Thu, Jul 9

ThomasRaoux accepted D83476: [mlir][Vector] Fold chains of ExtractOp.

LGTM

Thu, Jul 9, 10:32 AM · Restricted Project

Jul 6 2020

ThomasRaoux added inline comments to D83146: [mlir][Vector] Add custom slt / SCF.if folding to VectorToSCF.
Jul 6 2020, 12:54 AM · Restricted Project

Jul 1 2020

ThomasRaoux committed rGfbce9855e9d5: [mlir][NFC] Move conversion of scf to spir-v ops in their own file (authored by ThomasRaoux).
[mlir][NFC] Move conversion of scf to spir-v ops in their own file
Jul 1 2020, 5:18 PM
ThomasRaoux committed rG0670f855a7d8: [mlir][spirv] Add support for lowering scf.for scf/if with return value (authored by ThomasRaoux).
[mlir][spirv] Add support for lowering scf.for scf/if with return value
Jul 1 2020, 5:18 PM
ThomasRaoux closed D82914: [mlir][NFC] Move conversion of scf to spir-v ops in their own file.
Jul 1 2020, 5:18 PM · Restricted Project
ThomasRaoux closed D82246: [mlir][spirv] Add support for lowering scf.for scf/if with return values.
Jul 1 2020, 5:18 PM · Restricted Project
ThomasRaoux updated the diff for D82246: [mlir][spirv] Add support for lowering scf.for scf/if with return values.
Jul 1 2020, 5:18 PM · Restricted Project
ThomasRaoux updated the diff for D82914: [mlir][NFC] Move conversion of scf to spir-v ops in their own file.
Jul 1 2020, 4:13 PM · Restricted Project
ThomasRaoux added inline comments to D82914: [mlir][NFC] Move conversion of scf to spir-v ops in their own file.
Jul 1 2020, 3:09 PM · Restricted Project
ThomasRaoux updated the diff for D82914: [mlir][NFC] Move conversion of scf to spir-v ops in their own file.
Jul 1 2020, 3:09 PM · Restricted Project
ThomasRaoux added a reviewer for D82914: [mlir][NFC] Move conversion of scf to spir-v ops in their own file: nicolasvasilache.
Jul 1 2020, 8:37 AM · Restricted Project
ThomasRaoux added a reviewer for D82246: [mlir][spirv] Add support for lowering scf.for scf/if with return values: nicolasvasilache.
Jul 1 2020, 8:37 AM · Restricted Project

Jun 30 2020

ThomasRaoux added inline comments to D82246: [mlir][spirv] Add support for lowering scf.for scf/if with return values.
Jun 30 2020, 4:50 PM · Restricted Project
ThomasRaoux updated the diff for D82246: [mlir][spirv] Add support for lowering scf.for scf/if with return values.

I realized my previous patch breaks seriazliation/deserialization since those require merge block to only have merge op in it. I rebased my change on top of D82914 and use the scf context to keep track of the VariableOp created during lowering of the control flow region. This allows adding store when lowering yield operation instead and solve the problem with merge block.
Sorry for the mess this cause in the review process.

Jun 30 2020, 4:50 PM · Restricted Project
ThomasRaoux accepted D82673: [ModuloSchedule] Make PeelingModuloScheduleExpander inheritable..
Jun 30 2020, 4:18 PM · Restricted Project
ThomasRaoux created D82914: [mlir][NFC] Move conversion of scf to spir-v ops in their own file.
Jun 30 2020, 2:42 PM · Restricted Project
ThomasRaoux committed rG446b90135f0f: [mlir] Fix case in MLIRGPUtoVulkanTransforms (authored by marbre).
[mlir] Fix case in MLIRGPUtoVulkanTransforms
Jun 30 2020, 2:08 AM
ThomasRaoux closed D82840: [mlir] Fix case in MLIRGPUtoVulkanTransforms.
Jun 30 2020, 2:08 AM · Restricted Project
ThomasRaoux added a comment to D82840: [mlir] Fix case in MLIRGPUtoVulkanTransforms.

Thanks for the review. I would appreciate if you could commit on my behalf.

Jun 30 2020, 2:08 AM · Restricted Project
ThomasRaoux accepted D82840: [mlir] Fix case in MLIRGPUtoVulkanTransforms.
Jun 30 2020, 12:30 AM · Restricted Project

Jun 26 2020

ThomasRaoux committed rG0e76c0a9ad96: [mlir][vulkan-runner] Make vulkan runner use GPU device memory (authored by ThomasRaoux).
[mlir][vulkan-runner] Make vulkan runner use GPU device memory
Jun 26 2020, 8:12 AM
ThomasRaoux closed D82504: [mlir][vulkan-runner] Make vulkan runner use GPU device memory.
Jun 26 2020, 8:11 AM · Restricted Project

Jun 25 2020

ThomasRaoux created D82619: [mlir][spirv] Add lowering of std alloca to SPIR-V.
Jun 25 2020, 7:08 PM · Restricted Project

Jun 24 2020

ThomasRaoux created D82504: [mlir][vulkan-runner] Make vulkan runner use GPU device memory.
Jun 24 2020, 2:42 PM · Restricted Project

Jun 19 2020

ThomasRaoux committed rGb885b1b92d3d: [mlir] Fix gcc build break due to previous commit (authored by ThomasRaoux).
[mlir] Fix gcc build break due to previous commit
Jun 19 2020, 7:32 PM
ThomasRaoux committed rG670455c77d4b: [mlir][spirv] Legalize subviewop when used with vector transfer (authored by ThomasRaoux).
[mlir][spirv] Legalize subviewop when used with vector transfer
Jun 19 2020, 5:56 PM
ThomasRaoux closed D82106: [mlir][spirv] Legalize subviewop when used with vector transfer.
Jun 19 2020, 5:56 PM · Restricted Project
ThomasRaoux committed rGe4bc08f0121e: [mlir] Allow vector.contract to have mixed types operands (authored by ThomasRaoux).
[mlir] Allow vector.contract to have mixed types operands
Jun 19 2020, 5:24 PM
ThomasRaoux closed D82069: [mlir] Allow vector.contract to have mixed types operands.
Jun 19 2020, 5:24 PM · Restricted Project
ThomasRaoux created D82246: [mlir][spirv] Add support for lowering scf.for scf/if with return values.
Jun 19 2020, 4:19 PM · Restricted Project

Jun 18 2020

ThomasRaoux updated the diff for D82069: [mlir] Allow vector.contract to have mixed types operands.
Jun 18 2020, 2:14 PM · Restricted Project
ThomasRaoux added inline comments to D82069: [mlir] Allow vector.contract to have mixed types operands.
Jun 18 2020, 2:14 PM · Restricted Project
ThomasRaoux committed rGafd43a7a7878: [mlir][vulkan-runner] add support for memref of i8, i16 types in vulkan runner (authored by ThomasRaoux).
[mlir][vulkan-runner] add support for memref of i8, i16 types in vulkan runner
Jun 18 2020, 1:42 PM
ThomasRaoux closed D82068: [mlir][vulkan-runner] add support for memref of i8, i16 types in vulkan runner..
Jun 18 2020, 1:42 PM · Restricted Project
ThomasRaoux committed rG25cbfa078884: [mlir][spirv] Allow mixed type cooperative matrix muladd (authored by ThomasRaoux).
[mlir][spirv] Allow mixed type cooperative matrix muladd
Jun 18 2020, 1:09 PM
ThomasRaoux closed D82042: [mlir][spirv] Allow mixed type cooperative matrix muladd.
Jun 18 2020, 1:09 PM · Restricted Project
ThomasRaoux updated the diff for D82106: [mlir][spirv] Legalize subviewop when used with vector transfer.
Jun 18 2020, 1:06 PM · Restricted Project
ThomasRaoux created D82106: [mlir][spirv] Legalize subviewop when used with vector transfer.
Jun 18 2020, 9:45 AM · Restricted Project

Jun 17 2020

ThomasRaoux created D82069: [mlir] Allow vector.contract to have mixed types operands.
Jun 17 2020, 10:39 PM · Restricted Project
ThomasRaoux created D82068: [mlir][vulkan-runner] add support for memref of i8, i16 types in vulkan runner..
Jun 17 2020, 9:02 PM · Restricted Project
ThomasRaoux created D82042: [mlir][spirv] Allow mixed type cooperative matrix muladd.
Jun 17 2020, 12:24 PM · Restricted Project

Jun 5 2020

ThomasRaoux accepted D81291: [ModuloSchedule] Support instructions with > 1 destination when walking canonical use..
Jun 5 2020, 3:10 PM · Restricted Project
ThomasRaoux created D81286: [mlir][spirv] Fix missing cases in UpdateVCE pass.
Jun 5 2020, 11:17 AM · Restricted Project
ThomasRaoux accepted D81281: [mlir][Vector] Add folding of memref_cast into vector_transfer ops.

LGTM

Jun 5 2020, 10:35 AM · Restricted Project

Jun 4 2020

ThomasRaoux committed rG661235e1267c: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect (authored by ThomasRaoux).
[mlir][gpu] Add subgroup Id/Size/Num to GPU dialect
Jun 4 2020, 11:04 AM
ThomasRaoux closed D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 4 2020, 11:03 AM · Restricted Project
ThomasRaoux added inline comments to D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 4 2020, 9:53 AM · Restricted Project
ThomasRaoux updated the diff for D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 4 2020, 9:53 AM · Restricted Project

Jun 3 2020

ThomasRaoux added inline comments to D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 3 2020, 2:57 PM · Restricted Project
ThomasRaoux updated the diff for D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 3 2020, 2:57 PM · Restricted Project
ThomasRaoux updated the diff for D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 3 2020, 2:56 PM · Restricted Project
ThomasRaoux added inline comments to D81042: [mlir][gpu] Add subgroup Id/Size/Num to GPU dialect.
Jun 3 2020, 9:53 AM · Restricted Project

Jun 2 2020

ThomasRaoux committed rG81dd3a47189e: [mlir][spirv] Fix coop matrix getExtension (authored by ThomasRaoux).
[mlir][spirv] Fix coop matrix getExtension
Jun 2 2020, 5:02 PM
ThomasRaoux closed D80948: [mlir][spirv] Fix coop matrix getExtension..
Jun 2 2020, 5:02 PM · Restricted Project
ThomasRaoux committed rGbbe79e27bdfb: [mlir][spirv] Fix encoding of cooperative matrix type to match SPIRV spec (authored by ThomasRaoux).
[mlir][spirv] Fix encoding of cooperative matrix type to match SPIRV spec
Jun 2 2020, 4:30 PM
ThomasRaoux closed D80852: [mlir][spirv] Fix encoding of cooperative matrix type to match SPIRV spec.
Jun 2 2020, 4:29 PM · Restricted Project