Page MenuHomePhabricator

ebrevnov (Evgeniy)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 23 2018, 4:17 PM (139 w, 4 d)

Recent Activity

Yesterday

ebrevnov added a reviewer for D88287: [NARY-REASSOCIATE] Support reassociation of min/max: jingyue.
Fri, Sep 25, 1:57 AM · Restricted Project
ebrevnov added a reviewer for D88286: [NFC][NARY-REASSOCIATE] Restructure code to aviod isPotentiallyReassociatable: jingyue.
Fri, Sep 25, 1:57 AM · Restricted Project
ebrevnov requested review of D88287: [NARY-REASSOCIATE] Support reassociation of min/max.
Fri, Sep 25, 1:56 AM · Restricted Project
ebrevnov requested review of D88286: [NFC][NARY-REASSOCIATE] Restructure code to aviod isPotentiallyReassociatable.
Fri, Sep 25, 1:53 AM · Restricted Project
ebrevnov added a reviewer for D88285: [NARY-REASSOCIATE] Simplify traversal logic by post deleting dead instructions: jingyue.
Fri, Sep 25, 1:45 AM · Restricted Project
ebrevnov requested review of D88285: [NARY-REASSOCIATE] Simplify traversal logic by post deleting dead instructions.
Fri, Sep 25, 1:42 AM · Restricted Project

Thu, Sep 24

ebrevnov added a comment to D87679: [LV] Unroll factor is expected to be > 0.

@fhahn ping

Thu, Sep 24, 8:07 PM · Restricted Project

Mon, Sep 21

ebrevnov added a comment to D72148: [DSE] Support traversing MemoryPhis..

Hi @ebrevnov,

I just wanted to briefly check in to see if you made any progress on this or if you think it is worth adding a bug report to keep track of the improvement?

Mon, Sep 21, 10:10 PM · Restricted Project

Wed, Sep 16

ebrevnov updated the summary of D79485: [BPI] Improve static heuristics for "cold" paths..
Wed, Sep 16, 10:19 PM · Restricted Project

Tue, Sep 15

ebrevnov updated the diff for D87679: [LV] Unroll factor is expected to be > 0.

Minor change to test case

Tue, Sep 15, 6:02 AM · Restricted Project
ebrevnov updated the diff for D87679: [LV] Unroll factor is expected to be > 0.

Addressed comments

Tue, Sep 15, 6:00 AM · Restricted Project
ebrevnov added inline comments to D87679: [LV] Unroll factor is expected to be > 0.
Tue, Sep 15, 5:58 AM · Restricted Project
ebrevnov added reviewers for D87679: [LV] Unroll factor is expected to be > 0: fhahn, hsaito, Ayal, mkuper.
Tue, Sep 15, 3:19 AM · Restricted Project
ebrevnov requested review of D87679: [LV] Unroll factor is expected to be > 0.
Tue, Sep 15, 3:16 AM · Restricted Project

Thu, Sep 10

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

ping

Thu, Sep 10, 9:07 PM · Restricted Project
ebrevnov added a reviewer for D79485: [BPI] Improve static heuristics for "cold" paths.: yrouban.
Thu, Sep 10, 9:07 PM · Restricted Project

Fri, Aug 28

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

ping

Fri, Aug 28, 5:16 AM · Restricted Project

Aug 27 2020

ebrevnov added a comment to D72148: [DSE] Support traversing MemoryPhis..

I won't have time to look into this in the near future unfortunately, as I am mainly focused on getting things in good shape to enable DSE & MemorySSA by default. It might be good to file a bug report so this opportunity does not drop off our radar. If anyone is interested in giving implementing it a try, even better :)

Aug 27 2020, 8:44 AM · Restricted Project

Aug 26 2020

ebrevnov added a comment to D72148: [DSE] Support traversing MemoryPhis..

@fhahn is this patch supposed to support the following case?

Aug 26 2020, 9:25 AM · Restricted Project

Aug 23 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

Is the test failure related to this patch?

Aug 23 2020, 10:52 PM · Restricted Project

Aug 18 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

..anyway I can try to describe how thing work using some example. Is this what you are looking for?

