Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Phabricator shutdown timeline

tra (Artem Belevich)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 8 2015, 1:53 PM (455 w, 1 d)

Recent Activity

Thu, Sep 7

tra added inline comments to D141375: [SYCL][OpenMP] Fix compilation errors for unsupported __bf16 intrinsics.
Thu, Sep 7, 3:59 PM · Restricted Project, Restricted Project
tra added inline comments to D141375: [SYCL][OpenMP] Fix compilation errors for unsupported __bf16 intrinsics.
Thu, Sep 7, 2:41 PM · Restricted Project, Restricted Project

Wed, Sep 6

tra added a comment to D158320: [libc] Initial support for microbenchmarking GPU code.

LGTM for NVPTX side.

Wed, Sep 6, 10:37 AM · Restricted Project, Restricted Project

Tue, Sep 5

tra committed rG2a702eca3efa: Use unsigned types for __popc/__popcll to match their declarations in CUDA… (authored by tra).
Use unsigned types for __popc/__popcll to match their declarations in CUDA…
Tue, Sep 5, 4:03 PM · Restricted Project, Restricted Project

Aug 29 2023

tra added a comment to D158778: [CUDA] Propagate __float128 support from the host..

Just doing a simple example here https://godbolt.org/z/Y3E58PKMz shows that for NVPTX we error out (as I would expect) but for AMDGPU we emit an x86 80-bit double.

Aug 29 2023, 1:28 PM · Restricted Project, Restricted Project
tra updated subscribers of D158778: [CUDA] Propagate __float128 support from the host..

Just checks removal should be fine

Aug 29 2023, 11:09 AM · Restricted Project, Restricted Project

Aug 28 2023

tra updated subscribers of D158778: [CUDA] Propagate __float128 support from the host..

This patch breaks breaks two tests:

  • github.com/llvm/llvm-project/blob/main/clang/test/OpenMP/nvptx_unsupported_type_codegen.cpp
  • github.com/llvm/llvm-project/blob/main/clang/test/OpenMP/nvptx_unsupported_type_messages.cpp
Aug 28 2023, 3:56 PM · Restricted Project, Restricted Project
tra accepted D158247: [CUDA][HIP] Fix overloading resolution in global variable initializer.
Aug 28 2023, 10:22 AM · Restricted Project, Restricted Project

Aug 24 2023

tra added a comment to D158778: [CUDA] Propagate __float128 support from the host..

Also, https://github.com/llvm/llvm-project/issues/46903

Aug 24 2023, 2:07 PM · Restricted Project, Restricted Project
tra published D158778: [CUDA] Propagate __float128 support from the host. for review.

For some context about why it's needed see https://github.com/compiler-explorer/compiler-explorer/pull/5373#issuecomment-1687127788
The short version is that currently CUDA compilation is broken w/ clang with unpatched libstdc++. Ubuntu and Debian patch libstdc++ to avoid the problem, but this should be handled by clang.

Aug 24 2023, 2:06 PM · Restricted Project, Restricted Project

Aug 23 2023

tra added a comment to D158618: [mlir][vector] Rename vector reductions: `maxf` → `maximumf`, `minf` → `minimumf`.

@tra for visibility

Aug 23 2023, 9:45 AM · Restricted Project, Restricted Project

Aug 22 2023

tra added inline comments to D158053: [Legalizer] Expand fmaximum and fminimum.
Aug 22 2023, 10:48 AM · Restricted Project, Restricted Project

Aug 21 2023

tra added inline comments to D158053: [Legalizer] Expand fmaximum and fminimum.
Aug 21 2023, 2:13 PM · Restricted Project, Restricted Project
tra accepted D158445: [llvm][NFC] Refactor AutoUpgrade case 'n'.

Nice.

Aug 21 2023, 1:55 PM · Restricted Project, Restricted Project
tra added inline comments to D157750: Properly handle -fsplit-machine-functions for fatbinary compilation.
Aug 21 2023, 10:45 AM · Restricted Project, Restricted Project, Restricted Project

