1. 01 Jan, 2020 1 commit
  2. 29 Oct, 2019 1 commit
    • Nagy Mostafa's avatar
      [MLIR] MLIR Compiler refactoring (#3786) · f143bb13
      Nagy Mostafa authored
      * Re-organize files. Create MLIR backend classes
      
      * WIP
      
      * Refactored. Code compiles
      
      * Moved context to Runtime class to outlive compilation and execution
      
      * style-apply
      
      * Base Runtime class. Few other modifications
      
      * Minor fixes
      
      * Fixed Runtime::run() to take type-erased pointer
      
      * renamed core compiler
      
      * rename backend compiler
      
      * rename runtime compiler
      
      * PR feedback
      
      * Fix build fails
      f143bb13
  3. 28 Sep, 2019 1 commit
    • Diego Caballero's avatar
      [MLIR] Enable nGraph dialect in ngraph-opt (#3657) · 9db8f874
      Diego Caballero authored
      * [MLIR] Add support for parsing nGraph tensor type
      
      Initial commit that enables nGraph parsing. It's needed for testing.
      
      * [MLIR] Enable nGraph dialect in ngraph-opt
      
      This PR registers nGraph dialect in ngraph-opt and prepares
      nGraph lowering pass for LIT testing, fixing all the related issues.
      Among other things, lowering pass has to be turned into a function pass,
      dead argument in constructor was removed and `convert-ngraph-to-affine`
      flag was added.
      
      * Fix issue with function name and multiple functions
      
      * Extend module_function.mlir lit test
      
      * Improve module_function.mlir test
      
      Remove ngraph to affine dialect conversion since we just need to verify
      that we can parse and print modules and functions.
      Add verification for parsing the printed code.
      
      * [MLIR] Add support for parsing nGraph element types (#3665)
      
      * [MLIR] Add support for parsing nGraph element types
      
      It introduces initial support for parsing nGraph signed/unsigned
      integer and floating point data types.
      
      * Improve LIT tests
      
      Test parsing and printing of types separately from lowering to affine
      since these tests will evolve differently, particularly for tensor
      types.
      
      * Missed file
      
      I left this file behind in the previous commit
      9db8f874
  4. 30 Aug, 2019 1 commit
  5. 23 Aug, 2019 1 commit
    • Diego Caballero's avatar
      [mlir] Bump mlir repo 8/20/2019 (#3493) · 4fddf5ad
      Diego Caballero authored
      * [MLIR] Bump MLIR repo 8/20/2019
      
      MLIR_
      commit 0cdb20a6add19bc96c20dad28589a1e54e4d8469
      Author: Lei Zhang <antiagainst@google.com>
      Date:   Tue Aug 20 13:33:41 2019 -0700
      
          Add spv.specConstant and spv._reference_of
      
      LLVM:
      commit 3b9a27b6908040881dad394022f8c472c15c0784
      Author: Simon Pilgrim <llvm-dev@redking.me.uk>
      Date:   Tue Aug 20 17:54:37 2019 +0000
      
          Fix typo in comment. NFCI.
      
      * Address Bob's feedback
      4fddf5ad
  6. 10 Aug, 2019 1 commit
    • Diego Caballero's avatar
      [MLIR] Bump MLIR repo to commit c636f12, 08/09/2019 (#3422) · c101dcce
      Diego Caballero authored
      MLIR Commit:
      commit c636f127ee412ef7279ec0d550f42740824cd9ea
      Author: Alex Zinenko <zinenko@google.com>
      Date:   Fri Aug 9 08:59:45 2019 -0700
      
          LLVM dialect and translation: support global strings
      
      LLVM Commit:
      commit c636f127ee412ef7279ec0d550f42740824cd9ea
      Author: Alex Zinenko <zinenko@google.com>
      Date:   Fri Aug 9 08:59:45 2019 -0700
      
          LLVM dialect and translation: support global strings
      c101dcce
  7. 25 Jul, 2019 1 commit
    • Diego Caballero's avatar
      [MLIR] Fix naming convention in MLIR files (#3292) · a095c587
      Diego Caballero authored
      * [MLIR] Fix naming convention in MLIR files
      
      Add naming convention note per file to state which files should use
      nGraph naming convention and which MLIR naming convention and align
      naming convention in those files with such a note.
      
      * Remove m-prefix
      a095c587
  8. 28 Jun, 2019 1 commit
    • Diego Caballero's avatar
      [MLIR] Bump MLIR repo to commit 82d5084 Wed Jun 26. · 2ebe33f1
      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.
      2ebe33f1
  9. 10 Jun, 2019 1 commit
  10. 02 Jun, 2019 7 commits
    • Diego Caballero's avatar
      8cb95f71
    • Nagy Mostafa's avatar
      [MLIR] Move mlir related classes to MLIR namespace (#23) · 86bc31cc
      Nagy Mostafa authored
      * Move dialect and types to mlir namespace
      
      * PR fixes and some cleanup
      
      * Merge fix
      86bc31cc
    • Nagy Mostafa's avatar
      [MLIR] Move MLIR code into its own namespace. (#15) · e3c28fd2
      Nagy Mostafa authored
      * Use NGRAPH export macros instead of CPU
      
      * Move code to ngmlir namespace
      e3c28fd2
    • Nagy Mostafa's avatar
      [MLIR] Move MLIR to src/contrib/mlir (#16) · b19fa875
      Nagy Mostafa authored
      * Move MLIR to src/contrib/mlir
      b19fa875
    • Nagy Mostafa's avatar
      [MLIR] Move mlir code under runtime/mlir · d9dd03ce
      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
      d9dd03ce
    • Nagy Mostafa's avatar
      [MLIR] Mem manager (#9) · e941412e
      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.
      e941412e
    • Nagy Mostafa's avatar
      [MLIR] Initial PoC: NG dialect, dialect code-gen, dialect lowering to affine, no JIT yet · a5c99754
      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)
      a5c99754
  11. 03 Jan, 2019 1 commit
  12. 26 Oct, 2018 1 commit
    • gcwenger's avatar
      Reenabled Chris's nvcc building (#1903) · 4e08d9aa
      gcwenger authored
      * Reenabled Chris's nvcc building. Improved support for build paths and variations of cuda 8/9 + clang/gcc
      
      * Improved build messages based on feedback
      4e08d9aa
  13. 29 Aug, 2018 1 commit
  14. 16 Mar, 2018 1 commit
    • Sang Ik Lee's avatar
      Silee2/single repo (#646) · 41a4d55f
      Sang Ik Lee authored
      * Wrapped convolution, max_pool, replace_slice, slice
      
      * Friendly API for Ngraph++ Python bindings
      
      * code review
      
      * Update incorrect ngraph version used in README.md and add ngraph version
      in file ngraph_ref
      
      * Update ngraph-neon
      
      * Friendly API for Ngraph++ Python bindings
      
      * Flake8 style fix
      
      * Friendly API for Ngraph++ Python bindings
      
      * code review
      
      * Update setup.py.in to include ngraph_api.
      
      * Update ngraph-neon.
      
      * Create separate build scripts for python2 and python3.
      
      * Update ngraph-neon.
      
      *  Tox configuration
      
       * automatically create virtualenvs for Python 2 and Python 3
       * run unit tests using pytest
       * check that code style is compliant with PEP8 using Flake8
       * run static type checking using MyPy
      
       See README.md for usage information.
      
      * Unary Ops
      
      Includes:
      
      * abs
      * ceil
      * exp
      * floor
      * log
      * neg
      * sqrt
      
      * Added MaxPool test
      
      * Added Convolution op test
      
      * mv mnist to examples/
      
      * Enabled reverse op test
      
      * Review fixes
      
      * Review fixes pt.2
      
      * Update ngraph-neon.
      
      * Update setup.py.in
      
      * Update ngraph-neon.
      
      * Enable broadcasting
      
      * Enable div op
      
      * Enable mul op
      
      * Enable sub op
      
      * Enable add op
      
      * Fix style and types for tox
      
      * Review fixes
      
      * Add docstrings
      
      * Up to date with private-ngraph-cpp
      
      * Update ngraph_ref
      
      * Update ngraph-neon.
      
      * Helper function for Constant Node
      
      * Minimum and Maximum Ops
      
      * Add dtype param to ng.constant
      
      * add LICENSE and switch to Intel Copyright
      
      * Added conv brop ops
      
      * Fix pep8 warning in copyright
      
      * Added convolution test
      
      * Fixed copyright header
      
      * Additional style checks
      
      Includes:
      * Do not use mutable data structures for argument defaults.
      
      * Helper ng.equal
      
      * Update ngraph-neon.
      
      * Added convolution brop test
      
      * Fixed format
      
      * Add max pooling backprop.
      
      * Add missing change.
      
      * Fix style and add a Node method.
      
      * Update ngraph-neon.
      
      * Implicit casting of scalar values to Nodes in API helper functions
      
      * Implicit casting unit tests
      
      * Support for ngraph boolean type
      
      * Add AvgPool support. Test cases will be added later.
      
      * Update ngraph-neon.
      
      * Extend Node class to support binary operators
      
      * updating cpp master
      
      * Update ngraph_ref
      
      * Update ngraph-neon.
      
      * Extend Node class to support more binary operators
      
      * Bugfix for Constant op test
      
      * Fix for reversed operators
      
      * Enable tanh op
      
      * Flake8-Bugbear requires Python3
      
      * Fix for node with empty shape
      
      * Wrapping serialize function
      
      * Update setup.py.in
      
      * Update __init__.py
      
      * Fix import for static type checking.
      
      * Enable logical ops
      
      * Update ngraph-neon
      
      * Enable dot op.
      
      * Raise an error when user provided data that we currently don't support.
      
      * Change raised error type to more appropriate.
      
      * Fix: remove superfluous user input checking.
      
      Actually Dot function inside ngraph++ performs input validation. The error
      checking we want to do should be within ngraph_onnx interface.
      
      * Enable conv2d op
      
      * Added convolution test
      
      * Remove currently unused arguments.
      
      Dot can determine reduction axes inside ngraph++ for <= 2D cases.
      
      * Fix function signature type annotation.
      
      * Updated convolution test
      
      * Added argon backend
      
      * Update wrappers to match ngraph 8ad86ab9
      
      * Update ngraph-neon.
      
      * Update ngraph to d2d0196b
      
      * Update python binding.
      
      * Limit number of threads for parallel build.
      
      * Update python wrapper.
      
      * Update AvgPool constructor.
      
      * Update python wrapper.
      
      * Add Reshape op.
      
      * Better conv default parameters
      
      * Enable sum op
      
      * Add reshape operation documentation.
      
      * Review fix
      
      * Added gpu skip
      
      * API - Enable Pooling Ops (#55)
      
      * Enable AVG Pooling OP
      
      * Enable MAX Pooling OP
      
      * Review fix
      
      * Update python wrappers.
      
      * Fixing the default argument handling for serializer function
      
      * Update python wrapper.
      
      * API - Change default Runtime to CPU (#58)
      
      * Fix RuntimeError: function fails to compile
      
      * Change default Runtime to CPU
      
      * Fix for tox tests on CPU backend
      
      * API - Add serialize method to Computation class
      
      * Sync ngraph-cpp part 1
      
      * Sync ngraph-cpp remaining
      
      * Sync continued
      
      * Sync to ngraph-cpp part 3
      
      * Sync -- Changing test file
      
      * update ref spec
      
      * update cpp ref
      
      * Update setup.py.in and rename concatenate.cpp and concatenate.hpp to concat.cpp and concat.hpp
      
      * Add missing source file in setup.py.in
      
      * Wrap manager class for calling the reshape elimination pass
      
      * header file change
      
      * Rename pass to passes to avoid python keyword conflict
      
      * file rename
      
      * Add src file in setup.py
      
      * private-ngraph-cpp renamed to ngraph-cpp
      
      * API - Integrate Shape objects (#66)
      
      * Speedup for broadcasting in python_api
      
      * Wrap relu & relubackprop op
      
      * Type in setup.py
      
      * Wrap Max op
      
      * Wrap Product op
      
      * Wrap Allreduce op
      
      * Wrap FunctionCall op
      
      * include function header file
      
      * Wrap GetOutputElement op
      
      * Wrap Min op
      
      * Update ngraph cpp master
      
      * Wrap BatchNorm op
      
      * Wrap Softmax op
      
      * Fix in setup.py, batchnorm.cpp & softmax.cpp
      
      * Add __repr__ function to Shape objects.
      
      * updating commit hash in README
      
      * Downgrade python to python3.5
      
      * Correct implementation of __str__ and __repr__ wrappers for Shape object and their usage from Node and Parameter
      
      * Update wrapper
      
      * Update setup.py.in to match setup.py
      
      * Update ngraph-cpp to 89da71d3
      
      * Update wrapper.
      
      * Add sum, max, min and prod interfaces to ng++ Sum, Max, Min, Product respectively
      
      * Add unit test for max, min, sum, and prod operations.
      
      * Update README: ngraph-cpp repo has been renamed to ngraph
      
      * Change pybind11 as a source only CMake external project
      
      * Update python wrapper.
      
      * Move pybind11 download location and remove legacy setup.py
      
      * Update wrapper.
      
      * Change package name from pyngraph to ngraph
      
      * Remove python submodule.
      
      * Move .gitignore
      
      * Fix compilation issue after serializer api update.
      
      * Remove files accidentally added by last RP to wrapper repo.
      
      * Add missing packages to setup.py.in
      
      * Fix module path issue.
      
      * fix goe (jayaram)
      
      * Fix wrapper and ngraph_api tests
      
      * Add minimal documentation for the python wrappers.
      
      * Add test_reduction.py in ngraph_api
      
      * Update python nGraph doc.
      
      * Remove commented out code.
      
      * update README.md, delete ngraph_ref, fix tox
      
      * Revert "Add minimal documentation for the python wrappers."
      
      This reverts commit 2e61c698bd15f3b08dc096d4b1774d0cb52041ee.
      
      * Revert incorrect way of adding doc.
      
      * Revert incorrect way of adding doc.
      This reverts commit 2e61c698bd15f3b08dc096d4b1774d0cb52041ee.
      
      * Move conftest.py and fix in README
      
      * Add minimal docstring for python wrappers.
      
      * Format Wrapper cpp code
      41a4d55f
  15. 08 Feb, 2018 1 commit
  16. 26 Dec, 2017 1 commit
  17. 27 Oct, 2017 1 commit
  18. 06 Oct, 2017 1 commit
  19. 20 Sep, 2017 1 commit
  20. 19 Sep, 2017 1 commit
  21. 15 Sep, 2017 1 commit
  22. 02 Sep, 2017 1 commit
  23. 01 Sep, 2017 3 commits
  24. 31 Aug, 2017 2 commits
  25. 30 Aug, 2017 1 commit
  26. 28 Aug, 2017 3 commits
  27. 27 Aug, 2017 2 commits
  28. 26 Aug, 2017 1 commit