yes. Thank you.

Aug 18 2020, 3:05 AM · Restricted Project
ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

please run clang-format.

Aug 18 2020, 3:05 AM · Restricted Project
ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Added description of the algorithm to the header + formatting.

Aug 18 2020, 3:03 AM · Restricted Project

Aug 17 2020

ebrevnov added a comment to D86005: [NewPM][LoopFullUnroll] Make LoopFullUnrollPass required.

I think making 3 transformation passes immune to optnone ruins the whole idea. You really should have mechanism to set very specific and well documented overrides to the default.

Aug 17 2020, 9:06 PM · Restricted Project
ebrevnov added a comment to D86017: [BPI] Improve static heuristics for integer comparisons with CST and non-CST.

I think this should be put on hold until D85781 reworked and relanded again.

Aug 17 2020, 8:55 PM · Restricted Project
ebrevnov added inline comments to D86017: [BPI] Improve static heuristics for integer comparisons with CST and non-CST.
Aug 17 2020, 4:58 AM · Restricted Project
ebrevnov added inline comments to D86017: [BPI] Improve static heuristics for integer comparisons with CST and non-CST.
Aug 17 2020, 2:13 AM · Restricted Project
ebrevnov added a comment to D85781: [BPI] Improve static heuristics for integer comparisons.

How your last commit differs from the approved one? Why you have so many additional changes in the tests?

Patch affects many codegen tests so I updated them mostly with updater scripts.

Aug 17 2020, 1:42 AM · Restricted Project
ebrevnov added inline comments to D86017: [BPI] Improve static heuristics for integer comparisons with CST and non-CST.
Aug 17 2020, 1:38 AM · Restricted Project

Aug 16 2020

ebrevnov added inline comments to D86017: [BPI] Improve static heuristics for integer comparisons with CST and non-CST.
Aug 16 2020, 11:18 PM · Restricted Project
ebrevnov added a comment to D85781: [BPI] Improve static heuristics for integer comparisons.

How your last commit differs from the approved one? Why you have so many additional changes in the tests?

Aug 16 2020, 10:47 PM · Restricted Project

Aug 13 2020

ebrevnov added inline comments to D79485: [BPI] Improve static heuristics for "cold" paths..
Aug 13 2020, 10:37 PM · Restricted Project
ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

Is this work based on any paper/implementation?

I don't propose anything completely new here. New algorithm does essentially the same as existing one but

  1. fixes several correctness issues
  2. extends the approach to handle loops and invokes in a universal way
Aug 13 2020, 10:36 PM · Restricted Project

Aug 12 2020

ebrevnov accepted D85781: [BPI] Improve static heuristics for integer comparisons.

LGTM

Aug 12 2020, 9:23 PM · Restricted Project
ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Added a comment to updateEstimatedBlockWeight

Aug 12 2020, 12:04 AM · Restricted Project

Aug 11 2020

ebrevnov added inline comments to D79485: [BPI] Improve static heuristics for "cold" paths..
Aug 11 2020, 11:46 PM · Restricted Project
ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

A lot of test changes can probably be extracted out as NFC (to make the string test more robust) -- this will reduce the size of the patch.

Unfortunately, in most cases, I don't see how this can be done with out loosing current coverage. There are few cases like 'successors: %bb.3(0x80000000), %bb.4(0x00000000)' where we could remove exact numbers and just check block names. I think we better keep exact probabilities in all other cases. That actually helps to catch unintended changes.

Do you have performance numbers related to the change?

I measured performance on bunch of java related benchmarks we have in house including SPECJVM2008, SPECJbb2015, DaCapo9.12 and others. I don't see any noticeable impact on performance.

Aug 11 2020, 11:30 PM · Restricted Project
ebrevnov added a comment to D85781: [BPI] Improve static heuristics for integer comparisons.

Any perf data?

Aug 11 2020, 10:02 PM · Restricted Project

Aug 6 2020

ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Rebase

Aug 6 2020, 2:25 AM · Restricted Project

Aug 4 2020

ebrevnov updated the diff for D84838: [BPI][NFC] Unify handling of normal and SCC based loops.

