• 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
Name
Last commit
Last update
..
autodiff Loading commit data...
builder Loading commit data...
codegen Loading commit data...
descriptor Loading commit data...
ops Loading commit data...
pass Loading commit data...
pattern Loading commit data...
runtime Loading commit data...
types Loading commit data...
CMakeLists.txt Loading commit data...
common.cpp Loading commit data...
common.hpp Loading commit data...
coordinate_transform.cpp Loading commit data...
coordinate_transform.hpp Loading commit data...
except.hpp Loading commit data...
file_util.cpp Loading commit data...
file_util.hpp Loading commit data...
function.cpp Loading commit data...
function.hpp Loading commit data...
graph_util.cpp Loading commit data...
graph_util.hpp Loading commit data...
json.hpp Loading commit data...
log.cpp Loading commit data...
log.hpp Loading commit data...
ngraph.hpp Loading commit data...
node.cpp Loading commit data...
node.hpp Loading commit data...
serializer.cpp Loading commit data...
serializer.hpp Loading commit data...
shape.cpp Loading commit data...
shape.hpp Loading commit data...
util.cpp Loading commit data...
util.hpp Loading commit data...
uuid.hpp Loading commit data...