Aug 18 2023

tra updated the diff for D158238: Implement __builtin_fmaximum/fminimum*.

Fixed test RUN lines

Aug 18 2023, 2:45 PM · Restricted Project, Restricted Project
tra added a comment to D158238: Implement __builtin_fmaximum/fminimum*.

@fhahn who else should take a look at the patch?

Aug 18 2023, 12:03 PM · Restricted Project, Restricted Project
tra published D158238: Implement __builtin_fmaximum/fminimum* for review.
Aug 18 2023, 12:02 PM · Restricted Project, Restricted Project
tra committed rG8f8df788aefa: Added missing test constraints. (authored by tra).
Added missing test constraints.
Aug 18 2023, 11:40 AM · Restricted Project, Restricted Project
tra committed rG72757343fa86: [CUDA/NVPTX] Improve handling of memcpy for -Os compilations. (authored by tra).
[CUDA/NVPTX] Improve handling of memcpy for -Os compilations.
Aug 18 2023, 11:28 AM · Restricted Project, Restricted Project, Restricted Project
tra closed D158226: [CUDA/NVPTX] Improve handling of memcpy for -Os compilations..
Aug 18 2023, 11:28 AM · Restricted Project, Restricted Project, Restricted Project
tra added a comment to D158247: [CUDA][HIP] Fix overloading resolution in global variable initializer.

Same reproducer but for CUDA: https://godbolt.org/z/WhjTMffnx

Aug 18 2023, 10:36 AM · Restricted Project, Restricted Project

Aug 17 2023

tra published D158226: [CUDA/NVPTX] Improve handling of memcpy for -Os compilations. for review.
Aug 17 2023, 3:40 PM · Restricted Project, Restricted Project, Restricted Project
tra added inline comments to D157750: Properly handle -fsplit-machine-functions for fatbinary compilation.
Aug 17 2023, 10:29 AM · Restricted Project, Restricted Project, Restricted Project

Aug 14 2023

tra added inline comments to D157750: Properly handle -fsplit-machine-functions for fatbinary compilation.
Aug 14 2023, 12:23 PM · Restricted Project, Restricted Project, Restricted Project

Aug 11 2023

tra added inline comments to D157750: Properly handle -fsplit-machine-functions for fatbinary compilation.
Aug 11 2023, 3:14 PM · Restricted Project, Restricted Project, Restricted Project
tra added a comment to D157750: Properly handle -fsplit-machine-functions for fatbinary compilation.
Aug 11 2023, 2:05 PM · Restricted Project, Restricted Project, Restricted Project

Aug 10 2023

tra added a reviewer for D157492: [TableGen] Add `!dump` and `dump`.: nhaehnle.
Aug 10 2023, 11:13 AM · Restricted Project, Restricted Project
tra added a comment to D157492: [TableGen] Add `!dump` and `dump`..

I think we're commingling two different things here.

  • representing a value as a string
  • printing something out for debugging purposes.
Aug 10 2023, 11:07 AM · Restricted Project, Restricted Project

Aug 9 2023

tra added a comment to D156420: [TableGen] Add `!dump` and `dump`..

However, I have the following considerations:

  1. !dump is a debugging facility that is not supposed to be used in production code
Aug 9 2023, 10:40 AM · Restricted Project, Restricted Project

Aug 7 2023

tra added a comment to D145527: Use nvptxcompile library..

@tra : do you have thoughts on nvptxcompiler library vs "writing out a temp file and shelling out invoke ptxas" ?

Aug 7 2023, 2:07 PM · Restricted Project, Restricted Project
tra accepted D156795: [CUDA][HIP] Fix overloading resolution of delete operator.
Aug 7 2023, 1:52 PM · Restricted Project, Restricted Project
tra added a comment to D156429: [TableGen] Add new bang operator !format.