Updated according to comments + formatting.

Aug 4 2020, 3:06 AM · Restricted Project
ebrevnov added inline comments to D84838: [BPI][NFC] Unify handling of normal and SCC based loops.
Aug 4 2020, 1:53 AM · Restricted Project

Jul 31 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

It's a bit shorter now. Let's see if it's manageable now. Further reduction would be problematic.

Jul 31 2020, 4:36 AM · Restricted Project
ebrevnov added inline comments to D84977: [NewPM] Only verify loop for nonskipped user loop pass.
Jul 31 2020, 4:29 AM · Restricted Project
ebrevnov retitled D79485: [BPI] Improve static heuristics for "cold" paths. from [WIP][BPI] Improve static heuristics for "cold" paths. to [BPI] Improve static heuristics for "cold" paths..
Jul 31 2020, 4:27 AM · Restricted Project
ebrevnov added inline comments to D79485: [BPI] Improve static heuristics for "cold" paths..
Jul 31 2020, 4:27 AM · Restricted Project
ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Rebased on top of D84838

Jul 31 2020, 4:11 AM · Restricted Project

Jul 30 2020

ebrevnov added a comment to D84977: [NewPM] Only verify loop for nonskipped user loop pass.

It seems like the verification is to check either that on the first round, LoopCanonicalizationFPM worked, or on iterations after the first, the loop pass maintained whatever loop invariants.
Since the LoopPassManager itself doesn't check for L->isRecursivelyLCSSAForm(LAR.DT, LI), I don't think we should guard the check with !isSpecialPass(Pass.name(), {"PassManager"}).

Jul 30 2020, 10:26 PM · Restricted Project
ebrevnov added a comment to D82344: [NewPM] Allow passes to never be skipped.

This change causes problems to us. Even though "enable-npm-optnone" is false by default it affects us because we use custom pass instrumentation callback which causes passes to be skipped under some conditions.

Jul 30 2020, 4:59 AM · Restricted Project

Jul 29 2020

ebrevnov added a reviewer for D84838: [BPI][NFC] Unify handling of normal and SCC based loops: davidxl.
Jul 29 2020, 5:31 AM · Restricted Project
ebrevnov requested review of D84838: [BPI][NFC] Unify handling of normal and SCC based loops.
Jul 29 2020, 5:30 AM · Restricted Project

Jul 28 2020

ebrevnov added a comment to D84609: [MemDepAnalysis] Cut-off threshold reshuffling .

One more general comment. If we introduce budget for total number of scanned instructions do we still need to limit number of visited blocks?

Jul 28 2020, 9:59 PM · Restricted Project
ebrevnov added inline comments to D84609: [MemDepAnalysis] Cut-off threshold reshuffling .
Jul 28 2020, 9:58 PM · Restricted Project
ebrevnov retitled D79485: [BPI] Improve static heuristics for "cold" paths. from [BPI] Improve static heuristics for "cold" paths. to [WIP][BPI] Improve static heuristics for "cold" paths..
Jul 28 2020, 6:10 AM · Restricted Project
ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

Marked as WIP since I'm going to extract one more part out from this review.

Jul 28 2020, 6:10 AM · Restricted Project
ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Rebase

Jul 28 2020, 6:08 AM · Restricted Project
ebrevnov accepted D84747: [BPI] Fix memory leak reported by sanitizer bots.
Jul 28 2020, 5:53 AM · Restricted Project
ebrevnov added a reviewer for D84747: [BPI] Fix memory leak reported by sanitizer bots: ebrevnov.
Jul 28 2020, 5:53 AM · Restricted Project
ebrevnov requested review of D84747: [BPI] Fix memory leak reported by sanitizer bots.
Jul 28 2020, 5:52 AM · Restricted Project
ebrevnov added a comment to D84609: [MemDepAnalysis] Cut-off threshold reshuffling .

I would suggest to separate an introduction of additional limit for a total number of scanned instructions and reduction of the current limit for number of scanned blocks to a different change sets. Also besides compile time numbers we should evaluate overall impact on performance before making such changes.

