Page MenuHomePhabricator

vporpo (Vasileios Porpodas)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 12 2016, 8:44 PM (165 w, 5 d)

Recent Activity

Thu, Jun 13

vporpo added a comment to D60897: [SLP] Look-ahead operand reordering heuristic..

@ABataev @RKSimon any comments?

Thu, Jun 13, 2:18 PM · Restricted Project

Wed, Jun 12

vporpo added inline comments to D57779: [SLP] Add support for throttling..
Wed, Jun 12, 7:58 PM
vporpo added a comment to D60897: [SLP] Look-ahead operand reordering heuristic..

Hmm I am now getting the same failure as you @dtemirbulatov . I am not sure what was wrong before, but it seems that the change in PR39774.ll is no longer needed.

Wed, Jun 12, 7:50 PM · Restricted Project
vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

Removed changes in PR39774.ll.

Wed, Jun 12, 7:45 PM · Restricted Project

Tue, Jun 11

vporpo updated the diff for D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..

Rebased.

Tue, Jun 11, 2:28 PM · Restricted Project
vporpo added inline comments to D57779: [SLP] Add support for throttling..
Tue, Jun 11, 1:40 PM
vporpo added inline comments to D57779: [SLP] Add support for throttling..
Tue, Jun 11, 11:30 AM

Wed, Jun 5

vporpo added a comment to D62938: [SLP] Forbid to vectorize bundles with same opcode but different IR flags.

I am not sure about the value safety assumptions here. Is there any unsafe-math flag that would allow us to override the integer overflow flags?

Wed, Jun 5, 9:10 PM
vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

Rebased.

Wed, Jun 5, 1:43 PM · Restricted Project

Tue, Jun 4

vporpo added a comment to D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..

Thank you for the reviews. Please commit it if @ABataev is also happy with it.

Tue, Jun 4, 11:03 AM · Restricted Project

Fri, May 31

vporpo updated subscribers of D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..
Fri, May 31, 4:33 PM · Restricted Project
vporpo updated subscribers of D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..
Fri, May 31, 4:02 PM · Restricted Project
vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

I investigated the two AArch64 failing tests. These tests feature the exact problem that we are trying to solve with this look-ahead heuristic. A commutative instruction had operands of the same opcode that the current heuristic has no way of reordering in an informed way. The current reordering was just lucky to pick the proper one, while the look-ahead heuristic was reordering the operands according to the score. However, the problem was that the score calculation was not considering external uses and was therefore favoring a sub-optimal operand ordering.

Fri, May 31, 2:55 PM · Restricted Project

Thu, May 30

vporpo updated the diff for D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..

Addressed the review comments.

Thu, May 30, 1:35 PM · Restricted Project
vporpo added inline comments to D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..
Thu, May 30, 1:32 PM · Restricted Project
vporpo added inline comments to D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..
Thu, May 30, 12:16 PM · Restricted Project

Wed, May 29

vporpo updated the diff for D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..

Rebased.

Wed, May 29, 11:37 AM · Restricted Project

Tue, May 28

vporpo added inline comments to D62272: [LoopUtils][SLPVectorizer] clean up management of fast-math-flags.
Tue, May 28, 3:49 PM · Restricted Project
vporpo updated the diff for D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..

Addressed @dtemirbulatov 's comment.

Tue, May 28, 3:12 PM · Restricted Project
vporpo added inline comments to D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..
Tue, May 28, 3:02 PM · Restricted Project
vporpo added inline comments to D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..
Tue, May 28, 1:23 PM · Restricted Project
vporpo added a comment to D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..

Thanks for committing the test @RKSimon . I will follow up on this soon.

Tue, May 28, 12:55 PM · Restricted Project
vporpo added inline comments to D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..
Tue, May 28, 12:43 PM · Restricted Project

Fri, May 24

vporpo updated the diff for D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..

Minor comment update.

Fri, May 24, 5:26 PM · Restricted Project
vporpo created D62432: [SLPVectorizer] Make the scheduler aware of the TreeEntry operands..
Fri, May 24, 3:45 PM · Restricted Project
vporpo created D62427: [SLP] Fix regression in broadcasts caused by operand reordering patch D59973..
Fri, May 24, 2:11 PM · Restricted Project

Thu, May 23

vporpo added a comment to D60897: [SLP] Look-ahead operand reordering heuristic..

Yes, I will take a look. Maybe it is worth using TTI for the scores after all.

Thu, May 23, 12:15 PM · Restricted Project

Tue, May 21

vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

Rebased.

Tue, May 21, 12:07 PM · Restricted Project

Mon, May 20

vporpo added a comment to D57779: [SLP] Add support for throttling..

I think the first throttling patch should implement a very simple and fast algorithm for finding the cut:

  1. Add new fields to TreeEntry for Cost, ExtractCost and PredecessorsCost.
  2. During getTreeCost() set the TE.Cost and TE.ExtractCost (as you did in an earlier version of the patch if I am not mistaken)
  3. Do a single top-down traversal of the tree in reverse postorder and set the TE.PredecessorsCost equal to the cost of all the predecessor's costs until TE. While doing so, you can compare the cost of cutting just below TE by comparing the gather cost of TE versus the Cost + PredecessorsCost. This is very fast as you only need to visit each TreeEntry node once, so the complexity is linear to the size of the tree.
