Page MenuHomePhabricator

herhut (Stephan Herhut)
Animal

Projects

User does not belong to any projects.

User Details

User Since
Jan 7 2020, 7:38 AM (37 w, 3 d)

Recent Activity

Tue, Sep 22

herhut accepted D88091: [MLIR][Standard] Add `atan` to standard dialect.

Please fix the comment.

Tue, Sep 22, 6:11 AM · Restricted Project
herhut updated subscribers of D87938: [mlir][Linalg] Uniformize linalg.generic with named ops..
Tue, Sep 22, 1:39 AM · Restricted Project
herhut added inline comments to D87941: [mlir][shape] Start a pass that lowers shape constraints..
Tue, Sep 22, 1:30 AM · Restricted Project

Mon, Sep 21

herhut added a comment to D87938: [mlir][Linalg] Uniformize linalg.generic with named ops..

I like the new syntax and encoding! Great cleanup. Some more verification of valid forms would be nice.

Mon, Sep 21, 11:58 AM · Restricted Project
herhut added a comment to D87941: [mlir][shape] Start a pass that lowers shape constraints..

Nice!

Mon, Sep 21, 9:39 AM · Restricted Project

Fri, Sep 18

herhut accepted D87894: [mlir] Shape.AssumingOp implements RegionBranchOpInterface..

Thanks!

Fri, Sep 18, 5:33 AM · Restricted Project

Thu, Sep 17

herhut committed rG5e0ded268929: [mlir][Standard] Canonicalize chains of tensor_cast operations (authored by herhut).
[mlir][Standard] Canonicalize chains of tensor_cast operations
Thu, Sep 17, 7:51 AM

Wed, Sep 16

herhut added a comment to D87756: [mlir] Refactored BufferPlacement transformation into BufferDeallocation and BufferHoisting..

Some first comments.

Wed, Sep 16, 10:13 AM · Restricted Project
herhut added a comment to D87696: [mlir][Standard] Canonicalize chains of tensor_cast operations.

I will do the change to use ShapedTypeComponents in a follow up to enable reuse for the memref case.

Wed, Sep 16, 1:04 AM · Restricted Project
herhut updated the diff for D87696: [mlir][Standard] Canonicalize chains of tensor_cast operations.

Comments

Wed, Sep 16, 1:02 AM · Restricted Project

Tue, Sep 15

herhut added reviewers for D87696: [mlir][Standard] Canonicalize chains of tensor_cast operations: frgossen, mehdi_amini, jpienaar.

I have considered to place a templated version of joinShapes somewhere (to be used with ShapedType and a template parameter to figure out the type to create) but wasn't sure where and whether useful.

