- 22 Jul, 2019 1 commit
-
-
Diego Caballero authored
-
- 20 Jul, 2019 2 commits
- 18 Jul, 2019 2 commits
-
-
nmostafa authored
-
Adam Procter authored
* WIP * All but two unit tests passing * Explanatory comment * Cleanup * A bit of cleanup stemming from review comments * Rewrite to use LoopNestBuilder * Remove unnecessary check from CompiledKernel * Removed some dead-ish code I missed * Switch to camelCase in lowerer.cpp * Fix assignment of resIndexHandles that was triggering an assert * Add in some safety checks * dyn_cast -> cast
-
- 17 Jul, 2019 3 commits
-
-
Diego Caballero authored
Aliasing prevents vectorization and other optimizations in LLVM (dot2d, for example). I found that LLVM dialect contemplates the possibility of previous dialects adding llvm.noalias attribute to function arguments so that the NoAlias attribute is generated in LLVM-IR. This should be good for now although we should discuss how to model this in Standard dialect and co.
-
Pruthvi authored
* - templatize computing binary elementwise - added lowering support for Add, Sub, Multiply, Divide * - Added Support for Greater and less Op * -Add support for Minimum and Maximum * use edsc::intrinsics::select instead of terenary operator * Addressed PR comments * - return after the conditional check
-
Nagy Mostafa authored
* Fix incorrect callback lookup * Use std.AllocOp(malloc) for static tensor allocations * Clean up * revert getCallDecl change * style
-
- 11 Jul, 2019 1 commit
-
-
Nagy Mostafa authored
* Support MLIR lowering of Relu * Use EDSC comparison * style-apply * Use .inc file for Conversion classes list * Disable i32 Relu for plaidml
-
- 02 Jul, 2019 1 commit
-
-
Diego Caballero authored
-
- 28 Jun, 2019 1 commit
-
-
Diego Caballero authored
Improvements and changes in dialect conversion APIs. Type conversion and op rewriting are now a bit more independent mechanisms. Dialect conversion now requires a target object with the legal transformations to be applied. Legality checks to detect illegal operations after dialect conversion have been strengthened significantly. MLIR LLVM commit: commit 82d5084cf28bca7a0eebec283cdeae118dfa1d11 (HEAD) Author: Jacques Pienaar <jpienaar@google.com> Date: Wed Jun 26 11:12:40 2019 -0700 Split out TranslateClParser and add new parse method that reuses SourceMgr. MLIR commit: commit 82d5084cf28bca7a0eebec283cdeae118dfa1d11 (HEAD) Author: Jacques Pienaar <jpienaar@google.com> Date: Wed Jun 26 11:12:40 2019 -0700 Split out TranslateClParser and add new parse method that reuses SourceMgr.
-
- 13 Jun, 2019 6 commits
- 10 Jun, 2019 1 commit
-
-
nmostafa authored
-
- 03 Jun, 2019 3 commits
-
-
nmostafa authored
-
Diego Caballero authored
Unused variables.
-
Diego Caballero authored
It refactor MLIR dump code in MLIRCompiler and adds missing dumps for some steps of the lowering. It also removes some redundant dump for affine dialect.
-
- 02 Jun, 2019 15 commits
-
-
Diego Caballero authored
-
Diego Caballero authored
Element type was not lowered.
-
Diego Caballero authored
It extends dot definition to be able to deal with operands that are not square tensors. It also fixes a bug in the lowerer related to that.
-
Diego Caballero authored
* [MLIR] Replace MatmulBiasOp with DotOp We disable CPUFusion if MLIR is enabled to avoid CPU specific ops to be introduced for now.
-
Nagy Mostafa authored
* Upgrade MLIR. Several code fixes based on API changes * Fixes due to DialectConv API changes * style-apply * PR fixes
-
Nagy Mostafa authored
* Move dialect and types to mlir namespace * PR fixes and some cleanup * Merge fix
-
Nagy Mostafa authored
* Enable module verification. Fix FakeInput result type to memref * style-apply
-
Nagy Mostafa authored
* Initial td file. Cmake changes * Move all ops to .td file. * Added few more opcodes to show-case. Fixed PR feedback * Remove NG_ prefix of opcode records. Some fixes * Added some doc * Adding back NG prefix * Bug fix in MLIR gen
-
Nagy Mostafa authored
-
Nagy Mostafa authored
* Use NGRAPH export macros instead of CPU * Move code to ngmlir namespace
-
Nagy Mostafa authored
* Move MLIR to src/contrib/mlir
-
Nagy Mostafa authored
* Create MLIR as cmake external project. Clone and build via ngraph cmake * Moved code and enabled compilation. Need to clone and build MLIR/LLVM during cmake step, so find_package can work * clone and build llvm/mlir during configuration. Compiles now. Needs more testing * Force DEX only if MLIR is ON * Remove extra cmake file. Style-apply * Remove redundant files in cpu/mlir * Update CODEOWNERS. Check for ninja and fail if not found * Fixing post merge issues
-
Nagy Mostafa authored
* Implements a simple memory manager that just does malloc for now. Pointers are freed during cleanup. * Enable JIT call-back to memory manager to allocate temps. * Memory manager pointer is passed to the JIT'ed code upon invocation. That makes the code re-entrant from different threads in case the code is shared among identical sub-graphs that are executed in parallel.
-
Diego Caballero authored
The following test should work now: NGRAPH_MLIR_DUMP_ALL=1 NGRAPH_MLIR=1 test/unit-test '--gtest_filter=CPU.dot2d'
-
Nagy Mostafa authored
* Link MLIR static libs to cpu backend * Use LLVMConfig.cmake * Initial commit. Link fails with undefined reference to typeinfo for mlir::Dialect * Added AddOp * initial compiler class * Initialize module/function, and map tensors to arguments * Code compiles. Moved MLIR building to correct DEX handler * NGDialect code-gen working * Use vector instead of sets for i/o tensors. Use functor in executor * Misc fixes * style-apply * WIP: Adding support for dialect lowering. * WIP: Lowered to affine. Crash on constant ops have side effects in Constant Folding * Fixed missing whole package linkage. * Removed fake instruction and update func type * Enable lowering to LLVM dialect and IR * Made loop nest builder handle any rank * Fixes per PR feedback. Major ones: - Removed ngdialect namespace - renamed dialect classes to start with NG prefixwq:w * Add unreachable assert * Add reading of LLVM options from an env var MLIR_LLVM_OPTIONS (#5)
-