Jul 28 2020, 1:16 AM · Restricted Project

Jul 27 2020

ebrevnov updated the diff for D84514: [BPI][NFC] Consolidate code to deal with SCCs under a dedicated data structure..

Updated as requested.

Jul 27 2020, 5:06 AM · Restricted Project
ebrevnov added inline comments to D84514: [BPI][NFC] Consolidate code to deal with SCCs under a dedicated data structure..
Jul 27 2020, 4:56 AM · Restricted Project

Jul 24 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

I have moved part of the change into a separate review D84514. Let's start with that...

Jul 24 2020, 5:01 AM · Restricted Project
ebrevnov added a reviewer for D84514: [BPI][NFC] Consolidate code to deal with SCCs under a dedicated data structure.: davidxl.
Jul 24 2020, 5:00 AM · Restricted Project
Herald added a project to D84514: [BPI][NFC] Consolidate code to deal with SCCs under a dedicated data structure.: Restricted Project.
Jul 24 2020, 4:57 AM · Restricted Project

Jul 21 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

This patch is a little large to review properly. Is there any major refactoring (NFC or mostly NFC) that can be separated out?

Jul 21 2020, 11:38 PM · Restricted Project
ebrevnov added a comment to D75980: [LV] Generate RT checks up-front and remove them if required. (WIP).

I'm glad to see this discussion alive again. Thanks Roman!

Jul 21 2020, 11:32 PM · Restricted Project

Jul 20 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

ping

Jul 20 2020, 1:38 AM · Restricted Project

Jul 9 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

I measured performance on bunch of java related benchmarks we have in house including SPECJVM2008, SPECJbb2015, DaCapo9.12 and others. I don't see any noticeable impact on performance. Please let me know if you need more details on these experiments or some additional perf data.

Jul 9 2020, 1:54 AM · Restricted Project

Jun 26 2020

ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Formatting

Jun 26 2020, 12:31 AM · Restricted Project
ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

Can you provide some performace data (SPEC/llvm suite) ?

Jun 26 2020, 12:31 AM · Restricted Project

Jun 25 2020

ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Minor update

Jun 25 2020, 6:20 AM · Restricted Project
ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

Sorry for keeping silence for that long. I had to work on higher priority tasks before I got a chance to return back to this. I think I fixed all your remarks. Please take a look.

Jun 25 2020, 6:20 AM · Restricted Project
ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Fixes according to comments + rebase

Jun 25 2020, 5:52 AM · Restricted Project

Jun 17 2020

ebrevnov added a comment to D80401: [SLP] fix verification check for valid IR.

This change caused verification to catch "invalid" IR produced by instcombine. Filed a bug for that https://bugs.llvm.org/show_bug.cgi?id=46362

Jun 17 2020, 6:26 AM · Restricted Project

May 27 2020

ebrevnov added a comment to D79485: [BPI] Improve static heuristics for "cold" paths..

Ping

May 27 2020, 12:30 AM · Restricted Project
ebrevnov added reviewers for D79485: [BPI] Improve static heuristics for "cold" paths.: dnovillo, gberry, john.brawn.
May 27 2020, 12:30 AM · Restricted Project

May 26 2020

ebrevnov added inline comments to D80611: [BrachProbablityInfo] Proportional distribution of reachable probabilities.
May 26 2020, 11:22 PM · Restricted Project

May 20 2020

ebrevnov accepted D79396: [BrachProbablityInfo] Set edge probabilities at once..

Thanks! LGTM.

May 20 2020, 9:48 AM · Restricted Project

May 19 2020

ebrevnov added inline comments to D79396: [BrachProbablityInfo] Set edge probabilities at once..
May 19 2020, 12:30 AM · Restricted Project

May 8 2020

ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Number of changes:

  1. Previous version had an issue and was not able to propagate estimated weight from loop exits (in case more than 1 exit) to its entries. To fix that we introduce LoopData structure and trakc weight for loops explicitly.
  2. Returned old behavior for 'invoke' heuristics to dominate 'cold' heuristics.
May 8 2020, 6:23 AM · Restricted Project

May 7 2020

