Page MenuHomePhabricator

georgemitenkov (George Mitenkov)
User

Projects

User does not belong to any projects.

User Details

User Since
May 9 2020, 9:41 AM (19 w, 2 d)

Recent Activity

Yesterday

georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Addressed comments:

Sun, Sep 20, 12:49 PM · Restricted Project

Thu, Aug 27

georgemitenkov added inline comments to D86384: [MLIR][GPUToSPIRV] Passing gpu module name to SPIR-V module.
Thu, Aug 27, 10:27 PM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Latest patch works, but I still need the fixes to the builds (actually the fixes to GPUTransforms/CMakeLists.txt above is for the patch earlier in the stack).

Thanks George for making this available!

Thu, Aug 27, 11:33 AM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Trying this change out, I needed the following changes to get this to build locally. Can you verify this is needed?

index 560dcae8200..41f5c8a9ce5 100644
--- a/mlir/lib/Conversion/GPUCommon/CMakeLists.txt
+++ b/mlir/lib/Conversion/GPUCommon/CMakeLists.txt
@@ -34,6 +34,8 @@ add_mlir_conversion_library(MLIRGPUToGPURuntimeTransforms
   MLIRIR
   MLIRLLVMIR
   MLIRPass
+  MLIRSPIRV
   MLIRSupport
   MLIRStandardToLLVM
+  MLIRSPIRVToLLVM
 )
