Page MenuHomePhabricator
Feed Advanced Search

Today

vpykhtin added a comment to D65081: AMDGPU: Start redefining atomic PatFrags.

I'm not sure I can follow all the consequences of this change, but as for tablegen usage it looks good.

Mon, Jul 22, 6:18 AM

Fri, Jul 12

vpykhtin added a comment to D64393: [AMDGPU] Fix DPP combiner check for exec modification.

Looks good, thank you!

Fri, Jul 12, 8:52 AM · Restricted Project
vpykhtin added inline comments to D64393: [AMDGPU] Fix DPP combiner check for exec modification.
Fri, Jul 12, 8:41 AM · Restricted Project
vpykhtin added inline comments to D64393: [AMDGPU] Fix DPP combiner check for exec modification.
Fri, Jul 12, 8:20 AM · Restricted Project
vpykhtin accepted D64393: [AMDGPU] Fix DPP combiner check for exec modification.

I think we can submit this.

Fri, Jul 12, 7:06 AM · Restricted Project

Thu, Jul 11

vpykhtin added inline comments to D64393: [AMDGPU] Fix DPP combiner check for exec modification.
Thu, Jul 11, 5:43 AM · Restricted Project
vpykhtin added inline comments to D64393: [AMDGPU] Fix DPP combiner check for exec modification.
Thu, Jul 11, 4:39 AM · Restricted Project
vpykhtin added inline comments to D64393: [AMDGPU] Fix DPP combiner check for exec modification.
Thu, Jul 11, 4:36 AM · Restricted Project

Wed, Jul 10

vpykhtin added a comment to D64393: [AMDGPU] Fix DPP combiner check for exec modification.

But is it guaranteed that multiple uses by a single instruction will be adjacent in the list?

Wed, Jul 10, 6:18 AM · Restricted Project
vpykhtin added a comment to D64393: [AMDGPU] Fix DPP combiner check for exec modification.

Sorry, there is a code for returnining unique instr, so we can use the count:

Wed, Jul 10, 6:00 AM · Restricted Project
vpykhtin added a comment to D64393: [AMDGPU] Fix DPP combiner check for exec modification.

Yea, I thought there is a guaranty on unique instructions, but looking into defusechain_instr_iterator I don't see how this can be true, so let's continue using the set.

Wed, Jul 10, 5:49 AM · Restricted Project
vpykhtin added a comment to D64393: [AMDGPU] Fix DPP combiner check for exec modification.

Matt, I'm not against using scan limiter, just about aborting the scan after the last use.

Wed, Jul 10, 5:29 AM · Restricted Project

Tue, Jul 9

vpykhtin added a comment to D64393: [AMDGPU] Fix DPP combiner check for exec modification.

I missed r363675 commit and I think the original semantics of isEXECMaskConstantBetweenDefAndUses should be restored: there should be no scan after the last use.

Tue, Jul 9, 6:48 AM · Restricted Project

Fri, Jul 5

vpykhtin accepted D64207: [AMDGPU] DPP combiner: recognize identities for more opcodes.

LGTM. Thank you!

Fri, Jul 5, 4:16 AM · Restricted Project

Thu, Jul 4

vpykhtin added a comment to D64207: [AMDGPU] DPP combiner: recognize identities for more opcodes.

Right, this is hard to follow even for me :). 3rd operand is src1_modifiers, you can use a junk value for this to check whether the DPP combiner don't crash and don't combine it.

Thu, Jul 4, 9:19 AM · Restricted Project
vpykhtin added a reviewer for D64207: [AMDGPU] DPP combiner: recognize identities for more opcodes: cwabbott.
Thu, Jul 4, 8:19 AM · Restricted Project
vpykhtin added a comment to D64207: [AMDGPU] DPP combiner: recognize identities for more opcodes.

I think modifiers are checked correctly by the existing code, but can you add a test for e64 encodings into dpp_combine.mir similar to what is under "check for floating point modifiers" comment?

Thu, Jul 4, 8:06 AM · Restricted Project
vpykhtin added a comment to D64207: [AMDGPU] DPP combiner: recognize identities for more opcodes.