Here is a proposed use: https://reviews.llvm.org/D156432

Aug 7 2023, 1:12 PM · Restricted Project, Restricted Project
tra accepted D154300: [CUDA][HIP] Fix template argument deduction.
Aug 7 2023, 12:39 PM · Restricted Project, Restricted Project
tra added a comment to D156429: [TableGen] Add new bang operator !format.

Do we really need it at all?

Aug 7 2023, 12:33 PM · Restricted Project, Restricted Project
tra added a comment to D156420: [TableGen] Add `!dump` and `dump`..

Sorry about the silence -- I was away for the last couple of weeks.

Aug 7 2023, 12:19 PM · Restricted Project, Restricted Project
tra accepted D156014: [Clang][NVPTX] Permit use of the alias attribute for NVPTX targets.
Aug 7 2023, 11:47 AM · Restricted Project, Restricted Project
tra added inline comments to D154117: [mlir][NVVM] Adds the NVVM target attribute..
Aug 7 2023, 11:05 AM · Restricted Project, Restricted Project
tra added inline comments to D156014: [Clang][NVPTX] Permit use of the alias attribute for NVPTX targets.
Aug 7 2023, 10:43 AM · Restricted Project, Restricted Project

Jul 21 2023

tra added inline comments to D156014: [Clang][NVPTX] Permit use of the alias attribute for NVPTX targets.
Jul 21 2023, 8:03 PM · Restricted Project, Restricted Project
tra added inline comments to D156014: [Clang][NVPTX] Permit use of the alias attribute for NVPTX targets.
Jul 21 2023, 8:00 PM · Restricted Project, Restricted Project
tra accepted D156012: [NVPTX] Fix lack of `.noreturn` on certain functions for aliases.
Jul 21 2023, 7:56 PM · Restricted Project, Restricted Project
tra accepted D155211: [NVPTX] Add initial support for '.alias' in PTX.
Jul 21 2023, 2:39 PM · Restricted Project, Restricted Project, Restricted Project

Jul 20 2023

tra accepted D155851: [llvm][nvptx] Add sm_90a.

SGTM.

Jul 20 2023, 1:24 PM · Restricted Project, Restricted Project
tra added a comment to D155851: [llvm][nvptx] Add sm_90a.

It's unfortunate that NVIDIA decided to break existing naming convention. :-/

Jul 20 2023, 10:16 AM · Restricted Project, Restricted Project

Jul 18 2023

tra added a comment to D154559: [clang] Fix constant evaluation about static member function.

@rsmith Richard, PTAL. This needs your language lawyering expertise.

Jul 18 2023, 11:13 AM · Restricted Project
tra accepted D155539: [CUDA][HIP] Use the same default language std as C++.

We should probably update documentation that C++ standard version for CUDA/HIP compilation now matches C++ default instead of previously used c++14.

Jul 18 2023, 11:07 AM · Restricted Project, Restricted Project
tra accepted D155606: [Clang] Only emit CUDA version warnings when creating the CUDA toolchain.
Jul 18 2023, 11:03 AM · Restricted Project, Restricted Project

Jul 17 2023

tra accepted D155480: [HIP] Rename predefined macros .
Jul 17 2023, 9:51 AM · Restricted Project, Restricted Project

Jul 13 2023

tra committed rGf05b58a9468c: [clang] Support '-fgpu-default-stream=per-thread' for NVIDIA CUDA (authored by boxu-zhang).
[clang] Support '-fgpu-default-stream=per-thread' for NVIDIA CUDA
Jul 13 2023, 4:55 PM · Restricted Project, Restricted Project
tra closed D154822: [clang] Support '-fgpu-default-stream=per-thread' for NVIDIA CUDA.
Jul 13 2023, 4:55 PM · Restricted Project, Restricted Project

Jul 12 2023

tra added a comment to D154822: [clang] Support '-fgpu-default-stream=per-thread' for NVIDIA CUDA.