Mon, May 20, 2:38 PM

Sat, May 18

vporpo added a comment to D61795: [SLP] Refactoring of EdgeInfo and UserTreeIdx in buildTree_rec()..

Thanks for the review. Please commit the change.

Sat, May 18, 5:31 PM · Restricted Project

May 17 2019

vporpo updated the diff for D61795: [SLP] Refactoring of EdgeInfo and UserTreeIdx in buildTree_rec()..

Minor change: Fixed double printing of TreeEntry index in the dumpVectorizableTree() debug function.

May 17 2019, 4:28 PM · Restricted Project

May 10 2019

vporpo created D61795: [SLP] Refactoring of EdgeInfo and UserTreeIdx in buildTree_rec()..
May 10 2019, 11:17 AM · Restricted Project
vporpo added a comment to D61706: [SLP] Refactor VectorizableTree to use unique_ptr..

Thanks for the review. Please commit the change, I don't have commit access.

May 10 2019, 8:33 AM · Restricted Project

May 9 2019

vporpo updated the diff for D61706: [SLP] Refactor VectorizableTree to use unique_ptr..

Fixed the formatting issue.

May 9 2019, 10:42 PM · Restricted Project

May 8 2019

vporpo created D61706: [SLP] Refactor VectorizableTree to use unique_ptr..
May 8 2019, 4:26 PM · Restricted Project

May 7 2019

vporpo added a comment to D57779: [SLP] Add support for throttling..

Please try not to introduce a new Node structure or a new graph. You can use TreeEntry instead and you can add any necessary fields to it.

May 7 2019, 7:51 PM

May 3 2019

vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

Updated getBestOperand() to use getLookAheadScore() for Load and Constant, not just Opcode.

May 3 2019, 6:42 PM · Restricted Project

May 1 2019

vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

Addressed comments and updated lit test.

May 1 2019, 6:40 PM · Restricted Project
vporpo added inline comments to D60897: [SLP] Look-ahead operand reordering heuristic..
May 1 2019, 6:40 PM · Restricted Project

Apr 30 2019

vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..

Rebased.

Apr 30 2019, 10:23 AM · Restricted Project

Apr 29 2019

vporpo added a comment to D61283: [SLP] Lit test that cannot get vectorized due to lack of look-ahead operand reordering heuristic. .

@ABataev requested this to be checked in before the look-ahead patch. Please commit this if it looks good, I don't have commit access.

Apr 29 2019, 3:52 PM · Restricted Project
vporpo created D61283: [SLP] Lit test that cannot get vectorized due to lack of look-ahead operand reordering heuristic. .
Apr 29 2019, 3:42 PM · Restricted Project
vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..
Apr 29 2019, 3:15 PM · Restricted Project
vporpo updated the diff for D60897: [SLP] Look-ahead operand reordering heuristic..
Apr 29 2019, 2:32 PM · Restricted Project
vporpo added inline comments to D60897: [SLP] Look-ahead operand reordering heuristic..
Apr 29 2019, 2:32 PM · Restricted Project

Apr 24 2019

vporpo added a comment to D61024: [SLP] Fix crash after r358519.

Thank you for the reviews, and @uabelho for reporting the issue.
Please commit the patch as I don't have commit access.

Apr 24 2019, 12:40 PM · Restricted Project
vporpo updated the diff for D61024: [SLP] Fix crash after r358519.

Removed triple.

Apr 24 2019, 12:20 PM · Restricted Project
vporpo updated the diff for D61024: [SLP] Fix crash after r358519.

Added FileCheck

Apr 24 2019, 12:10 PM · Restricted Project

Apr 23 2019

vporpo added inline comments to D61024: [SLP] Fix crash after r358519.
Apr 23 2019, 1:58 PM · Restricted Project
vporpo updated the diff for D61024: [SLP] Fix crash after r358519.

Accept undef in OpLastLane if Op contains an Instruction.

Apr 23 2019, 12:23 PM · Restricted Project
vporpo added inline comments to D61024: [SLP] Fix crash after r358519.
Apr 23 2019, 10:34 AM · Restricted Project
vporpo updated the diff for D61024: [SLP] Fix crash after r358519.

Cleaned up the lit test variable names.

Apr 23 2019, 10:18 AM · Restricted Project
vporpo created D61024: [SLP] Fix crash after r358519.
Apr 23 2019, 9:00 AM · Restricted Project

Apr 18 2019

vporpo created D60897: [SLP] Look-ahead operand reordering heuristic..
Apr 18 2019, 4:39 PM · Restricted Project

Apr 16 2019

vporpo added a comment to D59973: [SLP] Refactoring of the operand reordering code..

Great, thanks! Please commit the patch , I don't have commit access.

