Page MenuHomePhabricator

jacquesguan (Jianjian Guan)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 7 2021, 12:43 AM (61 w, 2 d)

Recent Activity

Today

jacquesguan requested review of D131552: [RISCV] Add cost model for mask vector extend and truncate instruction..
Wed, Aug 10, 2:29 AM · Restricted Project, Restricted Project
jacquesguan committed rGb6b1c0d1c4ca: [RISCV] Add cost model for fp-mask cast op. (authored by jacquesguan).
[RISCV] Add cost model for fp-mask cast op.
Wed, Aug 10, 2:15 AM · Restricted Project, Restricted Project
jacquesguan closed D131149: [RISCV] Add cost model for fp-mask cast op..
Wed, Aug 10, 2:15 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D131149: [RISCV] Add cost model for fp-mask cast op..
Wed, Aug 10, 1:57 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D131149: [RISCV] Add cost model for fp-mask cast op..

rebase main.

Wed, Aug 10, 1:56 AM · Restricted Project, Restricted Project
jacquesguan requested review of D131551: [RISCV] Add binary mask pattern for vector integer binary instructions..
Wed, Aug 10, 1:38 AM · Restricted Project, Restricted Project

Mon, Aug 8

jacquesguan added a comment to D122875: [DAGCombiner] Scalarize extend/truncate for splat vector..

ping.

Mon, Aug 8, 1:46 AM · Restricted Project, Restricted Project

Thu, Aug 4

jacquesguan requested review of D131233: [mlir][Math] Add constant folder for CosOp..
Thu, Aug 4, 8:04 PM · Restricted Project, Restricted Project
jacquesguan committed rG40d74fcb552c: [mlir][Math] Add constant folder for Atan2Op. (authored by jacquesguan).
[mlir][Math] Add constant folder for Atan2Op.
Thu, Aug 4, 7:31 PM · Restricted Project, Restricted Project
jacquesguan closed D131050: [mlir][Math] Add constant folder for Atan2Op..
Thu, Aug 4, 7:31 PM · Restricted Project, Restricted Project
jacquesguan requested review of D131149: [RISCV] Add cost model for fp-mask cast op..
Thu, Aug 4, 2:28 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D131050: [mlir][Math] Add constant folder for Atan2Op..
Thu, Aug 4, 1:06 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D131050: [mlir][Math] Add constant folder for Atan2Op..

Fix undefined case.

Thu, Aug 4, 1:04 AM · Restricted Project, Restricted Project
jacquesguan committed rGb61cfc91eac8: [RISCV] Add cost modelling for vector widenning reduction. (authored by jacquesguan).
[RISCV] Add cost modelling for vector widenning reduction.
Thu, Aug 4, 12:32 AM · Restricted Project, Restricted Project
jacquesguan closed D129994: [RISCV] Add cost modelling for vector widenning integer reduction..
Thu, Aug 4, 12:32 AM · Restricted Project, Restricted Project
jacquesguan committed rG45bae1be9047: [RISCV][test] Add inloop reduction vectorize test. NFC (authored by jacquesguan).
[RISCV][test] Add inloop reduction vectorize test. NFC
Thu, Aug 4, 12:07 AM · Restricted Project, Restricted Project

Wed, Aug 3

jacquesguan added a comment to D129994: [RISCV] Add cost modelling for vector widenning integer reduction..

Thanks for the rework of the API, much improved!

I'd still *prefer* a vectorizer test here, but won't strictly require one.

Wed, Aug 3, 4:26 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D129994: [RISCV] Add cost modelling for vector widenning integer reduction..

Address comment and add test.

Wed, Aug 3, 4:21 AM · Restricted Project, Restricted Project

Tue, Aug 2

jacquesguan requested review of D131050: [mlir][Math] Add constant folder for Atan2Op..
Tue, Aug 2, 11:59 PM · Restricted Project, Restricted Project
jacquesguan committed rG752c9d0dab8b: [mlir][Math] Add constant folder for AtanOp. (authored by jacquesguan).
[mlir][Math] Add constant folder for AtanOp.
Tue, Aug 2, 11:17 PM · Restricted Project, Restricted Project
jacquesguan closed D130983: [mlir][Math] Add constant folder for AtanOp..
Tue, Aug 2, 11:17 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D130983: [mlir][Math] Add constant folder for AtanOp..