Can anyone push this?

Jul 12 2023, 10:45 AM · Restricted Project, Restricted Project

Jul 11 2023

tra added inline comments to D154300: [CUDA][HIP] Fix template argument deduction.
Jul 11 2023, 1:49 PM · Restricted Project, Restricted Project
tra accepted D154822: [clang] Support '-fgpu-default-stream=per-thread' for NVIDIA CUDA.
Jul 11 2023, 11:50 AM · Restricted Project, Restricted Project

Jul 10 2023

tra added a comment to D154507: [NVPTX] Apply global var demotion to private symbols.

This may be potentially problematic for CUDA as we may need to refer to the global variable from the host side. E.g. via cudaMemcpyFromSymbol/cudaMemcpyToSymbol.

If something is to be referenced from outside a LLVM module, shouldn't we just avoid making it internal in the first place? Neither internal nor private are supposed to be visible outside the current module I believe.

Jul 10 2023, 5:06 PM · Restricted Project, Restricted Project
tra accepted D154507: [NVPTX] Apply global var demotion to private symbols.
Jul 10 2023, 2:34 PM · Restricted Project, Restricted Project
tra added a comment to D154507: [NVPTX] Apply global var demotion to private symbols.

Ah, never mind. We're only dealing with shared variables here. The patch is fine.

Jul 10 2023, 2:33 PM · Restricted Project, Restricted Project
tra added a comment to D154507: [NVPTX] Apply global var demotion to private symbols.

What about if we add shared memory address space check? The shared memory isn't addressable from the host. Something like below:

if (!gv->hasInternalLinkage() || (!gv->hasLocalLinkage() && Pty->getAddressSpace() != ADDRESS_SPACE_SHARED))
Jul 10 2023, 2:26 PM · Restricted Project, Restricted Project
tra added a comment to D154507: [NVPTX] Apply global var demotion to private symbols.

This may be potentially problematic for CUDA as we may need to refer to the global variable from the host side. E.g. via cudaMemcpyFromSymbol/cudaMemcpyToSymbol.

Jul 10 2023, 2:14 PM · Restricted Project, Restricted Project
tra accepted D154797: [CUDA][HIP] Rename and fix `-fcuda-approx-transcendentals`.
Jul 10 2023, 1:30 PM · Restricted Project, Restricted Project
tra accepted D117118: [NVPTX] Fix shr/and pair replace with bfe.
Jul 10 2023, 11:49 AM · Restricted Project, Restricted Project
tra added inline comments to D154704: [libc] Enable aliasing on AMDGPU targets.
Jul 10 2023, 10:10 AM · Restricted Project, Restricted Project
tra added a comment to D154797: [CUDA][HIP] Rename and fix `-fcuda-approx-transcendentals`.

Looks good in general.

Jul 10 2023, 9:46 AM · Restricted Project, Restricted Project
tra added a reviewer for D154822: [clang] Support '-fgpu-default-stream=per-thread' for NVIDIA CUDA: tra.

Looking at CUDA headers, it appears that changing only compiler-generated-glue may be insufficient. A lot of other CUDA API calls need to be changed to _ptsz variant and for that we need to have CUDA_API_PER_THREAD_DEFAULT_STREAM defined.

Jul 10 2023, 9:32 AM · Restricted Project, Restricted Project

Jun 30 2023

tra committed rGa8821c8b1ca1: [NVPTX] added a hidden option to control NVPTXLowerUnreachable pass. (authored by tra).
[NVPTX] added a hidden option to control NVPTXLowerUnreachable pass.
Jun 30 2023, 9:00 AM · Restricted Project, Restricted Project
tra closed D154106: [NVPTX] added a hidden option to control NVPTXLowerUnreachable pass..
Jun 30 2023, 8:59 AM · Restricted Project, Restricted Project
tra updated the diff for D154106: [NVPTX] added a hidden option to control NVPTXLowerUnreachable pass..