ebrevnov added a comment to D79396: [BrachProbablityInfo] Set edge probabilities at once..

I think the new API of setting probabilities for all edges "atomically" is a good move. There is one suggestion though. In fact, there is no need to "repack" vector of probabilities into map. We can simply copy or even move (in most cases we have rvalue) entire vector into a map. This can be done as a separate change though.

May 7 2020, 11:57 PM · Restricted Project

May 6 2020

ebrevnov added a comment to D78987: [BPI][NFC] Reuse post dominantor tree from analysis manager when available.

Hi Alina,

May 6 2020, 9:36 PM · Restricted Project
ebrevnov updated the summary of D79485: [BPI] Improve static heuristics for "cold" paths..
May 6 2020, 6:24 AM · Restricted Project
ebrevnov updated the diff for D79485: [BPI] Improve static heuristics for "cold" paths..

Fix basic.ll

May 6 2020, 5:52 AM · Restricted Project
ebrevnov created D79485: [BPI] Improve static heuristics for "cold" paths..
May 6 2020, 5:52 AM · Restricted Project

Apr 30 2020

ebrevnov abandoned D65845: [SCEV][NFC] evaluateAtIteration may produce incorrect result if accuracy of evalutation point is not enough..
Apr 30 2020, 2:44 AM · Restricted Project
ebrevnov committed rG3acf62f3ad30: [BPI][NFC] IRCE shoud qequest BPI through analysis manager. (authored by ebrevnov).
[BPI][NFC] IRCE shoud qequest BPI through analysis manager.
Apr 30 2020, 2:07 AM
ebrevnov closed D79080: [BPI][NFC] IRCE shoud qequest BPI through analysis manager..
Apr 30 2020, 2:07 AM · Restricted Project

Apr 29 2020

ebrevnov committed rGbb0842a3f11e: [BPI] Incorrect probability reported in case of mulptiple edges. (authored by ebrevnov).
[BPI] Incorrect probability reported in case of mulptiple edges.
Apr 29 2020, 10:10 PM
ebrevnov closed D79071: [BPI] Incorrect probability reported in case of mulptiple edges..
Apr 29 2020, 10:09 PM · Restricted Project
ebrevnov committed rG3e68a667047d: [BPI][NFC] Reuse post dominantor tree from analysis manager when available (authored by ebrevnov).
[BPI][NFC] Reuse post dominantor tree from analysis manager when available
Apr 29 2020, 9:37 PM
ebrevnov closed D78987: [BPI][NFC] Reuse post dominantor tree from analysis manager when available.
Apr 29 2020, 9:37 PM · Restricted Project
ebrevnov updated the diff for D78987: [BPI][NFC] Reuse post dominantor tree from analysis manager when available.

Another attempt to fix failing lit test.

Apr 29 2020, 9:38 AM · Restricted Project
ebrevnov updated the diff for D78987: [BPI][NFC] Reuse post dominantor tree from analysis manager when available.

Fix Other/new-pm-thinlto-prelink-pgo-defaults.ll failing on AMD.

Apr 29 2020, 6:24 AM · Restricted Project
ebrevnov created D79080: [BPI][NFC] IRCE shoud qequest BPI through analysis manager..
Apr 29 2020, 4:47 AM · Restricted Project
ebrevnov added a reviewer for D79080: [BPI][NFC] IRCE shoud qequest BPI through analysis manager.: skatkov.
Apr 29 2020, 4:47 AM · Restricted Project
ebrevnov updated the diff for D78987: [BPI][NFC] Reuse post dominantor tree from analysis manager when available.

Request cached PDT through AM

Apr 29 2020, 4:47 AM · Restricted Project
ebrevnov added inline comments to D78987: [BPI][NFC] Reuse post dominantor tree from analysis manager when available.
Apr 29 2020, 3:11 AM · Restricted Project
ebrevnov updated the summary of D79071: [BPI] Incorrect probability reported in case of mulptiple edges..
Apr 29 2020, 1:34 AM · Restricted Project
ebrevnov created D79071: [BPI] Incorrect probability reported in case of mulptiple edges..
Apr 29 2020, 1:02 AM · Restricted Project