1. 02 Jun, 2019 8 commits
    • Nagy Mostafa's avatar
      [MLIR] Move MLIR to src/contrib/mlir (#16) · b19fa875
      Nagy Mostafa authored
      * Move MLIR to src/contrib/mlir
      b19fa875
    • Diego Caballero's avatar
      [MLIR] Enable LLVM optimizations in execution engine. (#10) · ac8df2bb
      Diego Caballero authored
      This patch enables LLVM optimizations at -O3 level.
      ac8df2bb
    • Diego Caballero's avatar
      [MLIR] Rename LoopKernel->ComputedKernel. Move it to experimental core ops (#12) · 978691b4
      Diego Caballero authored
      We want to use ComputedKernel for any target to delimit sub-graphs to be
      compiled and executed with MLIR.
      978691b4
    • 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
    • Diego Caballero's avatar
      [MLIR] Add MatmulBias op with basic support for simple matmuls (#8) · ba735a80
      Diego Caballero authored
      The following test should work now:
      NGRAPH_MLIR_DUMP_ALL=1 NGRAPH_MLIR=1 test/unit-test '--gtest_filter=CPU.dot2d'
      ba735a80
    • Diego Caballero's avatar
      dd5c6fb6
    • 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
  2. 31 May, 2019 6 commits
    • Nagy Mostafa's avatar
      [MLIR] Link MLIR static libs to cpu backend · 021399a1
      Nagy Mostafa authored
      * Link MLIR static libs to cpu backend
      
      * Use LLVMConfig.cmake
      021399a1
    • Robert Kimball's avatar
      Bob/hybrid multi (#3005) · e49dd589
      Robert Kimball authored
      * handle case where a node's output is connected multiple inputs of another node
      
      * fix creation of the FunctionCall to have the correct outputs
      
      * fix per review comment
      e49dd589
    • Sang Ik Lee's avatar
      Cleanup how compile flags are set and used by nGraph and external projects. (#2942) · 08dcd01b
      Sang Ik Lee authored
      * Cleanup how compile flags set and used by nGraph and external projects.
      Set C++11 through CMake and pass it down to external projects.
      Prefer CMake variables such as CMAKE_POSITION_INDEPENDENT_CODE and
      CMAKE_CXX_STANDARD instead of explicitly setting compiler dependent
      flags.
      Create json compilation database for external projects.
      CMAKE_CXX_FLAGS is used as common global options for nGraph and external
      projects.
      add_compile_options() is used for local options for current and sub
      directories.
      add_definitions() is used for setting definitions for current and sub
      directories.
      Note: Global options are not passed down to some external projects.
      Note: mkl-dnn resets CMAKE_CXX_FLAGS internally.
      Note: TBB and MLSL are not CMake based.
      Noet: Eigen and json is header only library.
      
      * Fix error.
      
      * Fix error. (second attempt)
      
      * Cleanup code.
      
      * Allow check for undefined macro.
      
      * Try to fix cldnn issue.
      
      * Set type for CMake arguments.
      
      * Pass C++ standard to protobuf.
      
      * Pass C++ standard down to TBB.
      
      * Change how Clang specific flags are handled.
      
      * Fix error.
      
      * Workaround for compile error on Baidu's PDPD docker.
      
      * Fix windows build error.
      08dcd01b
    • Chris Sullivan's avatar
      b520e839
    • Rob Earhart's avatar
      e3330b47
    • Sang Ik Lee's avatar
      Remove unused .gitmodule (#2997) · e4c5aa8f
      Sang Ik Lee authored
      e4c5aa8f
  3. 30 May, 2019 2 commits
  4. 29 May, 2019 7 commits
    • Adam Rogowiec's avatar
      [Fused] FakeQuantize operation. (#2928) · 36422810
      Adam Rogowiec authored
      * Draft of FakeQuantize operation along with UTs.
      
      * Add FakeQuantize to implemented operators on IGPU.
      
      * Get back FakeQuantize op case to switch.
      
      * Fix compilation errors.
      
      * Skip test for INTERPRETER backend and disable type_prop tests.
      
      * Initial implementation covering the most basic case
      
      * Cleanup of fake_quantize_with_clip UT
      
      * Reformat the cpu unit tests manifest and unlock anothe fake quant UT
      
      * Handle the clipping case by subtracting input_low from quantization input
      
      * Clip the input data before quantization to avoid Selects
      
      * UT manifest fix
      
      * Obsolete comment removed
      
      * Code formatting
      
      * Broadcast input data for non-scalar in/out params
      
      * Code formatting
      
      * Enable the type prop tests for FakeQuantize
      
      * Dequant the data without using the Dequantize op (fixes an edge case)
      36422810
    • Ilya Churaev's avatar
    • Adam Rogowiec's avatar
      Move reshape functions from utils to builder. (#2984) · db34286c
      Adam Rogowiec authored
      * Move reshape from utils to builder.
      
      * Add aliases to functions in old place and describe changes.
      db34286c
    • gcwenger's avatar
      c06bf6e1
    • Robert Kimball's avatar
      fix broken doc strings (#2981) · 445c8158
      Robert Kimball authored
      445c8158
    • Tomasz Dołbniak's avatar
      [FusedOps] ShuffleChannels (#2927) · 1fdf14ae
      Tomasz Dołbniak authored
      * ShuffleChannels implementation
      
      * Validation of ShuffleChannels params
      
      * Implementation of ShuffleChannels decompose_op()
      
      * Formatting adjustments
      
      * Corrected implementation and validation of op params
      
      * Basic test of ShuffleChannels
      
      * Negative axis value test
      
      * Default params for the ShuffleChannels op
      
      * ShuffleChannels test with floats
      
      * ShuffleChannels validation unit tests
      
      * PR comments
      
      * Compilation error fix
      
      * PR feedback and cleanup
      
      * Code formatting adjustment
      
      * Negative axis value documentation
      
      * Docs update (PR feedback)
      
      * PR feedback: shape and axis validation
      
      * Modify axis semantics on shuffle op
      
      * Revert "PR feedback: shape and axis validation"
      
      This reverts commit 21b708e710b91da2a7e37a69c0da1f31c7743b47.
      1fdf14ae
    • Dmitry Yershov's avatar
      Switch to clDNN version with conformance fix for 3 ONNX models (DenseNet-121,… · 7d4bdab7
      Dmitry Yershov authored
      Switch to clDNN version with conformance fix for 3 ONNX models (DenseNet-121, Inception-v2, ResNet-50) (#2982)
      
      7d4bdab7
  5. 28 May, 2019 2 commits
  6. 25 May, 2019 1 commit
  7. 24 May, 2019 10 commits
  8. 23 May, 2019 4 commits