I'm not sure if e64 instructions have modifiers that cannot be encoded into DPP version, need to check. Otherwise looks good, though I would split typo corrections into separate patch and submit without review.

Thu, Jul 4, 7:45 AM · Restricted Project

Jun 18 2019

vpykhtin committed rG7e854e1cdd23: [AMDGPU] Speed up live-in virtual register set computaion in… (authored by vpykhtin).
[AMDGPU] Speed up live-in virtual register set computaion in…
Jun 18 2019, 4:41 AM
vpykhtin committed rL363661: [AMDGPU] Speed up live-in virtual register set computaion in….
[AMDGPU] Speed up live-in virtual register set computaion in…
Jun 18 2019, 4:40 AM
vpykhtin closed D62401: [AMDGPU] Speed up live-in virtual register set computaion in GCNScheduleDAGMILive.
Jun 18 2019, 4:40 AM · Restricted Project

Jun 17 2019

vpykhtin committed rGbf3c59f79bcc: LiveInterval.h: add LiveRange::findIndexesLiveAt function - return a list of… (authored by vpykhtin).
LiveInterval.h: add LiveRange::findIndexesLiveAt function - return a list of…
Jun 17 2019, 11:27 AM
vpykhtin committed rL363593: LiveInterval.h: add LiveRange::findIndexesLiveAt function - return a list of….
LiveInterval.h: add LiveRange::findIndexesLiveAt function - return a list of…
Jun 17 2019, 11:27 AM
vpykhtin closed D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..
Jun 17 2019, 11:27 AM · Restricted Project

Jun 14 2019

