Page MenuHomePhabricator

vpykhtin (Valery Pykhtin)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 28 2016, 8:30 AM (159 w, 3 d)

Recent Activity

Tue, Feb 12

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

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

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

Mon, Feb 11

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…
Mon, Feb 11, 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…
Mon, Feb 11, 8:28 AM
vpykhtin committed rGded96df01e95: [AMDGPU] Enable DPP combiner pass by default. (authored by vpykhtin).
[AMDGPU] Enable DPP combiner pass by default.
Mon, Feb 11, 3:15 AM
vpykhtin committed rL353691: [AMDGPU] Enable DPP combiner pass by default..
[AMDGPU] Enable DPP combiner pass by default.
Mon, Feb 11, 3:15 AM

Fri, Feb 8

vpykhtin committed rG7fe97f8c7ca1: [AMDGPU] Fix DPP combiner (authored by vpykhtin).
[AMDGPU] Fix DPP combiner
Fri, Feb 8, 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.

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

Thu, Feb 7

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

Thanks Nikolai!

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

rebased diff.

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

Mon, Feb 4

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

Thu, Jan 24

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

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

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

Mon, Jan 21

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

LGTM, thanks!

Mon, Jan 21, 9:03 AM
vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Mon, Jan 21, 6:42 AM · Restricted Project, Restricted Project
vpykhtin added inline comments to D55444: AMDGPU: Fix DPP combiner.
Mon, Jan 21, 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

Oct 26 2018

vpykhtin added inline comments to D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).
Oct 26 2018, 10:45 AM · Restricted Project
vpykhtin added inline comments to D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).
Oct 26 2018, 10:13 AM · Restricted Project
vpykhtin created D53762: AMDGPU: Combine DPP mov with use instuctions (VOP1/2/3).
Oct 26 2018, 7:46 AM · Restricted Project

Oct 10 2018

vpykhtin committed rL344134: [TableGen] fix assert in !cast when used out of definition in a multiclass.
[TableGen] fix assert in !cast when used out of definition in a multiclass
Oct 10 2018, 3:55 AM
vpykhtin closed D53068: TableGen: fix assert in !cast when used out of definition in a multiclass.
Oct 10 2018, 3:54 AM
vpykhtin created D53068: TableGen: fix assert in !cast when used out of definition in a multiclass.
Oct 10 2018, 2:43 AM

Jun 4 2018

vpykhtin accepted D47664: [AMDGPU] Factored out common part of GCNRPTracker::reset().
Jun 4 2018, 7:09 AM
vpykhtin accepted D47661: [AMDGPU] Small refactoring in the scheduler.
Jun 4 2018, 7:07 AM

May 31 2018

vpykhtin accepted D47511: [AMDGPU] Construct memory clauses before RA.
May 31 2018, 2:04 AM

May 30 2018

vpykhtin added inline comments to D47511: [AMDGPU] Construct memory clauses before RA.
May 30 2018, 11:50 PM
vpykhtin accepted D47509: [AMDGPU] Track occupancy in MFI.
May 30 2018, 9:40 PM

May 25 2018

vpykhtin accepted D46992: [AMDGPU] Add perf hints to functions.
May 25 2018, 10:16 AM
vpykhtin added a comment to D46992: [AMDGPU] Add perf hints to functions.

LGTM. Just a hint: whenever you use "auto X = ..." it's worth to specify explicitly if X is pointer or reference. It's not only saves you from accidental temp object by copy but also makes program easier to read.

May 25 2018, 3:51 AM

Mar 5 2018

vpykhtin accepted D44020: [AMDGPU][MC][DOC] Updated AMD GPU assembler description.

I think it looks very good, thank you!

Mar 5 2018, 2:34 AM

Dec 27 2017

vpykhtin accepted D41598: [AMDGPU][MC] Incorrect parsing of flat/global atomic modifiers.

LGTM.

Dec 27 2017, 6:57 AM

Dec 5 2017

vpykhtin added a comment to D35267: Pass Divergence Analysis data to selection DAG to drive divergence dependent instruction selection.

In general adding "custom" code to SelectionDAGBuilder::setValue looks odd. Instead I would add a target-customizable postprocessing loop on pairs of Value <-> SDNode into SelectionDAGISel::SelectBasicBlock right after the DAG is created. The target hook should be able to get whatever it requires LLVM IR analisys and annotate SDNodes.

Dec 5 2017, 6:44 AM

Nov 20 2017

vpykhtin committed rL318649: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG….
AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG…
Nov 20 2017, 6:38 AM
vpykhtin closed D39897: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG (experimental) by committing rL318649: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG….
Nov 20 2017, 6:38 AM

Nov 17 2017

vpykhtin added inline comments to D39897: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG (experimental).
Nov 17 2017, 8:54 AM
vpykhtin updated the diff for D39897: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG (experimental).

Added test. It turns out getOccupancyWithLocalMemSize function doesn't account for amdgpu-waves-per-eu attribute so I added call to getWavesPerEU (which does).

Nov 17 2017, 7:34 AM

Nov 16 2017

vpykhtin added a reviewer for D40088: [AMDGPU][MC][GFX8][GFX9] Corrected names of integer v_{add/addc/sub/subrev/subb/subbrev}: rampitec.
Nov 16 2017, 11:25 AM

Nov 13 2017

vpykhtin updated the diff for D39897: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG (experimental).

fixed per review issues.

Nov 13 2017, 7:20 AM