clang-formatted whole file.

Jun 30 2023, 8:39 AM · Restricted Project, Restricted Project
tra added inline comments to D154106: [NVPTX] added a hidden option to control NVPTXLowerUnreachable pass..
Jun 30 2023, 8:35 AM · Restricted Project, Restricted Project
tra updated the diff for D154106: [NVPTX] added a hidden option to control NVPTXLowerUnreachable pass..

Addressed comments. Reformatted the changes.

Jun 30 2023, 8:33 AM · Restricted Project, Restricted Project

Jun 29 2023

tra accepted D154066: [NFC][TableGen] Refactor the implementation of arguments.

LGTM in general, with a nit.

Jun 29 2023, 12:45 PM · Restricted Project, Restricted Project
tra accepted D154065: [TableGen] Extract functions to resolve arguments [nfc].
Jun 29 2023, 12:22 PM · Restricted Project, Restricted Project
tra accepted D154077: [HIP] Fix version detection for old HIP-PATH.

LGTM in general with a minor suggestion.

Jun 29 2023, 10:54 AM · Restricted Project, Restricted Project
tra published D154106: [NVPTX] added a hidden option to control NVPTXLowerUnreachable pass. for review.
Jun 29 2023, 9:36 AM · Restricted Project, Restricted Project

Jun 28 2023

tra committed rG250f2bb2c6a9: adding bf16 support to NVPTX (authored by kushanam).
adding bf16 support to NVPTX
Jun 28 2023, 11:58 AM · Restricted Project, Restricted Project, Restricted Project

Jun 23 2023

tra committed rG60941f1d28ce: [NVPTX] Lower v2f16 and v2bf16 stores as 32-bit scalars. (authored by tra).
[NVPTX] Lower v2f16 and v2bf16 stores as 32-bit scalars.
Jun 23 2023, 10:59 AM · Restricted Project, Restricted Project
tra closed D152593: [NVPTX] Lower v2f16 and v2bf16 stores as 32-bit scalars..
Jun 23 2023, 10:59 AM · Restricted Project, Restricted Project
tra committed rG7e5d7d208f5b: [NVPTX] Correctly lower extending loads for fp16 vectors. (authored by tra).
[NVPTX] Correctly lower extending loads for fp16 vectors.
Jun 23 2023, 10:46 AM · Restricted Project, Restricted Project
tra closed D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..
Jun 23 2023, 10:46 AM · Restricted Project, Restricted Project

Jun 22 2023

tra updated the summary of D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..
Jun 22 2023, 3:27 PM · Restricted Project, Restricted Project
tra updated the diff for D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..

Added more tests for vector loads w/ small alignment.

Jun 22 2023, 3:26 PM · Restricted Project, Restricted Project
tra updated the diff for D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..

Fixed an error in lowering extending vector loads.

Jun 22 2023, 3:17 PM · Restricted Project, Restricted Project
tra added a reviewer for D153477: [NVPTX] Correctly lower extending loads for fp16 vectors.: bkramer.
Jun 22 2023, 2:32 PM · Restricted Project, Restricted Project
tra updated the diff for D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..

Preserve behavior for lowering integer vectors.

Jun 22 2023, 2:17 PM · Restricted Project, Restricted Project

Jun 21 2023

tra added inline comments to D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..
Jun 21 2023, 6:10 PM · Restricted Project, Restricted Project
tra added a comment to D153477: [NVPTX] Correctly lower extending loads for fp16 vectors..

Reproducer: https://godbolt.org/z/nzsd16MrP