vpykhtin committed rGffeb01c113a5: [AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check (authored by vpykhtin).
[AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check
Jun 14 2019, 9:35 AM
vpykhtin committed rL363418: [AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check.
[AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check
Jun 14 2019, 9:34 AM
vpykhtin closed D63337: [AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check to prevent link failure.
Jun 14 2019, 9:34 AM · Restricted Project
vpykhtin updated the diff for D63337: [AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check to prevent link failure.

updated description

Jun 14 2019, 9:13 AM · Restricted Project
vpykhtin created D63337: [AMDGPU] Don't constrain callees with inlinehint from inlining on MaxBB check to prevent link failure.
Jun 14 2019, 8:54 AM · Restricted Project

Jun 7 2019

vpykhtin added a comment to D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..

ping

Jun 7 2019, 11:24 AM · Restricted Project
vpykhtin committed rGcb8de55f4749: [AMDGPU] Constrain the AMDGPU inliner on maximum number of basic blocks in a… (authored by vpykhtin).
[AMDGPU] Constrain the AMDGPU inliner on maximum number of basic blocks in a…
Jun 7 2019, 5:14 AM
vpykhtin committed rL362789: [AMDGPU] Constrain the AMDGPU inliner on maximum number of basic blocks in a….
[AMDGPU] Constrain the AMDGPU inliner on maximum number of basic blocks in a…
Jun 7 2019, 5:14 AM
vpykhtin closed D62917: [AMDGPU] Constrain the inliner on maximum number of basic blocks in a caller function.
Jun 7 2019, 5:14 AM · Restricted Project

Jun 5 2019

vpykhtin updated the diff for D62917: [AMDGPU] Constrain the inliner on maximum number of basic blocks in a caller function.

updated diff with per review issues done.

Jun 5 2019, 11:33 PM · Restricted Project
vpykhtin created D62917: [AMDGPU] Constrain the inliner on maximum number of basic blocks in a caller function.
Jun 5 2019, 10:04 AM · Restricted Project

May 31 2019

vpykhtin added a comment to D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..

Hi, this is the parent revision for the https://reviews.llvm.org/D62401.

May 31 2019, 3:21 AM · Restricted Project

May 29 2019

vpykhtin updated the diff for D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..
  • fixed bug when an index was considered in-segment at the segment's end in some cases (lower_bound used instead of upper)
  • added fast (binary search) skip for non-containing segments
  • improved variable naming
May 29 2019, 10:29 AM · Restricted Project

May 28 2019

vpykhtin added a comment to D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..

this implementation contains bug with upper segment boundary and misses opportunity to search on sorted segments too, fixing.

May 28 2019, 5:34 AM · Restricted Project

May 27 2019

vpykhtin updated the diff for D62401: [AMDGPU] Speed up live-in virtual register set computaion in GCNScheduleDAGMILive.

replaced std::vector with SmallVector, moved out of the loop.

May 27 2019, 9:02 AM · Restricted Project
vpykhtin updated the diff for D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..
  • replaced output std::vector with template output iterator, return bool on found
  • added is_sorted assert
  • improved description
May 27 2019, 9:02 AM · Restricted Project

May 24 2019

vpykhtin added inline comments to D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..
May 24 2019, 11:22 AM · Restricted Project
vpykhtin added a reviewer for D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at.: arsenm.
May 24 2019, 11:01 AM · Restricted Project
vpykhtin added reviewers for D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at.: rampitec, qcolombet, MatzeB.
May 24 2019, 11:01 AM · Restricted Project
vpykhtin added a child revision for D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at.: D62401: [AMDGPU] Speed up live-in virtual register set computaion in GCNScheduleDAGMILive.
May 24 2019, 10:52 AM · Restricted Project
vpykhtin added a parent revision for D62401: [AMDGPU] Speed up live-in virtual register set computaion in GCNScheduleDAGMILive: D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..
May 24 2019, 10:52 AM · Restricted Project
vpykhtin created D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..
May 24 2019, 10:52 AM · Restricted Project
vpykhtin updated the diff for D62401: [AMDGPU] Speed up live-in virtual register set computaion in GCNScheduleDAGMILive.

split LiveInterval.h change into different patch

May 24 2019, 10:49 AM · Restricted Project
vpykhtin created D62401: [AMDGPU] Speed up live-in virtual register set computaion in GCNScheduleDAGMILive.
May 24 2019, 9:06 AM · Restricted Project

Mar 14 2019

vpykhtin accepted D59191: [AMDGPU] Asm/disasm v_cndmask_b32_e64 with abs/neg source modifiers.

LGTM, Thanks!

Mar 14 2019, 6:08 AM · Restricted Project

Feb 12 2019

vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

The DPP combiner pass is enabled since rL353691, https://reviews.llvm.org/rGded96df01e95

Feb 12 2019, 2:58 AM · Restricted Project, Restricted Project

Feb 11 2019

vpykhtin committed rGe1c338e5270a: [AMDGPU] fix atomic_optimizations_buffer.ll test after DPP combiner was enabled… (authored by vpykhtin).
[AMDGPU] fix atomic_optimizations_buffer.ll test after DPP combiner was enabled…
Feb 11 2019, 8:29 AM
vpykhtin committed rL353717: [AMDGPU] fix atomic_optimizations_buffer.ll test after DPP combiner was enabled….
[AMDGPU] fix atomic_optimizations_buffer.ll test after DPP combiner was enabled…
Feb 11 2019, 8:28 AM
vpykhtin committed rGded96df01e95: [AMDGPU] Enable DPP combiner pass by default. (authored by vpykhtin).
[AMDGPU] Enable DPP combiner pass by default.
Feb 11 2019, 3:15 AM
vpykhtin committed rL353691: [AMDGPU] Enable DPP combiner pass by default..
[AMDGPU] Enable DPP combiner pass by default.
Feb 11 2019, 3:15 AM

Feb 8 2019

vpykhtin committed rG7fe97f8c7ca1: [AMDGPU] Fix DPP combiner (authored by vpykhtin).
[AMDGPU] Fix DPP combiner
Feb 8 2019, 4:03 AM
vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Thank you Connor! I really appreciate your effort on this DPP work.

Feb 8 2019, 4:03 AM · Restricted Project, Restricted Project
vpykhtin committed rL353513: [AMDGPU] Fix DPP combiner.
[AMDGPU] Fix DPP combiner
Feb 8 2019, 4:00 AM
vpykhtin closed D55444: AMDGPU: Fix DPP combiner.
Feb 8 2019, 3:59 AM · Restricted Project, Restricted Project

Feb 7 2019

vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Thanks Nikolai!

Feb 7 2019, 3:45 AM · Restricted Project, Restricted Project
vpykhtin updated the diff for D55444: AMDGPU: Fix DPP combiner.

rebased diff.

Feb 7 2019, 3:42 AM · Restricted Project, Restricted Project

Feb 4 2019

vpykhtin added a reviewer for D55444: AMDGPU: Fix DPP combiner: nhaehnle.
Feb 4 2019, 8:40 AM · Restricted Project, Restricted Project

Jan 24 2019

vpykhtin updated the diff for D55444: AMDGPU: Fix DPP combiner.

Fixed issue with old = dpp src register when bound ctrl is off.

Jan 24 2019, 7:53 AM · Restricted Project, Restricted Project

Jan 21 2019

vpykhtin accepted D56923: [AMDGPU] Fixed hazard recognizer to walk predecessors.

LGTM, thanks!

Jan 21 2019, 9:03 AM
vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 21 2019, 6:42 AM · Restricted Project, Restricted Project
vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 21 2019, 6:34 AM · Restricted Project, Restricted Project

Jan 18 2019

vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 18 2019, 5:03 AM · Restricted Project, Restricted Project

Jan 16 2019

vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 16 2019, 6:11 AM · Restricted Project, Restricted Project

Jan 15 2019

vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 15 2019, 8:35 AM · Restricted Project, Restricted Project
vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 15 2019, 8:02 AM · Restricted Project, Restricted Project
vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Hi Nikolai,

Jan 15 2019, 5:48 AM · Restricted Project, Restricted Project
vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Jan 15 2019, 4:04 AM · Restricted Project, Restricted Project

Jan 14 2019

vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

I think we reached the state this can be submitted (and probably enabled with subsequent patch). This would allow any of us make other fixes if required.

Jan 14 2019, 2:54 AM · Restricted Project, Restricted Project

Jan 11 2019

vpykhtin updated the diff for D55444: AMDGPU: Fix DPP combiner.

Thanks! I wonder how easy is to get confused there. I updated diff with the latest found problems fixed.

Jan 11 2019, 3:59 AM · Restricted Project, Restricted Project

Jan 10 2019

vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Anyways, the other cases look like maybe some other clever optimization for the immediate is hindering this one, for example this with signed minimum:

	v_bfrev_b32_e32 v8, -2                                        ; 7E1058C2
	s_nop 1                                                       ; BF800001
	v_mov_b32_dpp v8, v2  row_bcast:15 row_mask:0xa bank_mask:0xf ; 7E1002FA AF014202
	v_min_i32_e32 v2, v2, v8                                      ; 18041102

Maybe this pass needs to be moved earlier in the pipeline?

I'm not sure I can insert the pass that high, I'll think of how it can be skipped.

Jan 10 2019, 8:42 AM · Restricted Project, Restricted Project
vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Anyways, the other cases look like maybe some other clever optimization for the immediate is hindering this one, for example this with signed minimum:

	v_bfrev_b32_e32 v8, -2                                        ; 7E1058C2
	s_nop 1                                                       ; BF800001
	v_mov_b32_dpp v8, v2  row_bcast:15 row_mask:0xa bank_mask:0xf ; 7E1002FA AF014202
	v_min_i32_e32 v2, v2, v8                                      ; 18041102

Maybe this pass needs to be moved earlier in the pipeline?

Jan 10 2019, 8:18 AM · Restricted Project, Restricted Project
vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Thank you, Connor.

Jan 10 2019, 6:13 AM · Restricted Project, Restricted Project

Jan 9 2019

vpykhtin reopened D55444: AMDGPU: Fix DPP combiner.

reopening revision.

Jan 9 2019, 7:36 AM · Restricted Project, Restricted Project
vpykhtin updated the diff for D55444: AMDGPU: Fix DPP combiner.

rebased diff.

Jan 9 2019, 7:30 AM · Restricted Project, Restricted Project
vpykhtin committed rL350730: Revert "[AMDGPU] Fix DPP combiner".
Revert "[AMDGPU] Fix DPP combiner"
Jan 9 2019, 7:25 AM
vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Hi Connor,

Jan 9 2019, 5:59 AM · Restricted Project, Restricted Project
vpykhtin committed rL350721: [AMDGPU] Fix DPP combiner.
[AMDGPU] Fix DPP combiner
Jan 9 2019, 5:49 AM
vpykhtin closed D55444: AMDGPU: Fix DPP combiner.
Jan 9 2019, 5:49 AM · Restricted Project, Restricted Project

Dec 21 2018

vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

If there is no strong objections I would like to submit my latest patch here since the pass is disabled and the patch looks better anyway. Otherwise I'll return from NY holidays only on Jan 11.

Dec 21 2018, 9:22 AM · Restricted Project, Restricted Project

Dec 19 2018

vpykhtin updated the diff for D55444: AMDGPU: Fix DPP combiner.

Fixed issue with identity values and other cases, f32/f16 identity values to be added later.

Dec 19 2018, 6:29 AM · Restricted Project, Restricted Project

Dec 13 2018

vpykhtin added a comment to D55444: AMDGPU: Fix DPP combiner.

Connor, indeed, my bad, I'll try to fix this in a couple of days.

Dec 13 2018, 4:13 AM · Restricted Project, Restricted Project

Dec 12 2018

vpykhtin updated the diff for D55444: AMDGPU: Fix DPP combiner.

updated diff, added tests.

Dec 12 2018, 9:30 AM · Restricted Project, Restricted Project

Dec 7 2018

vpykhtin created D55444: AMDGPU: Fix DPP combiner.
Dec 7 2018, 9:22 AM · Restricted Project, Restricted Project

Dec 6 2018

vpykhtin added a comment to D55314: AMDGPU: Turn on the DPP combiner by default.

Ok, thank you very much for the review and explanation, I'll try to address it shortly.

Dec 6 2018, 6:33 AM
vpykhtin committed rL348487: [AMDGPU] Partial revert of rL348371: Turn on the DPP combiner by default.
[AMDGPU] Partial revert of rL348371: Turn on the DPP combiner by default
Dec 6 2018, 6:24 AM
vpykhtin added a comment to D55314: AMDGPU: Turn on the DPP combiner by default.

Ok, I'll disable it. I'm not sure about 3rd point: are you sayng the pass doesn't actually perform the optimization or it's fundamentally wrong? Because it implemented to handle "identity" cases for add, mul and min/max.

Dec 6 2018, 6:18 AM
vpykhtin added a comment to D55314: AMDGPU: Turn on the DPP combiner by default.

Hi,

This change breaks most of the subgroups tests with RADV (ie. dEQP-VK.subgroups.arithmetic.*).

Any reasons why you enabled it by default? Looks like it now triggers a new bug in the AMDGPU backend.

Thanks!

Dec 6 2018, 5:07 AM

Dec 5 2018

vpykhtin committed rL348371: [AMDGPU]: Turn on the DPP combiner by default.
[AMDGPU]: Turn on the DPP combiner by default
Dec 5 2018, 7:24 AM
vpykhtin closed D55314: AMDGPU: Turn on the DPP combiner by default.
Dec 5 2018, 7:24 AM
vpykhtin updated the diff for D55314: AMDGPU: Turn on the DPP combiner by default.
Dec 5 2018, 6:59 AM
vpykhtin created D55314: AMDGPU: Turn on the DPP combiner by default.
Dec 5 2018, 4:13 AM

Nov 30 2018

vpykhtin committed rL347993: [AMDGPU] Combine DPP mov with use instructions (VOP1/2/3).
[AMDGPU] Combine DPP mov with use instructions (VOP1/2/3)
Nov 30 2018, 6:25 AM
vpykhtin closed D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).
Nov 30 2018, 6:25 AM · Restricted Project

Nov 8 2018

vpykhtin updated the diff for D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).

fixed per review issues:

Nov 8 2018, 8:09 AM · Restricted Project

Nov 2 2018

vpykhtin added inline comments to D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).
Nov 2 2018, 10:42 AM · Restricted Project
vpykhtin updated the diff for D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).

Fixed per review issues.

Nov 2 2018, 7:31 AM · Restricted Project