Tue, Sep 15, 7:50 AM · Restricted Project
herhut requested review of D87696: [mlir][Standard] Canonicalize chains of tensor_cast operations.
Tue, Sep 15, 7:47 AM · Restricted Project
herhut committed rGc897a7fb3e2a: [mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements (authored by herhut).
[mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements
Tue, Sep 15, 6:39 AM
herhut closed D87525: [mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements.
Tue, Sep 15, 6:38 AM · Restricted Project

Mon, Sep 14

herhut added inline comments to D87525: [mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements.
Mon, Sep 14, 2:57 AM · Restricted Project
herhut updated the diff for D87525: [mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements.

More comments

Mon, Sep 14, 2:55 AM · Restricted Project
herhut updated the diff for D87525: [mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements.

Comments...

Mon, Sep 14, 2:01 AM · Restricted Project

Fri, Sep 11

herhut requested review of D87525: [mlir][Standard] Add canonicalizer for dynamic_tensor_from_elements.
Fri, Sep 11, 9:53 AM · Restricted Project

Wed, Sep 9

herhut accepted D86214: [MLIR] Fix typo and expand gpu.host_register description..

Thanks!

Wed, Sep 9, 7:16 AM · Restricted Project
herhut accepted D87366: [MLIR][Standard] Simplify `tensor_from_elements`.

Neat!

Wed, Sep 9, 7:15 AM · Restricted Project
herhut added inline comments to D86287: [MLIR][Standard] Update `tensor_from_elements` assembly format.
Wed, Sep 9, 1:58 AM · Restricted Project

Tue, Sep 8

herhut accepted D86935: [MLIR][Shape] Lower `shape_of` to `dynamic_tensor_from_elements`.

Thanks!

Tue, Sep 8, 3:28 AM · Restricted Project
herhut accepted D85513: [mlir] Added support for loops in BufferPlacement transformation..

Looks good with comments fixed. Thanks!

Tue, Sep 8, 3:25 AM · Restricted Project

Mon, Sep 7

herhut added a comment to D87079: [mlir] remove BufferAssignmentPlacer from BufferAssignmentOpConversionPattern.

Also, as a nit, you could rephrase the summary to just read

Mon, Sep 7, 3:51 AM · Restricted Project
herhut accepted D87079: [mlir] remove BufferAssignmentPlacer from BufferAssignmentOpConversionPattern.

Thanks. Please submit a corresponding PR for TensorFlow before landing.

Mon, Sep 7, 3:48 AM · Restricted Project
herhut added inline comments to D85513: [mlir] Added support for loops in BufferPlacement transformation..
Mon, Sep 7, 3:47 AM · Restricted Project
herhut accepted D87128: [mlir] Fix bug in copy removal.

Can you be a bit more descriptive in the summary of what bug was fixed? If the bug was filed somewhere, reference it. Otherwise please describe a little more.

Mon, Sep 7, 2:24 AM · Restricted Project
herhut requested changes to D87079: [mlir] remove BufferAssignmentPlacer from BufferAssignmentOpConversionPattern.

Do you intend to remove the BufferAssignmentPlacer itself in a separate step?

Mon, Sep 7, 2:16 AM · Restricted Project

Tue, Sep 1

herhut accepted D86287: [MLIR][Standard] Update `tensor_from_elements` assembly format.

Thanks for cleaning this up!

Tue, Sep 1, 8:53 AM · Restricted Project
herhut requested changes to D86935: [MLIR][Shape] Lower `shape_of` to `dynamic_tensor_from_elements`.

Mostly nits. Thanks for adding this!

Tue, Sep 1, 8:49 AM · Restricted Project
herhut accepted D86276: [MLIR][Standard] Add `dynamic_tensor_from_elements` operation.

Thanks. Please fix comments before landing.

Tue, Sep 1, 8:38 AM · Restricted Project

Aug 11 2020

herhut added a comment to D85634: [MLIR][Standard] Fix cast materialization for incompatible types.

Is there anything about this specific to index type? Can this issue happen with any user-defined type?

The solution in this revision looks like a hack. Returning the input when a materialization is requested defeats the whole purpose of materializations, and only works because the assert isn't turned on yet. Realistically, the underlying issue can happen with any type right now. I have a proper fix in the pipeline that should solve this case, where the conversion infra removes casts that become redundant.

Aug 11 2020, 3:22 AM · Restricted Project
herhut added a comment to D85634: [MLIR][Standard] Fix cast materialization for incompatible types.

The simultaneous application of patterns from SCF to standard and from standard to LLVM rewrites the following to invalid IR.

Do we actually need a simultaneous application?

Aug 11 2020, 3:08 AM · Restricted Project

Aug 10 2020

herhut accepted D85631: [MLIR] Adding gpu.host_register op and lower it to a runtime call..

Thanks!

Aug 10 2020, 10:59 AM · Restricted Project
herhut accepted D85073: [MLIR] Make gpu.launch_func rewrite pattern part of the LLVM lowering pass..
Aug 10 2020, 7:50 AM · Restricted Project
herhut added inline comments to D85513: [mlir] Added support for loops in BufferPlacement transformation..
Aug 10 2020, 3:50 AM · Restricted Project
herhut added inline comments to D85634: [MLIR][Standard] Fix cast materialization for incompatible types.
Aug 10 2020, 3:00 AM · Restricted Project

Aug 7 2020

herhut added inline comments to D85518: BEGIN_PUBLIC [mlir] Add support for unranked case for `tensor_store` and `tensor_load` ops. END_PUBLIC.
Aug 7 2020, 6:13 AM · Restricted Project
herhut accepted D85518: BEGIN_PUBLIC [mlir] Add support for unranked case for `tensor_store` and `tensor_load` ops. END_PUBLIC.
Aug 7 2020, 5:15 AM · Restricted Project
herhut accepted D85306: [MLIR][Shape] Add custom assembly format for `shape.any`.

Thanks for cleaning this up!

Aug 7 2020, 2:43 AM · Restricted Project

Aug 6 2020

herhut accepted D85361: [mlir] Lower DimOp to LLVM for unranked memrefs..

Thanks for clarifying!

Aug 6 2020, 2:41 AM · Restricted Project
herhut added inline comments to D85361: [mlir] Lower DimOp to LLVM for unranked memrefs..
Aug 6 2020, 2:25 AM · Restricted Project
herhut added inline comments to D85361: [mlir] Lower DimOp to LLVM for unranked memrefs..
Aug 6 2020, 12:33 AM · Restricted Project

Aug 5 2020

herhut added a comment to D85073: [MLIR] Make gpu.launch_func rewrite pattern part of the LLVM lowering pass..

Nice, some nits.

Aug 5 2020, 12:27 AM · Restricted Project
herhut added a comment to D85133: [mlir] Extend BufferAssignmentTypeConverter with result conversion callbacks.

Just some quick comments.

Aug 5 2020, 12:14 AM · Restricted Project

Aug 4 2020

herhut accepted D85273: [mlir] Lower RankOp to LLVM for unranked memrefs..

Thanks!

Aug 4 2020, 11:56 PM · Restricted Project
herhut accepted D84946: [MLIR] Change GpuLaunchFuncToGpuRuntimeCallsPass to wrap a RewritePattern with the same functionality..
Aug 4 2020, 6:47 AM · Restricted Project

Jul 31 2020

herhut accepted D85019: [mlir] translate types between MLIR LLVM dialect and LLVM IR.

It is a bit sad the we have two dynamic dispatch implementations but I guess there is no way around it. A LLVMTypeNew::translate overloaded method would be great :)

Jul 31 2020, 9:02 AM · Restricted Project
herhut added inline comments to D84946: [MLIR] Change GpuLaunchFuncToGpuRuntimeCallsPass to wrap a RewritePattern with the same functionality..
Jul 31 2020, 9:02 AM · Restricted Project
herhut accepted D85027: [MLIR][Shape] Lower `shape.broadcast` to `scf`.

Looks good. memref<index> has landed upstream so please fix before landing.

Jul 31 2020, 9:02 AM · Restricted Project
herhut added a comment to D84933: [MLIR][Shape] Allow unsafe `shape.broadcast`.

Thank you!

Jul 31 2020, 7:18 AM · Restricted Project
herhut accepted D85017: [mlir] Extended Buffer Assignment to support AllocaOps..
Jul 31 2020, 5:45 AM · Restricted Project
herhut added inline comments to D84946: [MLIR] Change GpuLaunchFuncToGpuRuntimeCallsPass to wrap a RewritePattern with the same functionality..
Jul 31 2020, 3:29 AM · Restricted Project
herhut accepted D84933: [MLIR][Shape] Allow unsafe `shape.broadcast`.

Thanks. With one more test this is good to land!

Jul 31 2020, 1:51 AM · Restricted Project

Jul 30 2020

herhut added inline comments to D84933: [MLIR][Shape] Allow unsafe `shape.broadcast`.
Jul 30 2020, 9:09 AM · Restricted Project
herhut committed rG85defd23aa09: [mlir][shape] Use memref of index in shape lowering (authored by herhut).
[mlir][shape] Use memref of index in shape lowering
Jul 30 2020, 6:20 AM
herhut closed D84938: [mlir][shape] Use memref of index in shape lowering.
Jul 30 2020, 6:20 AM · Restricted Project
herhut added a comment to D84918: [mlir] Add TFFramework dialect to DialectSymbolRegistry..

Looks reasonable to me. However, we are registering this for a dialect that is in very local use. Maybe @rriddle can advise.

Jul 30 2020, 5:46 AM · Restricted Project
herhut requested review of D84938: [mlir][shape] Use memref of index in shape lowering.
Jul 30 2020, 5:38 AM · Restricted Project
herhut committed rGe12db3ed997d: [mlir] Allow index as element type of memref (authored by herhut).
[mlir] Allow index as element type of memref
Jul 30 2020, 5:37 AM
herhut closed D84934: [mlir] Allow index as element type of memref.
Jul 30 2020, 5:36 AM · Restricted Project
herhut accepted D84917: [mlir] NFC: Expose `getElementPtrType` and `getSizes` methods of AllocOpLowering..

Please fix linter error and wait for @ftynse to comment.

Jul 30 2020, 5:23 AM · Restricted Project
herhut added inline comments to D84933: [MLIR][Shape] Allow unsafe `shape.broadcast`.
Jul 30 2020, 5:21 AM · Restricted Project
herhut requested review of D84934: [mlir] Allow index as element type of memref.
Jul 30 2020, 5:03 AM · Restricted Project
herhut added inline comments to D84917: [mlir] NFC: Expose `getElementPtrType` and `getSizes` methods of AllocOpLowering..
Jul 30 2020, 4:18 AM · Restricted Project
herhut added inline comments to D84917: [mlir] NFC: Expose `getElementPtrType` and `getSizes` methods of AllocOpLowering..
Jul 30 2020, 2:03 AM · Restricted Project

Jul 29 2020

herhut accepted D84861: [mlir] fix error handling in rocm runtime wrapper.

Thanks for fixing this!

Jul 29 2020, 11:04 AM · Restricted Project
herhut accepted D84852: [MLIR][Shape] Limit `shape.rank` lowering to its extent tensor variant.
Jul 29 2020, 8:25 AM · Restricted Project
herhut added inline comments to D84832: [MLIR] Forward extent tensors through shape.broadcast..
Jul 29 2020, 6:12 AM · Restricted Project
herhut committed rG823ffef00915: [mlir][Standard] Allow unranked memrefs as operands to dim and rank (authored by herhut).
[mlir][Standard] Allow unranked memrefs as operands to dim and rank
Jul 29 2020, 5:43 AM
herhut closed D84790: [mlir][Standard] Allow unranked memrefs as operands to dim and rank.
Jul 29 2020, 5:43 AM · Restricted Project
herhut committed rG5d9f33aaa00c: [MLIR][Shape] Add conversion for missing ops to standard (authored by herhut).
[MLIR][Shape] Add conversion for missing ops to standard
Jul 29 2020, 4:05 AM
herhut closed D84745: [MLIR][Shape] Add conversion for missing ops to standard.
Jul 29 2020, 4:05 AM · Restricted Project
herhut updated the diff for D84790: [mlir][Standard] Allow unranked memrefs as operands to dim and rank.

Fix test

Jul 29 2020, 4:04 AM · Restricted Project
herhut accepted D84443: [MLIR][Shape] Limit shape to standard lowerings to their supported types.
Jul 29 2020, 4:04 AM · Restricted Project
herhut added inline comments to D84790: [mlir][Standard] Allow unranked memrefs as operands to dim and rank.
Jul 29 2020, 4:04 AM · Restricted Project
herhut updated the diff for D84745: [MLIR][Shape] Add conversion for missing ops to standard.

Rebase

Jul 29 2020, 4:04 AM · Restricted Project

Jul 28 2020

herhut added reviewers for D84790: [mlir][Standard] Allow unranked memrefs as operands to dim and rank: ftynse, mehdi_amini.
Jul 28 2020, 12:36 PM · Restricted Project
herhut requested review of D84790: [mlir][Standard] Allow unranked memrefs as operands to dim and rank.
Jul 28 2020, 12:35 PM · Restricted Project
herhut updated the diff for D84745: [MLIR][Shape] Add conversion for missing ops to standard.

Comments

Jul 28 2020, 10:09 AM · Restricted Project
herhut added inline comments to D84745: [MLIR][Shape] Add conversion for missing ops to standard.
Jul 28 2020, 10:00 AM · Restricted Project
herhut added inline comments to D84745: [MLIR][Shape] Add conversion for missing ops to standard.
Jul 28 2020, 5:49 AM · Restricted Project
herhut published D84745: [MLIR][Shape] Add conversion for missing ops to standard for review.
Jul 28 2020, 5:44 AM · Restricted Project
herhut committed rG6d10d317d8b0: [MLIR][Shape] Support transforming shape.num_elements on tensors (authored by herhut).
[MLIR][Shape] Support transforming shape.num_elements on tensors
Jul 28 2020, 5:13 AM
herhut closed D84744: [MLIR][Shape] Support transforming shape.num_elements on tensors.
Jul 28 2020, 5:13 AM · Restricted Project
herhut added a comment to D84744: [MLIR][Shape] Support transforming shape.num_elements on tensors.

Thanks!

Jul 28 2020, 5:11 AM · Restricted Project
herhut updated the diff for D84744: [MLIR][Shape] Support transforming shape.num_elements on tensors.

Comments on formatting

Jul 28 2020, 5:10 AM · Restricted Project
herhut published D84744: [MLIR][Shape] Support transforming shape.num_elements on tensors for review.
Jul 28 2020, 4:27 AM · Restricted Project
herhut accepted D84619: [mlir][GPUToSPIRV] Add a test pass to set workgroup size for kernel functions..
Jul 28 2020, 1:51 AM · Restricted Project
herhut accepted D84660: Clean up cuda-runtime-wrappers API..

Thanks. I only have a minor nit.

Jul 28 2020, 1:39 AM · Restricted Project
herhut added inline comments to D84632: [MLIR] Add shape.extend op..
Jul 28 2020, 1:34 AM · Restricted Project

Jul 27 2020

herhut accepted D84529: [mlir][NFC] Polish copy removal transform.

Maybe mark it as NFC. Looks good with @bondhugula's comment addressed.

Jul 27 2020, 2:12 AM · Restricted Project
herhut accepted D84441: [MLIR][Shape] Allow `shape.add` to operate on indices.
Jul 27 2020, 2:10 AM · Restricted Project
herhut accepted D84439: [MLIR][Shape] Refactor verification.
Jul 27 2020, 2:08 AM · Restricted Project
herhut accepted D84583: [MLIR] NFC: Rename mcuMemHostRegister* to mgpuMemHostRegister* to make it consistent with the other cuda-runner functions and ROCm..

Thanks.

Jul 27 2020, 2:05 AM · Restricted Project

Jul 22 2020

herhut accepted D84161: [MLIR][Shape] Simplify shape lowering.
Jul 22 2020, 12:35 AM · Restricted Project
herhut accepted D84157: [MLIR][Shape] Generalize `shape.const_shape` to extent tensors.
Jul 22 2020, 12:32 AM · Restricted Project

Jul 21 2020

herhut added a comment to D84217: [mlir] Add shape.with_shape op.

Adding the op SGTM.

Jul 21 2020, 1:43 AM · Restricted Project

Jul 20 2020

herhut added a comment to D83799: [MLIR] Support function signature conversions with tuples of results types.

What you say is completely doable and meaningful as a rewrite in HLO, but I think you are assuming that eliminating such tuples completely is always desirable or possible before applying buffer conversion. On a side note, the real source of such return value tuples in TF/MLIR context is -tf-promote-resources-to-args, which creates a single tuple value for all TF outputs and resource var output aliases. The handling of the tuples itself is about 6-7 lines of code here, but there is a mix of concerns (as you suggest) if one assumes the tuples could always be eliminated and it'd be desirable to do so. But that's a big assumption because such tuples may only ultimately go away while we do the tensor to buffer conversion (where return value to output arg is happening). I have a conversion pattern on the HLO side that deals with xla_hlo.tuple (now mhlo.tuple) pretty much doing what the test dialect tensor tuple op is doing here. A tuple tensor being returned could potentially be an operand for another intermediate op for example. How do we remove tuples on the tensor op form without breaking op semantics?

Jul 20 2020, 7:39 AM · Restricted Project
herhut accepted D84160: [MLIR][Shape] Allow for `shape_of` to return extent tensors.

We should discuss whether we in the long run want to allow known-size tensors for known-rank inputs.

Jul 20 2020, 6:02 AM · Restricted Project