diff --git a/mlir/tools/mlir-spirv-cpu-runner/CMakeLists.txt b/mlir/tools/mlir-spirv-cpu-runner/CMakeLists.txt
index 69080ae66dc..8e0c2a6ad67 100644
--- a/mlir/tools/mlir-spirv-cpu-runner/CMakeLists.txt
+++ b/mlir/tools/mlir-spirv-cpu-runner/CMakeLists.txt
@@ -15,6 +15,7 @@ if (MLIR_SPIRV_CPU_RUNNER_ENABLED)
   get_property(dialect_libs GLOBAL PROPERTY MLIR_DIALECT_LIBS)
 
   target_link_libraries(mlir-spirv-cpu-runner PRIVATE
+    LLVMLinker
     ${conversion_libs}
     ${dialect_libs}
     MLIRAnalysis

I am building locally without these changes and it is working for me?

Thu, Aug 27, 10:50 AM · Restricted Project
georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Rebased on the correct version of LowerHostToLLVMPass.

Thu, Aug 27, 10:44 AM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Trying this change out, I needed the following changes to get this to build locally. Can you verify this is needed?

I will have a look at this one as well!

Thu, Aug 27, 2:43 AM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Added a missing change.

Thu, Aug 27, 2:38 AM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Fixed StringRef error.

Thu, Aug 27, 2:31 AM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Any ideas about what I might be missing here?

Thu, Aug 27, 2:20 AM · Restricted Project

Wed, Aug 26

georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Rebase against master.

Wed, Aug 26, 11:23 PM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Addressed comments and rebased on master to pick up committed patches.

Wed, Aug 26, 11:21 PM · Restricted Project
georgemitenkov committed rGd48b84eb8a90: [MLIR][GPUToSPIRV] Passing gpu module name to SPIR-V module (authored by georgemitenkov).
[MLIR][GPUToSPIRV] Passing gpu module name to SPIR-V module
Wed, Aug 26, 11:20 PM
georgemitenkov closed D86384: [MLIR][GPUToSPIRV] Passing gpu module name to SPIR-V module.
Wed, Aug 26, 11:20 PM · Restricted Project
georgemitenkov committed rGe850558cdc67: [MLIR][SPIRVToLLVM] Added a hook for descriptor set / binding encoding (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Added a hook for descriptor set / binding encoding
Wed, Aug 26, 10:50 PM
georgemitenkov closed D86515: [MLIR][SPIRVToLLVM] Added a hook for descriptor set / binding encoding.
Wed, Aug 26, 10:50 PM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Looking at the stack here, I think only the change below this one in the stack (which is good to go) and this would probably need me to submit this. It would be good to commit the other two dependent changes and then I could try these two out locally.

Yes, only the pass converting gpu.launch_func and host code is needed. I am committing all accepted patches now :)

Wed, Aug 26, 10:10 PM · Restricted Project
georgemitenkov committed rG9c224fd48ae5: [MLIR][SPIRVToLLVM] Updated the documentation for type conversion (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Updated the documentation for type conversion
Wed, Aug 26, 9:48 PM
georgemitenkov closed D86674: [MLIR][SPIRVToLLVM] Updated the documentation for type conversion.
Wed, Aug 26, 9:48 PM · Restricted Project
georgemitenkov committed rGd7461b31e7ef: [MLIR][SPIRV] Added optional name to SPIR-V module (authored by georgemitenkov).
[MLIR][SPIRV] Added optional name to SPIR-V module
Wed, Aug 26, 9:45 PM
georgemitenkov closed D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.
Wed, Aug 26, 9:45 PM · Restricted Project
georgemitenkov requested review of D86674: [MLIR][SPIRVToLLVM] Updated the documentation for type conversion.
Wed, Aug 26, 8:57 PM · Restricted Project
georgemitenkov added inline comments to D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.
Wed, Aug 26, 8:46 PM · Restricted Project
georgemitenkov updated the diff for D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.

Fixed clang-tidy error.

Wed, Aug 26, 8:45 PM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Addressed comments.

Wed, Aug 26, 8:31 PM · Restricted Project
georgemitenkov added inline comments to D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Wed, Aug 26, 8:29 PM · Restricted Project
georgemitenkov added inline comments to D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.
Wed, Aug 26, 12:49 PM · Restricted Project
georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Updated the runner based on the previous patches and added a test for 3D memrefs with floats.

Wed, Aug 26, 12:45 PM · Restricted Project
georgemitenkov retitled D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM from [MLIR][mlir-spirv-cpu-runner] Passes for spirv-cpu-runner to [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Wed, Aug 26, 10:41 AM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Rebase on top of other patches and minor changes: variables/function names now keep __spv__ from SPIR-V module.

Wed, Aug 26, 10:39 AM · Restricted Project

Tue, Aug 25

georgemitenkov updated the diff for D86384: [MLIR][GPUToSPIRV] Passing gpu module name to SPIR-V module.

Fixed the clang-tidy error.

Tue, Aug 25, 9:13 PM · Restricted Project
georgemitenkov updated the diff for D86515: [MLIR][SPIRVToLLVM] Added a hook for descriptor set / binding encoding.

Rebased on top of the SPIR-V module name patch to include the symbol name of the module into the new name of the global variable.

Tue, Aug 25, 9:09 PM · Restricted Project
georgemitenkov updated the diff for D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.

Addressed comments.

Tue, Aug 25, 8:38 PM · Restricted Project
georgemitenkov requested review of D86515: [MLIR][SPIRVToLLVM] Added a hook for descriptor set / binding encoding.
Tue, Aug 25, 3:10 AM · Restricted Project
georgemitenkov added inline comments to D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.
Tue, Aug 25, 2:27 AM · Restricted Project

Aug 22 2020

georgemitenkov committed rGb65ba7047998: [MLIR][SPIRVToLLVM] Updated the documentation for the conversion (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Updated the documentation for the conversion
Aug 22 2020, 12:28 AM
georgemitenkov closed D86288: [MLIR][SPIRVToLLVM] Updated the documentation for the conversion.
Aug 22 2020, 12:27 AM · Restricted Project

Aug 21 2020

georgemitenkov requested review of D86386: [MLIR][SPIRV] Added optional name to SPIR-V module.
Aug 21 2020, 4:11 PM · Restricted Project
georgemitenkov requested review of D86384: [MLIR][GPUToSPIRV] Passing gpu module name to SPIR-V module.
Aug 21 2020, 4:04 PM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Removed EncodeDescriptorSetsPass.

Aug 21 2020, 3:46 PM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Added missing file.

Aug 21 2020, 3:44 PM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

This is a big update to the pass structure. Now it is run after GPU to SPIR-V
conversion (and all ABI lowering, etc.). This allows to use SPIR-V module,
binds of global variables for kernel call emulation. Also, we can have multiple
kernels in the program (To fully run these the linking has to be updated).

Aug 21 2020, 3:42 PM · Restricted Project
georgemitenkov added inline comments to D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Aug 21 2020, 2:10 AM · Restricted Project
georgemitenkov updated the diff for D86288: [MLIR][SPIRVToLLVM] Updated the documentation for the conversion.

Addressed comments.

Aug 21 2020, 1:25 AM · Restricted Project

Aug 20 2020

georgemitenkov committed rGdc693a036de4: [MLIR][SPIRVToLLVM] Removed std to llvm patterns from the conversion (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Removed std to llvm patterns from the conversion
Aug 20 2020, 2:28 PM
georgemitenkov closed D86285: [MLIR][SPIRVToLLVM] Removed std to llvm patterns from the conversion.
Aug 20 2020, 2:28 PM · Restricted Project
georgemitenkov retitled D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM from [MLIR][mlir-spirv-runner] Passes for spirv-runner to [MLIR][mlir-spirv-cpu-runner] Passes for spirv-cpu-runner.
Aug 20 2020, 7:10 AM · Restricted Project
georgemitenkov requested review of D86288: [MLIR][SPIRVToLLVM] Updated the documentation for the conversion.
Aug 20 2020, 7:09 AM · Restricted Project
georgemitenkov updated the summary of D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Aug 20 2020, 7:00 AM · Restricted Project
georgemitenkov requested review of D86285: [MLIR][SPIRVToLLVM] Removed std to llvm patterns from the conversion.
Aug 20 2020, 5:56 AM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Added missing change.

Aug 20 2020, 5:21 AM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Added a utilty function for kernel global variable lookup.

Aug 20 2020, 5:19 AM · Restricted Project
georgemitenkov updated the diff for D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.

Combined 2 passes into 1.
Finding kernel module is the same for now (to be changed).

Aug 20 2020, 4:35 AM · Restricted Project
georgemitenkov retitled D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype from [MLIR][mlir-spirv-runner] A SPIR-V runner prototype to [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.
Aug 20 2020, 3:42 AM · Restricted Project
georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Renamed the runner to mlir-spirv-cpu-runner to resolve the ambiguity of where the runner is actually executed. Also, rebased on updated pass infrastructure.

Aug 20 2020, 3:41 AM · Restricted Project

Aug 19 2020

georgemitenkov added inline comments to D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Aug 19 2020, 8:59 AM · Restricted Project
georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Fixed an error on building SPIR-V runner.

Aug 19 2020, 6:37 AM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

FYI, I made a post on the forum so it is easier to discuss this.

Aug 19 2020, 4:05 AM · Restricted Project
georgemitenkov added inline comments to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.
Aug 19 2020, 1:15 AM · Restricted Project

Aug 18 2020

georgemitenkov committed rGcc98a0fbe465: [MLIR][SPIRVToLLVM] Additional conversions for spirv-runner (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Additional conversions for spirv-runner
Aug 18 2020, 9:10 AM
georgemitenkov closed D86109: [MLIR][SPIRVToLLVM] Additional conversions for spirv-runner.
Aug 18 2020, 9:10 AM · Restricted Project
georgemitenkov added inline comments to D86109: [MLIR][SPIRVToLLVM] Additional conversions for spirv-runner.
Aug 18 2020, 9:06 AM · Restricted Project
georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Moved the library to tests. Documented the else case for llvmModuleBuilder in ExecutionEngine.h.

Aug 18 2020, 6:36 AM · Restricted Project
georgemitenkov added inline comments to D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Aug 18 2020, 1:04 AM · Restricted Project
georgemitenkov updated the diff for D86109: [MLIR][SPIRVToLLVM] Additional conversions for spirv-runner.

Removed unnecessary utility and added a CHECK-NEXT in entry point tests.

Aug 18 2020, 12:09 AM · Restricted Project

Aug 17 2020

georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Fixed a typo.

Aug 17 2020, 3:34 PM · Restricted Project
georgemitenkov updated the diff for D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Splitted the patch.

Aug 17 2020, 3:18 PM · Restricted Project
georgemitenkov requested review of D86112: [MLIR][mlir-spirv-cpu-runner] A pass to emulate a call to kernel in LLVM.
Aug 17 2020, 2:51 PM · Restricted Project
georgemitenkov added a comment to D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.

Can you split this up? Seems like the passes could be split and reviewed separately from the runner code.

Aug 17 2020, 2:27 PM · Restricted Project
georgemitenkov requested review of D86109: [MLIR][SPIRVToLLVM] Additional conversions for spirv-runner.
Aug 17 2020, 2:23 PM · Restricted Project
georgemitenkov requested review of D86108: [MLIR][mlir-spirv-cpu-runner] A SPIR-V cpu runner prototype.
Aug 17 2020, 2:17 PM · Restricted Project

Aug 11 2020

georgemitenkov committed rG2ad7e1a301f8: [MLIR][SPIRVToLLVM] Conversion for global and addressof (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Conversion for global and addressof
Aug 11 2020, 11:45 PM
georgemitenkov closed D84626: [MLIR][SPIRVToLLVM] Conversion for global and addressof.
Aug 11 2020, 11:45 PM · Restricted Project

Aug 5 2020

georgemitenkov committed rG159806704b05: [MLIR][SPIRVToLLVM] Updated LLVM types in the documentation (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Updated LLVM types in the documentation
Aug 5 2020, 1:20 AM
georgemitenkov closed D85277: [MLIR][SPIRVToLLVM] Updated LLVM types in the documentation.
Aug 5 2020, 1:19 AM · Restricted Project
georgemitenkov committed rGe739648cfae2: [MLIR][SPIRVToLLVM] Conversion pattern for loop op (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Conversion pattern for loop op
Aug 5 2020, 12:36 AM
georgemitenkov closed D84245: [MLIR][SPIRVToLLVM] Conversion pattern for loop op.
Aug 5 2020, 12:36 AM · Restricted Project
georgemitenkov requested review of D85277: [MLIR][SPIRVToLLVM] Updated LLVM types in the documentation.
Aug 5 2020, 12:08 AM · Restricted Project

Aug 4 2020

georgemitenkov committed rG521c0b265907: [MLIR][SPIRVToLLVM] Updated documentation for SPIR-V to LLVM conversion (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Updated documentation for SPIR-V to LLVM conversion
Aug 4 2020, 11:40 PM
georgemitenkov closed D84734: [MLIR][SPIRVToLLVM] Updated documentation for SPIR-V to LLVM conversion.
Aug 4 2020, 11:40 PM · Restricted Project
georgemitenkov committed rGb9266f81bc0a: [MLIR][SPIRVToLLVM] Indentation and style fix in tests (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Indentation and style fix in tests
Aug 4 2020, 10:54 AM
georgemitenkov closed D85206: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.
Aug 4 2020, 10:54 AM · Restricted Project
georgemitenkov updated the summary of D85206: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.
Aug 4 2020, 6:21 AM · Restricted Project
georgemitenkov updated the diff for D85206: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.

Rebase

Aug 4 2020, 6:19 AM · Restricted Project
georgemitenkov added a comment to D85206: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.

Please be advised that I landed the diff that changes the LLVM dialect type syntax so this will need a rebase and a fair share of conflict resolution.

Aug 4 2020, 5:55 AM · Restricted Project
georgemitenkov updated the diff for D85206: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.

Added missing labels.

Aug 4 2020, 5:51 AM · Restricted Project
georgemitenkov requested review of D85206: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.
Aug 4 2020, 5:49 AM · Restricted Project
georgemitenkov committed rGf003b28363f9: [MLIR][SPIRVToLLVM] Indentation and style fix in tests (authored by georgemitenkov).
[MLIR][SPIRVToLLVM] Indentation and style fix in tests
Aug 4 2020, 4:32 AM
georgemitenkov closed D85181: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.
Aug 4 2020, 4:32 AM · Restricted Project
georgemitenkov updated the diff for D84626: [MLIR][SPIRVToLLVM] Conversion for global and addressof.

Put CHECK statements in one block.

Aug 4 2020, 2:43 AM · Restricted Project
georgemitenkov added inline comments to D84626: [MLIR][SPIRVToLLVM] Conversion for global and addressof.
Aug 4 2020, 2:42 AM · Restricted Project
georgemitenkov added inline comments to D84245: [MLIR][SPIRVToLLVM] Conversion pattern for loop op.
Aug 4 2020, 2:09 AM · Restricted Project
georgemitenkov updated the diff for D84245: [MLIR][SPIRVToLLVM] Conversion pattern for loop op.

Addressed comments:

  • Put check statements in one block
  • Added a diagram of the loop structure in LLVM
Aug 4 2020, 2:08 AM · Restricted Project
georgemitenkov updated the diff for D85181: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.

Fixed a typo

Aug 4 2020, 1:03 AM · Restricted Project
georgemitenkov requested review of D85181: [MLIR][SPIRVToLLVM] Indentation and style fix in tests.
Aug 4 2020, 12:57 AM · Restricted Project

Aug 3 2020

georgemitenkov added inline comments to D84661: [MLIR][SPIRVToLLVM] Conversion of GLSL ops to LLVM intrinsics.
Aug 3 2020, 1:09 PM · Restricted Project
georgemitenkov added inline comments to D84245: [MLIR][SPIRVToLLVM] Conversion pattern for loop op.
Aug 3 2020, 2:22 AM · Restricted Project
georgemitenkov updated the diff for D84245: [MLIR][SPIRVToLLVM] Conversion pattern for loop op.

Addressed comments

Aug 3 2020, 2:20 AM · Restricted Project
georgemitenkov updated the diff for D84626: [MLIR][SPIRVToLLVM] Conversion for global and addressof.

Fixed a typo and handled linkage properly.

Aug 3 2020, 12:51 AM · Restricted Project
georgemitenkov updated the diff for D84734: [MLIR][SPIRVToLLVM] Updated documentation for SPIR-V to LLVM conversion.

Addressed comments:

  • Fixed a typo
  • Changed linkage in globals accordingly
  • Rewrote section on variable op special case (when there is scoping)
Aug 3 2020, 12:21 AM · Restricted Project

Aug 2 2020

georgemitenkov committed rG91f6a5f7854a: [MLIR][SPIRV] Control attributes support for loop and selection (authored by georgemitenkov).
[MLIR][SPIRV] Control attributes support for loop and selection
Aug 2 2020, 11:58 PM