Fix test.

Tue, Aug 2, 8:01 PM · Restricted Project, Restricted Project
jacquesguan requested review of D130983: [mlir][Math] Add constant folder for AtanOp..
Tue, Aug 2, 4:50 AM · Restricted Project, Restricted Project
jacquesguan committed rG008ea1c20148: [mlir][Math] Add constant folder for TanhOp. (authored by jacquesguan).
[mlir][Math] Add constant folder for TanhOp.
Tue, Aug 2, 4:38 AM · Restricted Project, Restricted Project
jacquesguan closed D130960: [mlir][Math] Add constant folder for TanhOp..
Tue, Aug 2, 4:38 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D129994: [RISCV] Add cost modelling for vector widenning integer reduction..

Refactor the code.

Tue, Aug 2, 3:34 AM · Restricted Project, Restricted Project
jacquesguan committed rGe38af7ba958a: [LV] Refactor getExtendedAddReductionCost to support other extended reduction… (authored by jacquesguan).
[LV] Refactor getExtendedAddReductionCost to support other extended reduction…
Tue, Aug 2, 1:03 AM · Restricted Project, Restricted Project
jacquesguan closed D130868: [LV] Refactor getExtendedAddReductionCost to support other extended reduction more than Add..
Tue, Aug 2, 1:03 AM · Restricted Project, Restricted Project

Mon, Aug 1

jacquesguan added inline comments to D130868: [LV] Refactor getExtendedAddReductionCost to support other extended reduction more than Add..
Mon, Aug 1, 11:33 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D130868: [LV] Refactor getExtendedAddReductionCost to support other extended reduction more than Add..

Address comment.

Mon, Aug 1, 11:32 PM · Restricted Project, Restricted Project
jacquesguan requested review of D130960: [mlir][Math] Add constant folder for TanhOp..
Mon, Aug 1, 8:37 PM · Restricted Project, Restricted Project
jacquesguan committed rGf1033a3f47da: [mlir][Math] Add constant folder for TanOp. (authored by jacquesguan).
[mlir][Math] Add constant folder for TanOp.
Mon, Aug 1, 8:21 PM · Restricted Project, Restricted Project
jacquesguan closed D130873: [mlir][Math] Add constant folder for TanOp..
Mon, Aug 1, 8:21 PM · Restricted Project, Restricted Project
jacquesguan requested review of D130873: [mlir][Math] Add constant folder for TanOp..
Mon, Aug 1, 12:54 AM · Restricted Project, Restricted Project

Sun, Jul 31

jacquesguan added a comment to D122875: [DAGCombiner] Scalarize extend/truncate for splat vector..

ping.

Sun, Jul 31, 11:56 PM · Restricted Project, Restricted Project
jacquesguan committed rG16cb6ce554b7: [mlir][Math] Add constant folder for ExpM1Op. (authored by jacquesguan).
[mlir][Math] Add constant folder for ExpM1Op.
Sun, Jul 31, 11:41 PM · Restricted Project, Restricted Project
jacquesguan closed D130567: [mlir][Math] Add constant folder for ExpM1Op..
Sun, Jul 31, 11:41 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D129994: [RISCV] Add cost modelling for vector widenning integer reduction..

Tests?

Also, how are reduction opcodes other than mul and add handled?

Sorry, I don't get your point, getExtendedAddReductionCost is only used for gettring the cost of vecreduce.add(ext) or vecreduce.add(mul(ext, ext)) if IsMLA is true. So here we only need to handle ADD.

I had missed the Add in the function name and was assuming this was generic to widening reductions. I was thinking this API would be used for the floating point widening reduction variants as well, which appears not to be the case.

