1. 21 Aug, 2018 1 commit
  2. 14 Aug, 2018 1 commit
  3. 10 Aug, 2018 1 commit
  4. 30 Jun, 2018 1 commit
    • Pruthvi's avatar
      Pruthvi/fix rnn output (#1135) · c4c24cb0
      Pruthvi authored
      * - Fixed replace output for the multi layer recurrent cell state tensor output
      - Modified rnn add_output to consider direction and n_layer while calculating the output size for mkldnn dst_layer and dst_iter
      
      * fix unit test failure
      c4c24cb0
  5. 15 Jun, 2018 1 commit
    • Pruthvi's avatar
      RNN fusion across layers (#1085) · f75b8006
      Pruthvi authored
      * - Added graph pass for fusing RNN op across layer
      - Added test case for inter v/s cpu for verifying layer fused RNN
      - more sanity checks in the RNN fusion graph pass
      - added support to replace the recurrent cell state correctly in the fused RNN op
      
      * Fixed multi layer rnn fusion unit test failure
      
      * Addressed PR comments
      f75b8006
  6. 07 Jun, 2018 1 commit
    • Louis Feng's avatar
      ngraph-1676 batch dot fusion (#1071) · 6f5e3ac7
      Louis Feng authored
      * batch dot pattern wip.
      
      * batch dot pattern wip.
      
      * added batch dot op.
      
      * batch dot compute testing.
      
      * correct gemm parameters.
      
      * renaming matrix fusions passes and update tests.
      
      * clean up.
      
      * clang format.
      
      * more clean ups.
      
      * clang format.
      
      * added CPUBatchDotFusion to default cpu passes.
      
      * added missing header.
      
      * added element type check.
      6f5e3ac7
  7. 31 May, 2018 1 commit
  8. 23 May, 2018 1 commit
    • Pruthvi's avatar
      LSTM fusion + RNN fusion across time slice's for single layer (#826) · 1d08f073
      Pruthvi authored
      * - Added pattren matcher for LSTM cell
      
      * WIP added support to replace lstm cell instead of subgraph
      
      * WIP LSTM pattern matcher, fuses recurrent cells
      
      * WIP added RNN CPU op
      
      * WIP mkldnn emmiter code for fprop RNN
      
      * WIP RNN mkldnn integration
      - Added mkldnn kernel for uni directional LSTM in the CPU emitter
      
      * add a getter for root node
      
      * recurrent graph rewrite
      
      * fix perms, rename match_root -> get_match_root
      
      * fix comp errors
      
      * make match_root return the topmost match; fix tests
      
      * - WIP GetOutputElement for handling multiple LSTM o/ps
      - use RecurrentGraphRewrite for replacing node after matching LSTM cells
      
      * WIP LSTM multi Output + debug prints
      
      * moved LSTM fusion to cpu_fusion
      
      * WIP added RNN superfused OP
      
      * WIP towards RNN layer fusion
      
      * WIP multiple output slicing RNN
      
      * WIP RNN mulitple o/ps fusion across layer
      
      * WIP corrected input params for fused RNN OP
      
      * concat corrosponding param's across differnt LSTM to form inputs to RNN fused op
      
      * i) Added  test case for RNN kernel ii) runs without error's
      
      * refactored and moved LSTM class to standalone file
      
      * Rename RNN -> Rnn , LSTM -> Lstm
      
      * WIP replace lstm slices to the consumer op
      
      * Slicing works on multiple RNN layers
      
      * fixed all bugs
      
      * - Added CPU RNN Recurrent Fusion
      - Added CPU LSTM fusion
      - removed debug code
      - style fix
      
      * - Added support to compute src_iter and dst_iter instead of taking zero_memory_desc
      - Added unit test to compute one LSTM cell
      
      *  changed RNN op signature to accept number of states in basic unit of RNN(GRU/LSTM/ vanilla RNN) cell
      
      * added sanity checks for RNN op
      
      * Fixed issue related to patching the graph while replacing the RNN sliced outputs
      
      * Fixed issue to feed the input symbols in the order X0, X1, ...Xt to the RNN op
      
      * Added unit test for multi layer RNN fusion
      
      * Removed debug statements
      
      * Added mulitlayered serialized graph ii) fixed compilation issue
      
      * Addressed PR comments
      
      * i) WIP MKLDNN layout for RNN Op ii) added test case for INTERPRETER v/s CPU Rnn results
      
      * - Fixed bug w.r.to src_layer feature size in rnn mkldnn emitter code
      - Refactored cpu_fusion rnn test case
      
      * merge origin/master with branch pruthvi/lstm_fusion
      
      * style fix
      
      * Added test case for multiple RNN layers
      
      * i) make rnn as mkldnn op if it meets the constraints ii) assert if rnn is not mkldnn op
      
      * fix unit test failure
      
      * - Added support to reliabily identify the hiddent state and input symbols from the nodes collected by Pattern matcher
      - Fixed failing unit tests
      
      * style fix
      
      * - removed "node type" dependency to replace the intermediate LSTM outputs
      
      * Addressed PR comments
      
      * Fix unit test
      
      * - added MKLDNN emitter for LSTM op
      - graph pass to concat LSTM input recurrent state tensors
      - CPU layout assignment for LSTM Op
      - Fixed bug in rnn/lstm unit test's
      - made changes to use replace_output instead of replace_node for replacing matched graph nodes in LSTM/RNN fusion pass
      
      (cherry picked from commit d16fc709265cc0a73e60c6d5f6d2878e7b908aca)
      
      * style fix
      
      * Renamed passes and style fixes
      1d08f073
  9. 30 Mar, 2018 1 commit
  10. 09 Mar, 2018 1 commit
    • Pruthvi's avatar
      Pruthvi/sigmoid (#614) · 5885c09a
      Pruthvi authored
      * - Added sigmoid fusion pass
      - added mkldnn emitter code for sigmoid
      
      * - corrected sigmoid expected values
      - add layout assignment for sigmoid op
      
      * - added assert's in cpu fusion for sigmoid
      - style fix
      
      * remove debug prints
      
      * NGMX-371 #comment addressed PR comments - Added sigmoid unit test case with 3D input ii) support in cpu_emmiter for sigmoid to handle all input shapes
      
      * NGMX-371 #comment use shape_size() to calculate the 1d input size
      5885c09a
  11. 27 Feb, 2018 1 commit
  12. 22 Feb, 2018 1 commit
  13. 20 Feb, 2018 1 commit
  14. 14 Feb, 2018 1 commit
    • Pruthvi's avatar
      pattern matcher for BatchnormFprop + mkldnn integration in the CPU emitter (#468) · 34b1322d
      Pruthvi authored
      * fuse dot(a,b) + c
      
      cblas_gemm working on mlp
      
      rebase & small fixes
      
      enable debug output
      
      support replacing function's outputs
      
      * WIP pattern matching for variance
      
      * - Added pattern matcher graph to look up variance(sub graph) in bn
      - Added test case to verify the variance graph pattern
      
      * added batch norm mean pattern matcher.
      
      * remove reshapes
      
      (cherry picked from commit ecad321fb1b1bc3f7facda229beb940118ca0701)
      
      * fixed mean test to use Matcher.
      
      * resolve merge conflict in test/pattern.cpp
      
      * WIP bn fprop pattern
      
      * fprop bn fusion working
      
      * - Added unit test case to read the bn serializeed *.json file and run bn fprop fusion pass
      - Added batchnorm header file and defined the bn class to emit the mkldnn kernel
      - Added pattern matcher for fprop bn in CPU graph_rewrite pass
      
      * WIP MKLDNN fprop bn emitter code
      
      * completed fprop batchnorm kernel in CPU emitter
      
      * fixed bug in the emitter code for fprop bn
      
      * - Fixed copilation issues
      - unit tests are passing for bn emitter fprop code
      
      * Added support to compute fprop bn with mean annd variance as input
      
      * resolved compilation issues
      
      * refactored bn fprop code
      
      * - added batchnorm src file to the CMakeFilelist
      - moved bn fusion under CPU runtime/pass/cpu_fusion
      - fixed compilation issue
      
      * Resolved compilation issues in bn emitted code
      
      * Addded debug statements in fprop bn emitted code
      
      * added batchnorm.cpp src file
      
      * - Added test case to test fprop batchnorm with known tensor values
      - fixed bug related to defining weights in fprop bn
      
      * - Added test case for fprop batchnorm Op
      - Added test case for mean and variance pattern matcher
      - Added fprop bn *.json file with input having 4dmis mb2c3h2w2
      - refactored fprop bn op class
      
      * Style fix
      
      * - Removed Debug symbols
      
      * - Fixed header template with correct year
      - appended mkldnn.hpp in the CPU generated code
      
      *  Addressed PR review comments
       -  added support for batchnorm op in serializer and de-serializer
       - added more sanity in bn constructor
       - renamed "BatchnormFprop" -> BatchNorm
      
      * - Addressed PR review comments
      - replaced auto with speicfic mkldnn::type in emitted bn kernel
      - modified function signature to take 'eps' as double instead of <Node> type
      
      * added missing header files, resolved compilation issue
      
      * style fix
      
      * Addressed PR comments
      1. initilized member variables for bn in the same order as they are defined
      2. renamed bn member variables to start with m_* as per coding convention
      3. moved bn fusion test to test/cpu_fusion.cpp
      4. style fix
      5. added more checks to evaluate type and shape of inputs to bn
      
      * Added support for EMITDECL macro for batchnorm
      
      * - made correction to batchnorm src file name batchnorm -> batch_norm as per coding guidelines
      - corrected bn copy_with_new_args() method
      
      * Removed redundant SqrtOp support in serializer
      34b1322d
  15. 01 Feb, 2018 1 commit
  16. 17 Jan, 2018 1 commit
  17. 29 Dec, 2017 1 commit
    • Scott Cyphers's avatar
      Get value types out of public API, multi-values from Function (#340) · d092cb91
      Scott Cyphers authored
      * Function can have multiple results
      Remove external use of ValueType, TupleType, Tuple
      Remove many external uses of Output and Input
      
      * corresponding CPU backend changes
      
      * Update master changes.
      
      * Remove type arg from Function, add changes.md
      
      * Merge changes.
      
      * Move bodies to .cpp, add brief doc
      
      * Merge CPU changes.
      
      * Remove xla includes from non-xla files
      
      * Remove xla from tests
      
      * First part of xla tuple support
      
      * change fprop_cache to assume multi-output bprop functions
      
      * New wrappers for handling tuples with XLA
      
      * Review comments
      
      * remove old xla files
      
      * fix merge errors
      
      * hand edit models to use multi output instead of tuples
      d092cb91
  18. 28 Dec, 2017 1 commit
  19. 12 Dec, 2017 1 commit