Nov 10 2017

vpykhtin created D39897: AMDGPU: Partial ILP scheduler port from SelectionDAG to SchedulingDAG (experimental).
Nov 10 2017, 5:10 AM

Sep 19 2017

vpykhtin accepted D38014: [AMDGPU] Prevent post-RA scheduler from breaking memory clauses.

LGTM.

Sep 19 2017, 1:33 PM

Sep 12 2017

vpykhtin accepted D37698: Allow target to decide when to cluster loads/stores in misched.

SIInstrInfo::doMemOpsHaveSameBasePtr looks generic enough to be default indeed but should we commit this first and then make doMemOpsHaveSameBasePtr default so we could rollback to this one in case of severe regressions? LGTM by the way.

Sep 12 2017, 9:07 AM

Sep 8 2017

vpykhtin accepted D37594: AMDGPU: Start using !con operator.

Wow! I wish I had this before! LGTM.

Sep 8 2017, 7:36 AM

Sep 6 2017

vpykhtin accepted D37502: [AMDGPU] Fix shouldClusterMemOps to process flat loads.

LGTM. However it looks like we should fix TD to follow single naming convention.

Sep 6 2017, 7:22 AM

Sep 4 2017

vpykhtin added inline comments to D36831: [AMDGPU] Transform __read_pipe_* and __write_pipe_*.
Sep 4 2017, 3:15 AM

Sep 1 2017

vpykhtin accepted D36831: [AMDGPU] Transform __read_pipe_* and __write_pipe_*.

Ok, unmangled part looks different indeed. If the issue with pre-link checking is solved this patch is ok with me.

Sep 1 2017, 9:32 AM
vpykhtin added a comment to D36831: [AMDGPU] Transform __read_pipe_* and __write_pipe_*.

Splitting AMDGPULibFunc in two classes looks a huge overkill. How about modifying AMDGPULibFunc::parse so it could accept unmangled names and just return an enum id for the function (using some fast lookup approach)? Type info for such functions can be left unpopulated and supposed to be handled by the client (as in fold_read_write_pipe).

Sep 1 2017, 6:36 AM

Aug 28 2017

vpykhtin accepted D37223: [AMDGPU] Fix regression in AMDGPULibCalls allowing native for doubles.

LGTM.

Aug 28 2017, 10:56 AM

Aug 11 2017

vpykhtin accepted D36436: [AMDGPU] Ported and adopted AMDLibCalls pass.

LGTM.

Aug 11 2017, 8:35 AM

Jul 21 2017

vpykhtin added a comment to D35435: [AMDGPU] Produce flat|global_dwordx3 instructions.

The implementation of this approach looks good to me. The only question is which way to go to implement v3 vector.

Jul 21 2017, 12:49 PM
vpykhtin accepted D35710: AMDGPU: Add instruction definitions for some scratch_* instructions.

LGTM.

Jul 21 2017, 6:35 AM

Jul 20 2017

vpykhtin accepted D35659: AMDGPU: Add encodings for global atomics.

LGTM.

Jul 20 2017, 7:21 AM
vpykhtin accepted D35658: AMDGPU: Rename _RTN atomic instructions.

LGTM, Thanks!

Jul 20 2017, 6:37 AM

Jun 27 2017

vpykhtin accepted D34626: [AMDGPU] SDWA: several fixes for V_CVT and VOPC instructions.

LGTM.

Jun 27 2017, 7:50 AM
vpykhtin accepted D34655: [AMDGPU] Add 2 new alignbit patterns.

LGTM.

Jun 27 2017, 3:13 AM
vpykhtin accepted D34579: Fold fneg and fabs like multiplications.

LGTM.

Jun 27 2017, 3:12 AM
vpykhtin accepted D34545: [AMDGPU] Simplify setcc (sext from i1 b), -1|0, cc.

LGTM.

Jun 27 2017, 3:05 AM
vpykhtin accepted D34500: [AMDGPU] Combine and x, (sext cc from i1) => select cc, x, 0.

LGTM.

Jun 27 2017, 3:03 AM

Jun 20 2017

vpykhtin accepted D34291: [AMDGPU] Fix illegal shrink of V_SUBB_U32 and V_ADDC_U32.

LGTM.

Jun 20 2017, 7:42 AM
vpykhtin accepted D34300: [AMDGPU] simplify add x, *ext (setcc) => addc|subb x, 0, setcc.

LGTM.

Jun 20 2017, 3:31 AM
vpykhtin accepted D34374: [AMDGPU] Combine add and adde, sub and sube.

LGTM.

Jun 20 2017, 3:31 AM
vpykhtin accepted D34241: [AMDGPU] SDWA: add support for GFX9 in peephole pass.

LGTM, with nit.

Jun 20 2017, 3:29 AM

May 26 2017

vpykhtin accepted D33064: AMDGPU: Start adding offset fields to flat instructions.

LGTM.

May 26 2017, 5:35 AM

May 23 2017

vpykhtin accepted D33432: [AMDGPU] Convert shl (add) into add (shl).

LGTM.

May 23 2017, 4:15 AM

May 22 2017

vpykhtin accepted D33367: [AMDGPU] Narrow lshl from 64 to 32 bit if possible.

LGTM.

May 22 2017, 9:34 AM
vpykhtin added inline comments to D33367: [AMDGPU] Narrow lshl from 64 to 32 bit if possible.
May 22 2017, 9:18 AM