Apr 16 2019, 3:25 AM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Thank you for the reviews. @RKSimon any more comments ?

Apr 16 2019, 1:31 AM · Restricted Project

Apr 15 2019

vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 15 2019, 10:31 AM · Restricted Project

Apr 12 2019

vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 2:13 PM · Restricted Project
vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 2:13 PM · Restricted Project
vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 12:53 PM · Restricted Project
vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 12:16 PM · Restricted Project
vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 11:32 AM · Restricted Project
vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 10:10 AM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..
Apr 12 2019, 10:10 AM · Restricted Project

Apr 11 2019

vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 11 2019, 6:09 PM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Addressed the latest comments.

Apr 11 2019, 6:09 PM · Restricted Project
vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 11 2019, 12:37 PM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Addressed @ABataev 's comments.

Apr 11 2019, 12:37 PM · Restricted Project

Apr 6 2019

vporpo added inline comments to D59973: [SLP] Refactoring of the operand reordering code..
Apr 6 2019, 12:27 AM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Addressed the comments and also moved the reordering-related functions inside the VLOperands class.

Apr 6 2019, 12:27 AM · Restricted Project

Apr 3 2019

vporpo added a comment to D59973: [SLP] Refactoring of the operand reordering code..

I am not sure how to proceed with the operandorder.ll test. @ABataev do you know we would give higher priority to broadcasts?

Apr 3 2019, 4:00 PM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Updated getBestOperand() to better handle undefs. This fixes the regression in crash_smallpt.ll.

Apr 3 2019, 3:56 PM · Restricted Project

Apr 2 2019

vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Rebased + some minor changes.

Apr 2 2019, 7:04 PM · Restricted Project

Apr 1 2019

vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Addressed the comments.

Apr 1 2019, 3:26 PM · Restricted Project

Mar 31 2019

vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..

Fixed doxygen tags.

Mar 31 2019, 4:16 PM · Restricted Project

Mar 29 2019

vporpo added a comment to D59973: [SLP] Refactoring of the operand reordering code..

I also rebased to support the commutative predicates of D59992.

Mar 29 2019, 8:04 PM · Restricted Project
vporpo updated the diff for D59973: [SLP] Refactoring of the operand reordering code..
Mar 29 2019, 8:04 PM · Restricted Project

Mar 28 2019

vporpo created D59973: [SLP] Refactoring of the operand reordering code..
Mar 28 2019, 6:22 PM · Restricted Project

Mar 18 2019

vporpo added inline comments to D57779: [SLP] Add support for throttling..
Mar 18 2019, 8:41 PM

Mar 12 2019

vporpo updated the diff for D59059: [SLP] Remove redundancy of performing operand reordering twice: once in buildTree() and later in vectorizeTree()..

Thanks @RKSimon . Moving the operator<<() within the EdgeInfo struct fixes the build issue with clang 7.0.1.

Mar 12 2019, 6:54 PM · Restricted Project

Mar 11 2019

vporpo added inline comments to D57779: [SLP] Add support for throttling..
Mar 11 2019, 4:22 PM
vporpo added a comment to D59059: [SLP] Remove redundancy of performing operand reordering twice: once in buildTree() and later in vectorizeTree()..

Please commit this, I don't have commit access.

Mar 11 2019, 12:15 PM · Restricted Project
vporpo updated the diff for D59059: [SLP] Remove redundancy of performing operand reordering twice: once in buildTree() and later in vectorizeTree()..
Mar 11 2019, 11:47 AM · Restricted Project

Mar 6 2019

vporpo created D59059: [SLP] Remove redundancy of performing operand reordering twice: once in buildTree() and later in vectorizeTree()..
Mar 6 2019, 3:43 PM · Restricted Project

Feb 6 2019

vporpo added a comment to D57779: [SLP] Add support for throttling..

Correct me if I am wrong, but I think your algorithm can only remove the rightmost branch of the SLP graph (and maybe several of them if they are close by), as StopAt is a single index in VectorizableTree and we remove all nodes > StopAt.
I think this could be improved if we could find all possible entries where we could stop at, not just one of them. Then, in the final traversal, we could remove all branches starting from each of these nodes all the way to the leaves.
Also, I think the Delta in reduceTreeCost() should not be needed as we should run this regardless of whether the original tree is profitable or not.

Feb 6 2019, 11:58 AM
vporpo edited reviewers for D57779: [SLP] Add support for throttling., added: vporpo; removed: Vasilis.
Feb 6 2019, 10:38 AM

Sep 25 2018

vporpo added a comment to D49491: [RFC][VPlan, SLP] Add simple SLP analysis on top of VPlan..

Hi Florian, yes I am happy with the changes, thanks!
Just please try to add an assertion that checks that the graph is a tree (see inline comment) to make sure that the graph is the one we expect.

Sep 25 2018, 9:53 PM

Sep 20 2018

vporpo added inline comments to D49491: [RFC][VPlan, SLP] Add simple SLP analysis on top of VPlan..
Sep 20 2018, 4:21 PM