• Pruthvi's avatar
    LSTM MKLDNN integration for ONNX LSTM op (#3327) · e5d606b8
    Pruthvi authored
    * - Add graph pass method for onnx lstmcell rewrite with lstm cpu op
    - insert reshapes to keep the weights in ldigo format
    - test case for onnx LstmCell to CPU Lstm
    
    * fix typo
    
    * - check LSTMCell for the fused op decomposistion in the backend
    
    * - fix bug in onnx_lstm graph pass
    - passes unit test
    
    * style-fix
    
    * - fix compilation error
    - use IFCO gate ordering for bias
    
    *  - Skip LSTMCell to LSTM CPU fusion for peephole
    
    * - add comment && remove duplicate function
    
    * -use dynamic_pointer_cast to check for constant
    
    * - onnx bias will be of shape (2 * gates_count * hidden_size) bias of Wb and Rb are concatenated, we will split the bias, add and rearrange in order IFCO
    
    * - Use most derived LSTM ctor for pattern matching
    
    * - Style Fix
    
    * style fix
    
    * Address PR comments
    
    * - add support for graph pass (MKLDNN version > 1) for mapping LSTMCell -> LSTM CPU op
    
    * fix unit test failure for MKLDNN V1.0
    e5d606b8
cpu_fusion.cpp 175 KB