Honestly, this seems like a pretty poor API design. Not having thought about this extensively, it seems like splitting this into two APIs one which handles the generic mixed width reduction case (e.g. vecreduce.opcode(ext(Ty A))), and one which adds the dot-product acceleration case (e.g. vecreduce.add(mul(ext(Ty A), ext(Ty B))) would make more sense. Having a getExtendedReductionCost API would allow you to handle the FADD case, and potentially any future widen reduction instructions. (I don't have any particular extension in mind here, just a general concern.)

Huh, actually it's worse than that. The loop vectorizer appears to also be using this function for both reduce(ext(mul(ext(A), ext(B))) and reduce(mul(ext(A), ext(B)) - note difference in outer extend - and is inconsistent about values for MLA are passed in. The current usage appears to contract the documented interface for the existing routine.

You should fix that before we continue with this patch.

And for the test, I do not know well about CostModel test, vecreduce.add(ext) needs at least 2 instruction to make, but the test case would show the cost of each instruction, so any advice for making the case?

If nothing else, you could write a vectorizer test which checked the cost-model output. Not ideal, but possible.

Sun, Jul 31, 11:27 PM · Restricted Project, Restricted Project
jacquesguan requested review of D130868: [LV] Refactor getExtendedAddReductionCost to support other extended reduction more than Add..
Sun, Jul 31, 11:24 PM · Restricted Project, Restricted Project

Thu, Jul 28

jacquesguan added a comment to D130567: [mlir][Math] Add constant folder for ExpM1Op..

I'd just drop it. I am generally skeptical about the utility of tests with hardcoded numbers that cannot be easily verifiable with pen an paper. The only thing that we need to verify here is that applies to a the vector elementwise, which should be visible from a denes<[1.0, 0.0, 1.0]> just fine.

Thu, Jul 28, 7:37 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D130567: [mlir][Math] Add constant folder for ExpM1Op..

Refactor test.

Thu, Jul 28, 7:36 PM · Restricted Project, Restricted Project

Wed, Jul 27

jacquesguan added a comment to D129994: [RISCV] Add cost modelling for vector widenning integer reduction..

Tests?

Also, how are reduction opcodes other than mul and add handled?

Wed, Jul 27, 8:07 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D130567: [mlir][Math] Add constant folder for ExpM1Op..

Windows build error seems relevant. I suspect some underlying implementation differs across platforms.

Wed, Jul 27, 7:41 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D122875: [DAGCombiner] Scalarize extend/truncate for splat vector..

Sorry, I'm a bit rusty. What happens with the equivalent fixed-length vector splats (BUILD_VECTOR)? If they're scalarized can we do the same for SPLAT_VECTOR in the same place? If they're not scalarized, what's the logic for only doing this transform for SPLAT_VECTOR?

Wed, Jul 27, 3:55 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D122875: [DAGCombiner] Scalarize extend/truncate for splat vector..

rebase main and address comment.

Wed, Jul 27, 2:27 AM · Restricted Project, Restricted Project

Tue, Jul 26

jacquesguan requested review of D130567: [mlir][Math] Add constant folder for ExpM1Op..
Tue, Jul 26, 6:58 AM · Restricted Project, Restricted Project

Mon, Jul 25

jacquesguan committed rGcb370cf41374: [DAGCombiner] Teach scalarizeExtractedBinop to support scalable splat. (authored by jacquesguan).
[DAGCombiner] Teach scalarizeExtractedBinop to support scalable splat.
Mon, Jul 25, 6:40 PM · Restricted Project, Restricted Project
jacquesguan closed D129725: [DAGCombiner] Teach scalarizeExtractedBinop to support scalable splat..
Mon, Jul 25, 6:39 PM · Restricted Project, Restricted Project
jacquesguan committed rG78015047b22d: [mlir][Math] Add constant folder for Exp2Op. (authored by jacquesguan).
[mlir][Math] Add constant folder for Exp2Op.
Mon, Jul 25, 5:57 PM · Restricted Project, Restricted Project
jacquesguan closed D130472: [mlir][Math] Add constant folder for Exp2Op..
Mon, Jul 25, 5:57 PM · Restricted Project, Restricted Project
jacquesguan requested review of D130472: [mlir][Math] Add constant folder for Exp2Op..
Mon, Jul 25, 3:13 AM · Restricted Project, Restricted Project
jacquesguan committed rGd8800ead629d: [RISCV] Scalarize binop followed by extractelement. (authored by jacquesguan).
[RISCV] Scalarize binop followed by extractelement.
Mon, Jul 25, 2:24 AM · Restricted Project, Restricted Project
jacquesguan closed D129545: [RISCV] Scalarize binop followed by extractelement..
Mon, Jul 25, 2:23 AM · Restricted Project, Restricted Project
jacquesguan added a comment to D129725: [DAGCombiner] Teach scalarizeExtractedBinop to support scalable splat..

ping.

Mon, Jul 25, 2:20 AM · Restricted Project, Restricted Project
jacquesguan added a comment to D129994: [RISCV] Add cost modelling for vector widenning integer reduction..

ping.

Mon, Jul 25, 2:18 AM · Restricted Project, Restricted Project
jacquesguan committed rG9e241c70f779: [mlir][Math] Add constant folder for ExpOp. (authored by jacquesguan).
[mlir][Math] Add constant folder for ExpOp.
Mon, Jul 25, 1:27 AM · Restricted Project, Restricted Project
jacquesguan closed D130318: [mlir][Math] Add constant folder for ExpOp..
Mon, Jul 25, 1:27 AM · Restricted Project, Restricted Project
jacquesguan added inline comments to D130318: [mlir][Math] Add constant folder for ExpOp..
Mon, Jul 25, 12:56 AM · Restricted Project, Restricted Project
jacquesguan added a comment to D130318: [mlir][Math] Add constant folder for ExpOp..

Can you fix the failing test?

Mon, Jul 25, 12:55 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D130318: [mlir][Math] Add constant folder for ExpOp..

Address comment.

Mon, Jul 25, 12:55 AM · Restricted Project, Restricted Project

Thu, Jul 21

jacquesguan requested review of D130318: [mlir][Math] Add constant folder for ExpOp..
Thu, Jul 21, 5:47 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D129545: [RISCV] Scalarize binop followed by extractelement..

ping.

Thu, Jul 21, 5:33 PM · Restricted Project, Restricted Project
jacquesguan closed D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..

recommit in https://reviews.llvm.org/rGe60eb7053dc91a23cc3b96652aeda7513dd4b082

Thu, Jul 21, 4:18 AM · Restricted Project, Restricted Project
jacquesguan committed rGe60eb7053dc9: recommit "[DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat." (authored by jacquesguan).
recommit "[DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat."
Thu, Jul 21, 2:39 AM · Restricted Project, Restricted Project

Wed, Jul 20

jacquesguan committed rG9c22853ec40a: [mlir][Math] Add constant folder for LogOp. (authored by jacquesguan).
[mlir][Math] Add constant folder for LogOp.
Wed, Jul 20, 8:04 PM · Restricted Project, Restricted Project
jacquesguan closed D130148: [mlir][Math] Add constant folder for LogOp..
Wed, Jul 20, 8:03 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..

rebase main

Wed, Jul 20, 1:03 AM · Restricted Project, Restricted Project
jacquesguan committed rGc3d856bf58bf: [mlir][Math] Add constant folder for Log1pOp. (authored by jacquesguan).
[mlir][Math] Add constant folder for Log1pOp.
Wed, Jul 20, 12:19 AM · Restricted Project, Restricted Project
jacquesguan closed D129979: [mlir][Math] Add constant folder for Log1pOp..
Wed, Jul 20, 12:18 AM · Restricted Project, Restricted Project

Tue, Jul 19

jacquesguan requested review of D130148: [mlir][Math] Add constant folder for LogOp..
Tue, Jul 19, 11:50 PM · Restricted Project, Restricted Project
jacquesguan added a comment to D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..
Tue, Jul 19, 1:31 AM · Restricted Project, Restricted Project
jacquesguan added reviewers for D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat.: abrachet, mkazantsev.
Tue, Jul 19, 1:30 AM · Restricted Project, Restricted Project
jacquesguan updated the diff for D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..

Fix tests.

Tue, Jul 19, 1:25 AM · Restricted Project, Restricted Project
jacquesguan reopened D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..
Tue, Jul 19, 1:24 AM · Restricted Project, Restricted Project

Mon, Jul 18

jacquesguan committed rG58dfaaaace4e: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat. (authored by jacquesguan).
[DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat.
Mon, Jul 18, 8:24 PM · Restricted Project, Restricted Project
jacquesguan closed D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..
Mon, Jul 18, 8:23 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..

Address comment.

Mon, Jul 18, 8:22 PM · Restricted Project, Restricted Project
jacquesguan committed rG3fcaea176cbf: [RISCV][test] Precommit test for D122791. (authored by jacquesguan).
[RISCV][test] Precommit test for D122791.
Mon, Jul 18, 8:09 PM · Restricted Project, Restricted Project
jacquesguan closed D123362: [RISCV][test] Precommit test for D122791..
Mon, Jul 18, 8:09 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D129979: [mlir][Math] Add constant folder for Log1pOp..
Mon, Jul 18, 7:52 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D129979: [mlir][Math] Add constant folder for Log1pOp..

Address comment.

Mon, Jul 18, 7:51 PM · Restricted Project, Restricted Project
jacquesguan requested review of D129994: [RISCV] Add cost modelling for vector widenning integer reduction..
Mon, Jul 18, 2:53 AM · Restricted Project, Restricted Project

Sun, Jul 17

jacquesguan added a comment to D122791: [DAGCombiner] Teach scalarizeBinOpOfSplats handle scalable splat..

ping.

Sun, Jul 17, 11:50 PM · Restricted Project, Restricted Project
jacquesguan committed rG2b11174079c8: [RISCV][NFC] Use more Arrayref in TargetLowering functions. (authored by jacquesguan).
[RISCV][NFC] Use more Arrayref in TargetLowering functions.
Sun, Jul 17, 8:51 PM · Restricted Project, Restricted Project
jacquesguan closed D125656: [RISCV][NFC] Use more Arrayref in TargetLowering functions..
Sun, Jul 17, 8:51 PM · Restricted Project, Restricted Project
jacquesguan committed rGbd228a17727e: [RISCV] Extend use of SHXADD instructions in RVV spill/reload code. (authored by jacquesguan).
[RISCV] Extend use of SHXADD instructions in RVV spill/reload code.
Sun, Jul 17, 8:03 PM · Restricted Project, Restricted Project
jacquesguan closed D129179: [RISCV] Extend use of SHXADD instructions in RVV spill/reload code..
Sun, Jul 17, 8:03 PM · Restricted Project, Restricted Project
jacquesguan committed rG557a471ab353: [RISCV][test] Precommit test for D129179. (authored by jacquesguan).
[RISCV][test] Precommit test for D129179.
Sun, Jul 17, 7:51 PM · Restricted Project, Restricted Project
jacquesguan closed D129463: [RISCV][test] Precommit test for D129179..
Sun, Jul 17, 7:51 PM · Restricted Project, Restricted Project
jacquesguan requested review of D129979: [mlir][Math] Add constant folder for Log1pOp..
Sun, Jul 17, 7:39 PM · Restricted Project, Restricted Project
jacquesguan committed rGa5cae20bdb18: [mlir][Math] Add constant folder for Log10Op. (authored by jacquesguan).
[mlir][Math] Add constant folder for Log10Op.
Sun, Jul 17, 7:26 PM · Restricted Project, Restricted Project
jacquesguan closed D129740: [mlir][Math] Add constant folder for Log10Op..
Sun, Jul 17, 7:26 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D129740: [mlir][Math] Add constant folder for Log10Op..
Sun, Jul 17, 6:57 PM · Restricted Project, Restricted Project

Thu, Jul 14

jacquesguan requested review of D129740: [mlir][Math] Add constant folder for Log10Op..
Thu, Jul 14, 1:18 AM · Restricted Project, Restricted Project
jacquesguan added a comment to D125656: [RISCV][NFC] Use more Arrayref in TargetLowering functions..

ping.

Thu, Jul 14, 12:06 AM · Restricted Project, Restricted Project

Wed, Jul 13

jacquesguan requested review of D129725: [DAGCombiner] Teach scalarizeExtractedBinop to support scalable splat..
Wed, Jul 13, 8:32 PM · Restricted Project, Restricted Project

Tue, Jul 12

jacquesguan committed rG9049c46b9d0e: [RISCV][test] Add test of binop followed by extractelement. (authored by jacquesguan).
[RISCV][test] Add test of binop followed by extractelement.
Tue, Jul 12, 11:54 PM · Restricted Project, Restricted Project
jacquesguan closed D129544: [RISCV][test] Add test of binop followed by extractelement..
Tue, Jul 12, 11:54 PM · Restricted Project, Restricted Project
jacquesguan added inline comments to D129544: [RISCV][test] Add test of binop followed by extractelement..
Tue, Jul 12, 11:25 PM · Restricted Project, Restricted Project
jacquesguan updated the diff for D129544: [RISCV][test] Add test of binop followed by extractelement..

Address comment.

Tue, Jul 12, 11:24 PM · Restricted Project, Restricted Project