Jun 21 2023, 4:00 PM · Restricted Project, Restricted Project
tra published D153477: [NVPTX] Correctly lower extending loads for fp16 vectors. for review.
Jun 21 2023, 3:56 PM · Restricted Project, Restricted Project
tra committed rG1ee4d880e876: NVPTX: Lower unreachable to exit to allow ptxas to accurately reconstruct the… (authored by maleadt).
NVPTX: Lower unreachable to exit to allow ptxas to accurately reconstruct the…
Jun 21 2023, 11:41 AM · Restricted Project, Restricted Project
tra closed D152789: NVPTX: Lower unreachable to exit to allow ptxas to accurately reconstruct the CFG..
Jun 21 2023, 11:41 AM · Restricted Project, Restricted Project, Restricted Project

Jun 20 2023

tra resigned from D147116: [RFC] Introduce convergence control intrinsics.

My understanding of nuances here is not sufficient for a meaningful review. @nhaehnle's LGTM works for me.

Jun 20 2023, 10:00 AM · Restricted Project, Restricted Project
tra added a comment to D152789: NVPTX: Lower unreachable to exit to allow ptxas to accurately reconstruct the CFG..

I don't have commit access; can somebody land this for me? Or does this require more review?

Jun 20 2023, 9:41 AM · Restricted Project, Restricted Project, Restricted Project

Jun 16 2023

tra accepted D153157: [libc] Add an option to use a job pool for GPU tests.

Just a FYI -- in the past, running too many tests in parallel caused some tests to hang. I've empirically settled on - j4 on cuda bots. Things may have improved in recent CUDA and driver versions, but I didn't push parallel tests further.

Jun 16 2023, 11:21 AM · Restricted Project, Restricted Project

Jun 15 2023

tra added inline comments to D151361: [CUDA] bump supported CUDA version to 12.1/11.8.
Jun 15 2023, 2:28 PM · Restricted Project, Restricted Project, Restricted Project
tra committed rGd028188412fa: [CUDA] Updated CUDA versions mentioned in CompileCudaWithLLVM.rst (authored by tra).
[CUDA] Updated CUDA versions mentioned in CompileCudaWithLLVM.rst
Jun 15 2023, 2:28 PM · Restricted Project, Restricted Project

Jun 14 2023

tra added a reverting change for rGc16b7e54ac5b: [NVPTX] Allow using v4i32 for memcpy lowering.: rGeb4f0d9f8500: Revert "[NVPTX] Allow using v4i32 for memcpy lowering.".
Jun 14 2023, 10:04 AM · Restricted Project, Restricted Project
tra committed rGeb4f0d9f8500: Revert "[NVPTX] Allow using v4i32 for memcpy lowering." (authored by tra).
Revert "[NVPTX] Allow using v4i32 for memcpy lowering."
Jun 14 2023, 10:04 AM · Restricted Project, Restricted Project
tra added a reverting change for D152317: [NVPTX] Allow using v4i32 for memcpy lowering.: rGeb4f0d9f8500: Revert "[NVPTX] Allow using v4i32 for memcpy lowering.".
Jun 14 2023, 10:04 AM · Restricted Project, Restricted Project

Jun 13 2023

tra added a comment to D152317: [NVPTX] Allow using v4i32 for memcpy lowering..

Apparently this change causes a hang in https://github.com/llvm/llvm-project/blob/cdcbef1b14582f5b5b296bec750f60a1629ecc32/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp#L3410

Jun 13 2023, 7:43 PM · Restricted Project, Restricted Project
tra accepted D152789: NVPTX: Lower unreachable to exit to allow ptxas to accurately reconstruct the CFG..

It's unfortunate that we don't seem to have a way to lower unreachable via normal lowering mechanisms. AFAICT we don't even have a selection DAG node type for it.

Jun 13 2023, 10:46 AM · Restricted Project, Restricted Project, Restricted Project

Jun 12 2023

tra accepted D152742: [libc] Fix floating point test failing to build on the GPU.
Jun 12 2023, 1:06 PM · Restricted Project, Restricted Project
tra accepted D152701: LowerMemIntrinsics: Check address space aliasing for memmove expansion.

LGTM in principle.

Jun 12 2023, 11:20 AM · Restricted Project, Restricted Project