1. 22 Jul, 2021 1 commit
  2. 15 Jul, 2021 1 commit
    • turneram's avatar
      Quantize linear ops (#843) · 3282e01a
      turneram authored
      * Add operators, refactor parsers, add rewrite passes, add tests
      
      * Formatting
      
      * Fix cppcheck
      
      * Review comments
      
      * Formatting
      
      * Combine rewrite passes
      
      * Formatting
      
      * Add ref implementations
      
      * Formatting
      
      * Review comments
      
      * Formatting
      
      * Tidy warnings
      
      * Apply review comments
      
      * Formatting
      
      * Fix CI error
      
      * Formatting
      
      * Increase code coverage
      
      * Formatting
      
      * Move broadcasting of scales and zero points to onnx parser
      
      * Formatting
      
      * Allow for x and zero_point to have different types in quantizelinear; fix zero_point default type
      
      * Formatting
      
      * Increase code coverage
      
      * Formatting
      
      * Switch certain variables to int64_t
      
      * Formatting
      
      * Fix overflow in implicit constant conversion
      
      * Formatting
      
      * Increase code coverage
      
      * Formatting
      
      * Remove operators.hpp from includes in tf_test.cpp
      
      * Formatting
      
      * Add conversion for int32 input to quantizelinear and add test case; remove operators.hpp from onnx_test.cpp includes
      
      * Formatting
      
      * Switch dequantizelinear math from int32 to float
      
      * Formatting
      
      * Remove changes to operators.hpp
      
      * Simplify apply_quantizelinear
      
      * Formatting
      
      * Add verify test for int32 data
      
      * Add rewrite_quantization back to CMakeLists
      3282e01a
  3. 09 Jul, 2021 1 commit
  4. 08 Jul, 2021 1 commit
  5. 27 Jun, 2021 1 commit
    • Shucai Xiao's avatar
      Inline subgraph (#802) · bc52a8a8
      Shucai Xiao authored
      
      
      * Add definitions for all pointwise operators
      
      * Formatting
      
      * Add cpp generator class
      
      * Formatting
      
      * Move compilation to core
      
      * Formatting
      
      * Add clock to tmp name
      
      * Add dynamic loader
      
      * Formatting
      
      * Add tests for code gen
      
      * Formatting
      
      * Add test for literals
      
      * Formatting
      
      * Use with_char
      
      * Add missing header
      
      * Fix mismerge
      
      * Ignore tidy warning
      
      * Fxx gcc 5 errors
      
      * Apply fixits
      
      * Skip signed bitwise of status
      
      * Remove unused parameters
      
      * Explicitly add c++14 flag
      
      * Fix tidy warning
      
      * unify the compute function signature
      
      * clang format
      
      * make another change
      
      * unify the compute function
      
      * clang format
      
      * remove unnecessary code
      
      * more refinement about the operator compute funciton
      
      * clang format
      
      * add an overload function
      
      * clang format
      
      * add support for axes inputs for sequeeze/unsqueeze/reduce_sum
      
      * clang format
      
      * fix build problems
      
      * backup code changes
      
      * clang format
      
      * Add tuple type to shape class
      
      * Formatting
      
      * fix a bug in parsing quantizelinear operator
      
      * clang format
      
      * fix a cppcheck error
      
      * disable different versions of unit tests for different onnx version
      
      * clang format
      
      * upgrade onnx to 1.8
      
      * update onnx to 1.8.1
      
      * disable two more real models
      
      * clang format
      
      * Make data member private
      
      * Formatting
      
      * Add sub arguments
      
      * Formatting
      
      * Trun clang format off
      
      * Disable clang-format
      
      * fix review comments
      
      * fix the function of assign axes in parsing the squeeze operator
      
      * add unit tests and fix a bug
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix a build error
      
      * backup code changes
      
      * clang format
      
      * add more unit tests and add parsing opset version
      
      * clang format
      
      * Improve visiting tuples
      
      * Formatting
      
      * fix cppcheck error
      
      * adding installing the onnx package
      
      * resolve no protobuf compiler
      
      * add an inline subgraph pass
      
      * clang format
      
      * Add more argument tests
      
      * Formatting
      
      * Handle tuple in load
      
      * Formatting
      
      * code backup
      
      * clang format
      
      * Remove .o files
      
      * Add tuple type to api
      
      * Formatting
      
      * fix build errors
      
      * clang format
      
      * code backup
      
      * code backup
      
      * add unit tests for the inline subgraph
      
      * clang format
      
      * refine the inline subgraph and parse if operator
      
      * clang format
      
      * fix cppcheck issue
      
      * clang format
      
      * add unit test for inline subgraph pass
      
      * clang format
      
      * fix format issue
      
      * remove the context from the if operator
      
      * clang format
      
      * simplify the compute functions
      
      * Fix tidy warnings
      
      * fix cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * Fix tidy warnings
      
      * fix a cppcheck error
      
      * clang format
      
      * Add a test for share method
      
      * Formatting
      
      * Add a test cpp_type
      
      * add unit tests for more code coverage
      
      * clang format
      
      * add unit tests to have more code coverage
      
      * clang format
      
      * try a comment in jenkins build
      
      * include the install onnnx line
      
      * code backup
      
      * reorder the dependenciesd installed
      
      * refine dockerfile
      
      * fix review comments
      
      * clang format
      
      * remove unnecessary overload function
      
      * fix cppcheck error
      
      * change back the argument test
      
      * Suppress tidy warning
      
      * add the operator get_tuple_elem
      
      * clang format
      
      * add get_tuple_elem to operator include file
      
      * chang if to support multiple operation outputs
      
      * clang format
      
      * optimize inline subgraph
      
      * clang format
      
      * code backup
      
      * clang format
      
      * fix bug
      
      * refine unit tests for tuple output of the if operator
      
      * clang format
      
      * refine a instruction replacement code
      
      * add a unit test and sort all the unit tests alphabetically
      
      * fix cppcheck error
      
      * add more unit tests for multiple op outputs
      
      * clang format
      
      * fix cppcheck error
      
      * Update pass manager to get modules after every pass
      
      * more unit test to cover more scenarios
      
      * clang format
      
      * fixed a bug in a unit test
      
      * add more tests
      
      * clang format
      
      * add more unit tests to have more code coverage
      
      * fix a bug in a unit test
      
      * Add program overload for module
      
      * Formatting
      
      * Hash modules for quicker lookup of modules
      
      * Bump file version
      
      * Add methods to remove modules
      
      * Formatting
      
      * add the tuple type to the support list
      
      * Eliminate unused modules
      
      * Formatting
      
      * Fix test errors
      
      * Foramtting
      
      * Fix tidy issues
      
      * fix problem related to inline subgraph
      
      * clang format
      
      * fix review comments
      
      * fix review comments
      
      * fix review comments
      
      * fix review comments
      
      * clang format
      
      * fix a unit test
      
      * one more code change
      
      * remove an optimization related to the if operator
      
      * clang format
      
      * fix review comments
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      bc52a8a8
  6. 09 Jun, 2021 1 commit
    • kahmed10's avatar
      Asym pad refactor (#791) · 9a5e0c06
      kahmed10 authored
      
      
      * alternative impl
      
      * formatting
      
      * add gpu pass to insert pad
      
      * formatting
      
      * update onnx test, still need cleanup
      
      * formatting
      
      * update tf_test
      
      * modify existing tests
      
      * formatting
      
      * remove print
      
      * code cleanup
      
      * formatting
      
      * code cleanup
      
      * formatting
      
      * fix tidy and cppcheck
      
      * remove variable
      
      * add test
      
      * formatting
      
      * add test and address comments
      
      * formatting
      Co-authored-by: default avatarShucai Xiao <shucai@gmail.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      9a5e0c06
  7. 08 Jun, 2021 1 commit
    • Cagri Eryilmaz's avatar
      Reverse Op (#846) · 9c54fc4f
      Cagri Eryilmaz authored
      
      
      * init reverseOp branch: ref op + ref test. WIP
      
      * first passing basic test
      
      * cleanup
      
      * additional axis implementation
      
      * additional test
      
      * ref op implementation vec to int for axis
      
      * ref op test change for axis
      
      * initial gpu files and test
      
      * updates to implementation and test
      
      * fixed some issues
      
      * clang format
      
      * cleanup
      
      * formatting
      
      * removing comments
      
      * remove local size, back to default
      
      * update tests: replace with std functions
      
      * multiple axis for reverse op
      
      * fix a build error
      
      * clang format
      
      * more tests
      
      * fix a bug for the reverse device function
      
      * clang format
      
      * fix a bug
      
      * clang format
      
      * ref test updates, multiaxis
      
      * formatting
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      9c54fc4f
  8. 26 May, 2021 1 commit
    • Shucai Xiao's avatar
      Step op (#839) · 04065c64
      Shucai Xiao authored
      
      
      * add the operator step
      
      * clang formatJ
      
      * add unit tests
      
      * clang format
      
      * add more unit test for step op
      
      * clang format
      
      * add more unit tests
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * rename two unit tests
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      04065c64
  9. 24 May, 2021 1 commit
    • Paul Fultz II's avatar
      Compute dominators (#525) · 7ab06956
      Paul Fultz II authored
      
      
      * rename merge_from to merge_to
      
      * refine comments
      
      * code backup
      
      * clang format
      
      * The first version that can reduce scratch memory usage
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * fixed a bug related to removing gemm copy
      
      * clang format
      
      * code backup
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix unit test failure
      
      * code backup
      
      * clang format
      
      * code base for further investigation
      
      * code with both the forward and backward approach to compute the conflict table
      
      * clang format
      
      * clang format
      
      * backup changes
      
      * remove unnecessary file
      
      * remove unnecessary code
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format'
      
      * fix a bug in the code
      
      * clang format
      
      * code backup
      
      * clang format
      
      * remove unused code
      
      * remove unused code
      
      * rename some functions
      
      * remove print code
      
      * code backup
      
      * add dominator to scheduling
      
      * add dominator algorithm to remove unnecessary conflicts
      
      * Remove comment
      
      * Use erase_if instead
      
      * Formatting
      
      * Code clean up:
      
      * Formatting
      
      * Add dominator info class
      
      * Formatting
      
      * Add dom_info
      
      * Formatting
      
      * Add test case and fix some bugs
      
      * Formatting
      
      * Add unit test for scheduler
      
      * Formatting
      
      * Use index map instead of distance
      
      * Formatting
      
      * Add memory coloring test
      
      * Check for conflict in memory coloring
      
      * Formatting
      
      * Use 1 stream by default
      
      * Update to use modules
      
      * Formatting
      
      * Skip live on entry check
      
      * Formatting
      
      * Formatting
      
      * Fix tidy warning
      
      * Fix tidy warning
      
      * Formatting
      
      * Add nolint
      
      * Use C++17 to build everything when using clang
      
      * Remove input names
      
      * Formatting
      
      * Remove input names
      
      * Keep order of params
      
      * Formatting
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      7ab06956
  10. 27 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Add tuple type to shape (#800) · 66aa4cc8
      Paul Fultz II authored
      
      
      * Add definitions for all pointwise operators
      
      * Formatting
      
      * Add cpp generator class
      
      * Formatting
      
      * Move compilation to core
      
      * Formatting
      
      * Add clock to tmp name
      
      * Add dynamic loader
      
      * Formatting
      
      * Add tests for code gen
      
      * Formatting
      
      * Add test for literals
      
      * Formatting
      
      * Use with_char
      
      * Add missing header
      
      * Fix mismerge
      
      * Ignore tidy warning
      
      * Fxx gcc 5 errors
      
      * Apply fixits
      
      * Skip signed bitwise of status
      
      * Remove unused parameters
      
      * Explicitly add c++14 flag
      
      * Fix tidy warning
      
      * Add tuple type to shape class
      
      * Formatting
      
      * Make data member private
      
      * Formatting
      
      * Add sub arguments
      
      * Formatting
      
      * Trun clang format off
      
      * Disable clang-format
      
      * Improve visiting tuples
      
      * Formatting
      
      * Add more argument tests
      
      * Formatting
      
      * Handle tuple in load
      
      * Formatting
      
      * Remove .o files
      
      * Add tuple type to api
      
      * Formatting
      
      * Fix tidy warnings
      
      * Fix tidy warnings
      
      * Add a test for share method
      
      * Formatting
      
      * Add a test cpp_type
      
      * Suppress tidy warning
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      66aa4cc8
  11. 26 Apr, 2021 1 commit
    • turneram's avatar
      Prefix scan operator (#797) · e8ae23b1
      turneram authored
      
      
      * Add scan struct; add initial tests; initial algorithm by cases; refactor into one algorithm; clean up code
      
      * Rename; restructure; begin adding additional attributes
      
      * refactor to use shape_for_each; temporarily drop reverse mode
      
      * Add back reverse mode with shape_for_each_reverse; update tests; add axis bounds check
      
      * Begin adding to onnx parser
      
      * Add to onnx parser
      
      * Fix onnx test
      
      * Fix CI warnings
      
      * Update algorithm to use slice+par_for; update gen_onnx; remove .o files; remove redundant axis normalizing
      
      * Add exclusive mode
      
      * Add reverse mode
      
      * Remove .pyc file
      
      * Fix warning
      
      * Remove shape_for_each_reverse; clean up pointer usage for exclusive cases
      
      * Remove unused variable
      
      * Fix onnx test
      
      * Add test case to op_shape_test
      
      * Formatting
      
      * Formatting
      
      * Fix tidy warning
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Increase code coverage
      
      * Formatting
      
      * refine the script for creating the cumsum onnx file
      
      * Alphabetize includes for operators.hpp
      
      * Revise onnx test
      
      * Remove redundant bounds check
      
      * Formatting and style
      
      * Alphabetize tests
      
      * Remove duplicate tests from merge
      
      * Fix tidy warning for sub_test
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      e8ae23b1
  12. 19 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Add code generation for pointwise operators (#780) · 35d1bcc2
      Paul Fultz II authored
      * Add definitions for all pointwise operators
      
      * Formatting
      
      * Add cpp generator class
      
      * Formatting
      
      * Move compilation to core
      
      * Formatting
      
      * Add clock to tmp name
      
      * Add dynamic loader
      
      * Formatting
      
      * Add tests for code gen
      
      * Formatting
      
      * Add test for literals
      
      * Formatting
      
      * Use with_char
      
      * Add missing header
      
      * Fix mismerge
      
      * Ignore tidy warning
      
      * Fxx gcc 5 errors
      
      * Apply fixits
      
      * Skip signed bitwise of status
      
      * Remove unused parameters
      
      * Explicitly add c++14 flag
      
      * Fix tidy warning
      
      * Remove .o files
      35d1bcc2
  13. 13 Apr, 2021 1 commit
  14. 05 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Propagate data layout in the operators (#777) · abe4ec3e
      Paul Fultz II authored
      
      
      * Add method to compute shape with same layout
      
      * Formatting
      
      * Fix permutation with ambiguous layouts
      
      * Formatting
      
      * Propagate layout for pointwise operators
      
      * Formatting
      
      * Propagate layout for more operators
      
      * Formatting
      
      * Sort with lens
      
      * Formatting
      
      * Simplify permutation sorting
      
      * Formatting
      
      * Propagate layout for concat operator
      
      * Formatting
      
      * Use copy
      
      * Formatting
      
      * Remove header
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      abe4ec3e
  15. 17 Mar, 2021 1 commit
    • Shucai Xiao's avatar
      Module operations (#741) · e96d2b9a
      Shucai Xiao authored
      
      
      * code backup
      
      * clang format
      
      * code backup
      
      * change the print function to support print instruction from other modules
      
      * clang format
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * chang to make submodule to be owned by program instead of modules
      
      * clang format
      
      * add an unit test for copy of a program with sub_modules
      
      * clang format
      
      * remove the parent_module member variable from the module class
      
      * clang format
      
      * add unit test for serialization of program with submodules
      
      * clang format
      
      * Fix bug where instructions were not printed when doing TRACE_EVAL
      
      * clang storage of modules from map to list
      
      * clang format
      
      * Formatting
      
      * change the program assign function
      
      * clang format
      
      * code cleanup
      
      * clang format
      
      * backup code
      
      * clang format
      
      * remove unnecessary code
      
      * clang format
      
      * add module print function
      
      * code backup
      
      * refine the module::print function
      
      * refine the module:to_value() function
      
      * code backup
      
      * backup code changes
      
      * code backup
      
      * remove to_value and from_value function from the module class
      
      * rename a function
      
      * rename the if operator
      
      * refine the if operator
      
      * refine the print function of module and program
      
      * code backup
      
      * code backup
      
      * fix a build warning
      
      * fix overload of compute_shape function
      
      * code backup
      
      * fix unit test error
      
      * fix cppcheck error
      
      * fix the issue related to the overload of compute_shape
      
      * fix review comments
      
      * fix cppcheck error
      
      * change the return name of if_op to be if
      
      * clang format
      
      * fix two unit tests
      
      * clang format
      
      * remove the unused compute_op function
      
      * clang format
      
      * fix clang tidy format
      
      * clang format
      
      * enhance the validate function and uncomment a unit test
      
      * clang format
      
      * remove unnecessary code
      
      * clang format
      
      * fix a hang issue related to the valid function
      
      * fix an issue in replace_refs
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix cppcheck error
      
      * add a unit test for more code coverage
      
      * clang format
      
      * fix review comments and add test for more code coverage
      
      * clang format
      
      * fix cppcheck error
      
      * fix a cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      e96d2b9a
  16. 26 Feb, 2021 1 commit
  17. 08 Feb, 2021 1 commit
    • Paul Fultz II's avatar
      Add a pass to remove unsupported data types (#738) · 3d24a21c
      Paul Fultz II authored
      
      
      * Add eliminate_data_type pass
      
      * Formatting
      
      * Auto convert quant ops
      
      * Formatting
      
      * Flip the order of decompose
      
      * Compute max size differently
      
      * Formatting
      
      * Clamp values in convert
      
      * Formatting
      
      * Fix loss of precision in reduce
      
      * Formatting
      
      * Fix bugs in reduction
      
      * Fix accumulator type in reference softmax implementation
      
      * Formatting
      
      * Update convert test
      
      * Remove unused variables
      
      * Remove unnecessary quant_dot check
      
      * Formatting
      
      * Add tests
      
      * Formatting
      
      * Remove unused code
      
      * Remove duplicate ops
      
      * Remove blaze dependency
      
      * Use set since shape::type_t is no hashable on gcc 5
      
      * Formatting
      Co-authored-by: default avatarShucai Xiao <shucai@gmail.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      3d24a21c
  18. 05 Feb, 2021 1 commit
    • turneram's avatar
      Half v2plus (#731) · e4bc095e
      turneram authored
      
      
      * Added initial examples
      
      * Added python example from wiki
      
      * Edited readme
      
      * Added cpp interface files
      
      * Made changes to readmes
      
      * Added jupyter notebook for tf2 ex, added readme for tf1 ex
      
      * Added dockerfile
      
      * Re-structured driver example
      
      * Removed unnecessary files
      
      * Changed include path
      
      * Removed cpp_interface to rewrite
      
      * Added example of parsing, loading, saving with C++ API
      
      * Updated readme
      
      * Small code change, altered docker invocation, formatiing
      
      * Formatting
      
      * Added newline to end of dockerfile
      
      * Formatting
      
      * Formatting
      
      * Added C++ API inference example program
      
      * Formatting
      
      * Added README to cpp inference example
      
      * DeepCode suggested changed
      
      * DeepCode suggested change
      
      * Redesign python inference example
      
      * Address review comments
      
      * Address review comments
      
      * Address review comments
      
      * Added check for half version; conditionally ignore struct specialized for deprecated type
      
      * Moved new block after find_package(ROCM)
      
      * Rename HAVE_EXPR to HAVE_HALF_EXPR; relocated definitions
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      e4bc095e
  19. 19 Jan, 2021 1 commit
    • Shucai Xiao's avatar
      Logical ops (#718) · 4d46cbdb
      Shucai Xiao authored
      * add the and operator
      
      * clang format
      
      * add unit tests for the and operator
      
      * clang format
      
      * change the and name to logical_and and add the logical_or, logical_xor
      
      * clang format
      
      * add onnx unit tests for or and xor
      
      * add more unit tests
      4d46cbdb
  20. 06 Jan, 2021 1 commit
    • Shucai Xiao's avatar
      Module impl (#678) · c9b86f1c
      Shucai Xiao authored
      
      
      * add an api get_main_module
      
      * clang format
      
      * modify onnx unit test for module
      
      * clang format
      
      * refactor ops unit test with the get_main_module
      
      * clang format
      
      * code backup
      
      * clang format
      
      * refine module c api
      
      * add python api for module
      
      * clang format
      
      * fix a python api issue
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * refine unit tests changes
      
      * clang format
      
      * code backup
      
      * code backup
      
      * clang format
      
      * defer some changes to later PRs
      
      * change return of get_main_module from ref to pointer
      
      * clang format
      
      * add unit tests for the get_main_module_api
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * add more unit tests for more code change coverage
      
      * clang format
      
      * fixed a unit test error
      
      * clang format
      
      * fix unit test
      
      * clang format
      
      * code backup
      
      * code change for more code coverage
      
      * change program to module in various passes and matcher
      
      * clang format
      
      * modify the pass API
      
      * code backup
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * Add option to no generate a destroy method
      
      * Formatting
      
      * fix some review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * clang format
      
      * code backup
      
      * code backup
      
      * clang format
      
      * fix cppcheck errors
      
      * clang format
      
      * clang format
      
      * fix build errors
      
      * clang format
      
      * modify gpu unit tests to using module
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * Add flag to enable cpu backend
      
      * Make buffers shared
      
      * Enable optimizations
      
      * Formatting
      
      * fix review comments
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * fix a bug related to a unit test
      
      * clang format
      
      * clang format
      
      * fix a build error
      
      * remove unnecessary code
      
      * remove unnecessary files
      
      * code backup
      
      * clang format
      
      * remove the compile function from the module class
      
      * clang format
      
      * clang format
      
      * remove the context parameter from the from_value method of the module class
      
      * code refinement
      
      * clang format
      
      * merge changes from develop branch
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix a build error
      
      * fixed a merge error
      
      * fix cppcheck error
      
      * fixed review comments
      
      * clang format
      
      * fix cppcheck error
      
      * fix a cppcheck error
      
      * fix cppcheck error
      
      * fix build error caused by merge
      
      * Add missing has_op function
      
      * Formatting
      
      * merge changes from develop branch
      
      * fix a cppcheck error
      
      * fixed some review comments
      
      * clang format
      
      * remove the begin/end function of the program class
      
      * clang format
      
      * refine code and fix cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * add unit tests for more code coverage
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix a build error in debug mode
      
      * clang format
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      c9b86f1c
  21. 14 Dec, 2020 1 commit
    • Paul Fultz II's avatar
      Use dnnl for cpu backend (#688) · 406afeb8
      Paul Fultz II authored
      
      
      * Add flag to enable cpu backend
      
      * Make buffers shared
      
      * Enable optimizations
      
      * Add onednn
      
      * Formatting
      
      * Formatting
      
      * Add dnnl header
      
      * Formatting
      
      * Rewrite rnn first
      
      * Formatting
      
      * Call reference implementation
      
      * Formatting
      
      * Make literal data shared
      
      * Formatting
      
      * Add convolution
      
      * Formatting
      
      * Compensate for dilation
      
      * Formatting
      
      * Use name/make_op instead
      
      * Formatting
      
      * Rename gemm header
      
      * Formatting
      
      * Add dnnl convolution/gemm operators
      
      * Formatting
      
      * Add eliminate_contiguous
      
      * Add faster pointwise operators
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Add dnnl op class
      
      * Formatting
      
      * Add add op
      
      * Formatting
      
      * Add concat operator
      
      * Formatting
      
      * Add more ops
      
      * Create descriptor during finalization
      
      * Formatting
      
      * Dont rewrite pooling
      
      * Enable memory coloring
      
      * Formatting
      
      * Add output aliases
      
      * Formatting
      
      * Fix errors
      
      * Formatting
      
      * Convert literals
      
      * Add missing file
      
      * Remove batch_norm
      
      * Formatting
      
      * Use strides
      
      * Formatting
      
      * Add some debug checks
      
      * Formatting
      
      * Fix big in adjusting shape for gemm
      
      * Formatting
      
      * Fix fallback dot operator
      
      * Zero initialize buffers
      
      * Add suport for group convolutions
      
      * Formatting
      
      * Make adjust allocation target independent
      
      * Formatting
      
      * Enable adjust_allocation for gpu/cpu
      
      * Formatting
      
      * Add copy to allocation model
      
      * Formatting
      
      * Add copy operator
      
      * Formatting
      
      * Better handling of output parameters in adjust_allocation
      
      * Formatting
      
      * Build with dnnl
      
      * Make dnnl required
      
      * Fix compile error
      
      * Tidy fixes
      
      * Formatting
      
      * Tidy fixes
      
      * Formatting
      
      * Fix more tidy issues
      
      * Formatting
      
      * Add mul op
      
      * Add mul op
      
      * Set c compiler to clang as well
      
      * Compensate for normalized compute shape
      
      * Formatting
      
      * Fix cppcheck errors
      
      * Formatting
      
      * Add onednn library to hcc
      
      * Guard clang pragmas
      
      * Disable cpu mode for gcc for now
      
      * Leave it enabled it for gcc 7
      
      * Fix cppcheck suppresion
      
      * Fix compile error on gcc 5
      
      * Remove unused code
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      406afeb8
  22. 08 Dec, 2020 1 commit
    • Paul Fultz II's avatar
      Refactor to use make_op almost everywhere (#696) · 8d21fdc9
      Paul Fultz II authored
      * Load op when serializing
      
      * Formatting
      
      * Add missing clip field
      
      * Use make_op almost everywhere
      
      * Formatting
      
      * More make ops for rnns
      
      * Get rid of spaces
      
      * Formatting
      
      * Remove operators headers
      
      * Formatting
      
      * Remove unused op headers
      
      * Increase line threshold
      8d21fdc9
  23. 16 Nov, 2020 1 commit
    • Shucai Xiao's avatar
      Normalize ops (#667) · 8443ecd1
      Shucai Xiao authored
      
      
      * add a pass to normalize ops
      
      * clang format
      
      * add unit tests
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * add support for slice in the normalize_op function
      
      * clang format
      
      * add operation method api for whether we need to call normalize_op
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * rename a function namejJ
      
      * clang format
      
      * change compute_shape to normalize_compute_shape for corresponding operators
      
      * clang format
      
      * remove unnecessary code
      
      * fix various issues
      
      * clang format
      
      * add attributes to operators having axis attributes
      
      * clang format
      
      * fixed jenkins build error
      
      * clang format
      
      * fix a bug related to slice
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * rename a file
      
      * fix cppcheck error
      
      * some code refinement
      
      * clang format
      
      * change attributes to enum
      
      * clang format
      
      * refine the enum
      
      * clang format
      
      * remove unnecessary code
      
      * add unit tests for more code coverage and fixed a bug
      
      * clang format
      
      * remove unnecessary changes
      
      * change normalize_axes to normalize
      
      * clang format
      
      * revert back the changes in broadcast.hpp
      
      * rename normalize_axes to normalize
      
      * fix review comments
      
      * clang format
      
      * Add flag to enable cpu backend
      
      * Make buffers shared
      
      * Enable optimizations
      
      * Formatting
      
      * Try to avoid ambiguous assign in value class
      
      * fixed a build error
      
      * clang format
      
      * add the normalize_ops pass to the ref target
      
      * refactor program to module to normalize_ops pass
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      8443ecd1
  24. 10 Nov, 2020 1 commit
  25. 09 Nov, 2020 1 commit
    • Paul Fultz II's avatar
      Add hip compilation (#664) · f71af72a
      Paul Fultz II authored
      
      
      * Add compiler flags
      
      * Add missing include
      
      * Add filesystem header
      
      * Formatting
      
      * Add tmp_dir to run
      
      * Formatting
      
      * Kernel compilation and launching
      
      * Formatting
      
      * Seperate pack_args
      
      * Formatting
      
      * Add alignment tests
      
      * Formatting
      
      * Add compile test
      
      * Formatting
      
      * Complete compile test
      
      * Formatting
      
      * Use is_regular_file free function
      
      * Fix is_regular_file call
      
      * Fix tidy issues
      
      * Fix tidy
      
      * Fix tidy issue
      
      * Print size in read_buffer to debug issue on jenkins
      
      * Add hip flags before src file
      
      * Fix reading output files
      
      * Fix unsued variable warning
      
      * Formatting
      
      * Formatting
      
      * Disable tidy check
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      f71af72a
  26. 04 Nov, 2020 1 commit
    • Paul Fultz II's avatar
      Split cpu and reference implementation (#671) · 500d9441
      Paul Fultz II authored
      
      
      * Add all_targets cmake target
      
      * Rename target
      
      * Add ref target
      
      * Rename tests
      
      * Refactor compiler target
      
      * Formatting
      
      * Verify for every target
      
      * Formatting
      
      * Add verify test suite
      
      * Formatting
      
      * Add initial test programs
      
      * Formatting
      
      * Add rnn tests
      
      * Formatting
      
      * Validate gpu
      
      * Formatting
      
      * Remove old gpu tests
      
      * Fix gpu tests
      
      * Fix ref error
      
      * Fix tidy issues
      
      * Formatting
      
      * Tidy fixes
      
      * Fix header in python api
      
      * Rename to ref
      
      * Use ref in verify_onnx
      
      * Fix tidy issue
      
      * Build with verbose on
      
      * Fix typo
      
      * Remove verbose
      
      * rename some cpu prefix to ref
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      500d9441
  27. 19 Oct, 2020 1 commit
    • Shucai Xiao's avatar
      Op constructor c/python api (#636) · e939ddcd
      Shucai Xiao authored
      
      
      * code backup
      
      * clang format
      
      * add the python api for op construction
      
      * clang format
      
      * add converting a json string to a value and then pass to make_op
      
      * fix a build error
      
      * support kwargs decoder
      
      * clang format
      
      * code backup
      
      * clang format
      
      * temp code backup
      
      * clang format
      
      * temp code backup
      
      * convert input string to the json format
      
      * clang format
      
      * remove unnecessary code
      
      * fix review comments
      
      * clang format
      
      * add a comment
      
      * add unit tests
      
      * clang format
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      
      * rename two files
      
      * refine an error report
      
      * clang format
      
      * remove unnecessary code
      
      * fix a review comments
      
      * add convert_to_json unit tests
      
      * clang format
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * add more unit tests
      
      * clang format
      
      * fix clang tidy error
      
      * clang format
      
      * fixed an test failure
      
      * fix cppcheck error
      
      * fix a bug
      
      * fix cppcheck error
      
      * fix jenkins build error
      
      * fix a jenkin build error by wrap up string
      
      * clang format
      
      * another try
      
      * clang format
      
      * fix jenkins build error
      
      * clang format
      
      * remove unnecessary code
      
      * fix review comments
      
      * fix cppcheck error
      
      * fix review comments
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      e939ddcd
  28. 15 Oct, 2020 1 commit
    • turneram's avatar
      Added greater and less operators (#660) · 48ffbfa5
      turneram authored
      
      
      * Added greater and less operators
      
      * Fixed ops_test.cpp
      
      * Set commutative to false for less, greater
      
      * Refactored parse_equal/less/greater into parse_compare_op
      
      * Removed unnecessary function attributes() from greater.hpp/less.hpp
      
      * Added op_name arguments
      
      * Removed local settings
      
      * Formatting
      
      * Missing comma
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Missing space
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      48ffbfa5
  29. 09 Oct, 2020 1 commit
    • Paul Fultz II's avatar
      Add parallel stream analysis (#629) · 1d98fbb4
      Paul Fultz II authored
      * Add intial multi stream analysis
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Remove comment
      
      * Analyze streams on the gpu
      
      * Formatting
      
      * Fix nstream
      
      * Formatting
      
      * Add test for return
      
      * Formatting
      
      * Make sure return has a stream assignment
      
      * Formatting
      
      * Fix asserts and checks
      
      * Improve error message for out-of-order sequence
      
      * Formatting
      1d98fbb4
  30. 10 Sep, 2020 1 commit
    • Paul Fultz II's avatar
      Add load/save function for program (#623) · 63c5582a
      Paul Fultz II authored
      
      
      * Add save/load functions
      
      * Formatting
      
      * Add loading and saving to the driver
      
      * Formatting
      
      * Add return
      
      * Serialize the context with the program
      
      * Formatting
      
      * Add python API
      
      * Formatting
      
      * Add c/c++ apis
      
      * Formatting
      
      * Add tests
      
      * Formatting
      
      * Fix tidy error
      
      * Fix python doc
      
      * Restore python code
      
      * Add function name to errors
      
      * Formatting
      
      * Use lvalue for writing
      
      * Serialize context
      
      * Fix convolution and pooling operator for miopen
      
      * Formatting
      
      * Add const ref
      
      * Set target name to gpu
      
      * Add target tests
      
      * Formatting
      
      * Move register target to cpp file
      
      * Fix target test
      
      * Use make_target in driver
      
      * Formatting
      
      * Use make_target for the API
      
      * Formatting
      
      * Add cpu include
      
      * Increase timeout
      
      * Add more tests
      
      * Formatting
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      63c5582a
  31. 27 Aug, 2020 1 commit
    • Shucai Xiao's avatar
      Bool type and equal operator (#603) · 59b80d4e
      Shucai Xiao authored
      
      
      * add bool type
      
      * code backup
      
      * code backup
      
      * clang format
      
      * fix build warnings
      
      * clang format
      
      * add the equal operator
      
      * add the equal operator
      
      * clang format
      
      * remove unnecessary code
      
      * refine unit tests
      
      * clang format
      
      * fix review comments and a bug
      
      * clang format
      
      * additional changes
      
      * clang format
      
      * fix cppcheck error
      
      * add bool type in c api
      
      * fix cppcheck error
      
      * fix review comments
      
      * fix cppcheck error
      
      * fix a build error related to gcc
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * added the equal operator to register list
      
      * add parsing boolean type
      
      * clang format
      
      * fix bool type issue for python output
      
      * clang format
      
      * add support for automatic multibroadcast of the equal operator
      
      * additional unit tests for more code coverage
      
      * clang format
      
      * missing an onnx file
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      59b80d4e
  32. 26 Aug, 2020 1 commit
    • Paul Fultz II's avatar
      Add C++ ability to construct operators by name (#616) · 002eb4e2
      Paul Fultz II authored
      
      
      * Add make_op function
      
      * Formatting
      
      * Add more values
      
      * Formatting
      
      * Remove templates parse_conv functions
      
      * Formatting
      
      * Remove mat_mul template
      
      * Formatting
      
      * Reduce header includes
      
      * Fix compiling for gpu
      
      * Formatting
      
      * Use make_op in lowering
      
      * Formatting
      
      * Sort lines
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Fix tidy error
      
      * Formatting
      
      * Add const refs
      
      * Add explicit this
      
      * Add more const refs
      
      * Sort the program
      
      * Remove commented out code
      
      * Formatting
      
      * Infer gpu prefix
      
      * Formatting
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      002eb4e2
  33. 25 Aug, 2020 1 commit
    • Paul Fultz II's avatar
      Improve layernorm performance (#613) · 56b3bf58
      Paul Fultz II authored
      * Use increment instead of division to compute register offset
      
      * Formatting
      
      * Limit layernorm to 1024 elements
      
      * Formatting
      
      * Add verification to driver
      
      * Formatting
      
      * Remove early return
      
      * Use block_size 256
      
      * Vectorize the kernel
      
      * Formatting
      
      * Convert to vector type
      
      * Add layernorm tests
      
      * Formatting
      
      * Formatting
      
      * Refactor layernorm to run both algos
      
      * Formatting
      
      * Fix compile error
      
      * Fix tidy warnings
      
      * Formatting
      
      * Add layernorm function
      
      * Formatting
      56b3bf58
  34. 18 Aug, 2020 1 commit
    • Paul Fultz II's avatar
      Register all operators in migraphx (#604) · e8be8548
      Paul Fultz II authored
      * Register ops for main migraphx
      
      * Formatting
      
      * Register cpu ops
      
      * Formatting
      
      * Show list of operators in the driver
      
      * Formatting
      
      * Simplify regiter
      
      * Try to register gpu ops
      
      * Fix compiler errors
      
      * Register rest of the gpu operators
      
      * Add some tests
      
      * Formatting
      
      * Fix gcc compiler warnings
      
      * Formatting
      
      * Fix tidy warnings
      
      * Fix compile error
      
      * Use correct op name
      
      * Register layer norm
      
      * Use const ref
      
      * Make run const
      e8be8548
  35. 13 Aug, 2020 1 commit
  36. 12 Aug, 2020 1 commit
  37. 10 Aug, 2020 1 commit
    • Shucai Xiao's avatar
      Convert value to json (#592) · a5648d9c
      Shucai Xiao authored
      
      
      * Add initial serialization
      
      * Formatting
      
      * Add unit tests
      
      * Formatting
      
      * Add tests for serialization
      
      * Formatting
      
      * Use or not and
      
      * Add value test
      
      * Formatting
      
      * Add more tests
      
      * Add shape serialization
      
      * Formatting
      
      * Add serializtion for literal and argument
      
      * Formatting
      
      * Serialize empty types
      
      * Formatting
      
      * Tidy fixes
      
      * Formatting
      
      * Fix tidy issues
      
      * Formatting
      
      * Reformat value type macro
      
      * Formatting
      
      * Handle enum types
      
      * Formatting
      
      * Add float_equal
      
      * Fix tidy issue
      
      * Use declval for better sfinae
      
      * Formatting
      
      * backup code change
      
      * Fix maro name
      
      * Add more test cases to improve coverage
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Fix assertion
      
      * code backup
      
      * clang format
      
      * Fix bug with keyless assignment
      
      * Formatting
      
      * add implementation of converting json to migraphx::value
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * code refactor
      
      * add unit tests
      
      * separate json conversion from serialization
      
      * clang format
      
      * add the missing files
      
      * refine code
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * code backup
      
      * fix cppcheck error
      
      * refine an implementation
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments and add more unit tests
      
      * clang format
      
      * code backup to try
      
      * fix review comments and add more unit tests
      
      * clang format
      
      * some refinement
      
      * clang format
      
      * fix review comments
      
      * remove unnecessary code
      
      * add assignment of null
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      a5648d9c
  38. 29 Jul, 2020 1 commit
    • Paul Fultz II's avatar
      Add serialization framework (#577) · 9c3c3c5f
      Paul Fultz II authored
      
      
      * Add initial serialization
      
      * Formatting
      
      * Add unit tests
      
      * Formatting
      
      * Add tests for serialization
      
      * Formatting
      
      * Use or not and
      
      * Add value test
      
      * Formatting
      
      * Add more tests
      
      * Add shape serialization
      
      * Formatting
      
      * Add serializtion for literal and argument
      
      * Formatting
      
      * Serialize empty types
      
      * Formatting
      
      * Tidy fixes
      
      * Formatting
      
      * Fix tidy issues
      
      * Formatting
      
      * Reformat value type macro
      
      * Formatting
      
      * Handle enum types
      
      * Formatting
      
      * Add float_equal
      
      * Fix tidy issue
      
      * Use declval for better sfinae
      
      * Formatting
      
      * Fix maro name
      
      * Add more test cases to improve coverage
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Fix assertion
      
      * Fix bug with keyless assignment
      
      * Formatting
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      9c3c3c5f
  39. 08 May, 2020 1 commit
    • Paul Fultz II's avatar
      Horizontal fusions of gemms and convolutions (#472) · 1a4ff504
      Paul Fultz II authored
      
      
      * Add decompose pass
      
      * Add decompose test
      
      * Formatting
      
      * Add remap
      
      * Formatting
      
      * Add compute method for dot
      
      * Formatting
      
      * Add finder for horizontal fusion
      
      * Formatting
      
      * Formatting
      
      * Reuse predicate
      
      * Add gemm fusions
      
      * Formatting
      
      * Add some fixes for convolution
      
      * Formatting
      
      * Fix shape tests
      
      * Formatting
      
      * Reuse axis equal
      
      * Add initial split fusion
      
      * Formatting
      
      * Update offset
      
      * Workaround outputs that cant accept nonstandard shapes
      
      * Formatting
      
      * Add check for split concat
      
      * Formatting
      
      * Add missing headers
      
      * Formatting
      
      * Add tests
      
      * Formatting
      
      * Add more testing
      
      * Formatting
      
      * Fix when there is duplicate splits in inputs
      
      * Formatting
      
      * Fix mismatch iterators
      
      * Add tests for dot fusions
      
      * Formatting
      
      * Add test for convolution
      
      * Formatting
      
      * Fix tidy issues
      
      * Add more tests
      
      * Formatting
      
      * Ignore build directory for codecov
      
      * Add test for groups
      
      * Formatting
      
      * Add more tests for groups
      
      * Formatting
      
      * Add test for missing end slice
      
      * Add newline
      
      * Remove unused function
      
      * Add support for when beta is not 1
      
      * Formatting
      
      * Add test for scalar
      
      * Add one more scalar test
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      1a4ff504
  40. 07 Feb, 2020 1 commit
    • Paul Fultz II's avatar
      Add C and C++ api (#430) · b949da7f
      Paul Fultz II authored
      
      
      * Add initial api
      
      * Formatting
      
      * Add more api
      
      * Formatting
      
      * Add auto api generation
      
      * Formatting
      
      * Fix some compilation errors
      
      * Change handle struct
      
      * Formatting
      
      * Fix reamining compilation errors
      
      * Formatting
      
      * Simplify using ctype
      
      * Formatting
      
      * Initial c++ generation
      
      * Formatting
      
      * Add C++header
      
      * Formatting
      
      * Add test
      
      * Formatting
      
      * Add initial tests
      
      * Formatting
      
      * Try to fix formatting
      
      * Cleanup formatting
      
      * Formatting
      
      * Fix constructors on the same line
      
      * Fix tests
      
      * Formatting
      
      * Fix tidy issues
      
      * Fix tidy issues
      
      * Fix naming issue
      
      * Add onnx API to parse buffer
      
      * Formatting
      
      * Add arguments api
      
      * Formatting
      
      * Fix verify parameters
      
      * Fix cppcheck issues
      
      * Formatting
      
      * Add method to get output shapes and bytes
      
      * Formatting
      
      * Try formatting
      
      * Formatting
      
      * Improve the test coverage
      
      * Formatting
      
      * Add print method
      
      * Formatting
      
      * Fix cppcheck issue
      
      * Fix package dependency
      
      * Add nolint
      
      * Try fix formatting
      
      * Formatting
      
      * formatting
      
      * formatting
      
      * Fix formatting
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarkahmed10 <15948690+kahmed10@users.noreply.github.com>
      b949da7f