1. 29 Sep, 2022 1 commit
  2. 06 Sep, 2022 1 commit
  3. 19 Aug, 2022 1 commit
  4. 06 Jul, 2022 1 commit
    • Paul Fultz II's avatar
      Verify load and save (#1265) · f2531606
      Paul Fultz II authored
      *In the verification tests, check that saving and reloading the program is the same program. This also fixes serialization to always load instructions in the same order. There is also fixes for deconv and quant_conv which didn't save the solution id, and was broken for serialization.
      f2531606
  5. 03 Jul, 2022 1 commit
    • Paul Fultz II's avatar
      Add mlir fusion (#1251) · ca8a54fe
      Paul Fultz II authored
      * Add mlir c api
      
      * Formatting
      
      * Create a type attribute
      
      * Formatting
      
      * Parse module
      
      * Formatting
      
      * Add mlir dump function
      
      * Add test case
      
      * Formatting
      
      * Fix tidy issues
      
      * Update mlit version
      
      * Update to newer mlir
      
      * Format
      
      * Move mlir to the gpu and update the test
      
      * Formatting
      
      * Fix bug when appending module
      
      * Format
      
      * Remove old cmake flag
      
      * Update message
      
      * Add return
      
      * Format
      
      * Add mlir_compile
      
      * Format
      
      * Register dialect
      
      * Handle unsinged integers
      
      * Dont provide output for return instruction
      
      * Format
      
      * Add code to insert memrefs
      
      * Format
      
      * Add mlir verification
      
      * Formatting
      
      * Enable pointwise_fusion
      
      * Disable eliminate_data_type
      
      * Set kernal name
      
      * Format
      
      * Fix device name
      
      * Formatting
      
      * Fix output arg
      
      * Format
      
      * Updates
      
      * Upate hash
      
      * Add fuse_mlir pass
      
      * Format
      
      * Add fuse mlir
      
      * Format
      
      * Update mlir
      
      * Sort parameter names
      
      * Format
      
      * Reenable disabled passes
      
      * Remove old mlir conv
      
      * Remove asym default padding
      
      * Add more verbose tracing
      
      * Format
      
      * Fix compilation errors
      
      * Format
      
      * Whitelist operators
      
      * Format
      
      * Add namespace
      
      * Format
      
      * Update triple
      
      * Format
      
      * Use func dialect
      
      * Format
      
      * Use func.return
      
      * Format
      
      * Upgrade mlir version
      
      * Add comment
      
      * Handle symetrical padding
      
      * Format
      
      * Cleanup debug output
      
      * Format
      
      * List failed tests
      
      * Move mlir compile to jit pipeline
      
      * Format
      
      * Update version
      
      * Add source locations
      
      * Format
      
      * Correctly add module
      
      * Format
      
      * Update failed tests
      
      * Fix failures when mlir is disabled
      
      * Format
      
      * Update mlir version
      
      * Check type for fp32
      
      * Format
      
      * Remove failed test
      
      * Update mlir in driver
      
      * Tidy fixes
      
      * Foramt
      
      * Tidy fixes
      
      * Format
      
      * Fix const
      
      * Remove from requirements
      
      * Fix cmake version
      
      * Fix tidy warning
      
      * Use another ifdef
      
      * Fix tidy
      
      * Other tidy fix
      
      * Format
      
      * Update hash
      
      * Add missing license files
      
      * Format
      
      * Format
      
      * Fix fnction name
      ca8a54fe
  6. 30 Jun, 2022 1 commit
  7. 29 Jun, 2022 1 commit
  8. 26 Jun, 2022 1 commit
  9. 22 Jun, 2022 1 commit
  10. 16 Jun, 2022 1 commit
  11. 10 Jun, 2022 1 commit
  12. 26 May, 2022 1 commit
  13. 11 Mar, 2022 1 commit
    • Shucai Xiao's avatar
      Improve print ins (#1096) · b3b44f5d
      Shucai Xiao authored
      The module::debug_print(ins) is very slow, which makes the trave_eval==1/2 very slow. The reason is printing an ins involves search the whole module to get the instruction, the print it.  This change is to fix that by calling module::print() to get names of all instructions of a program, then print the instruction by getting its name from a hash map.
      b3b44f5d
  14. 09 Dec, 2021 1 commit
  15. 19 Oct, 2021 1 commit
  16. 21 Sep, 2021 1 commit
  17. 16 Sep, 2021 1 commit
    • Shucai Xiao's avatar
      Loop operator (#853) · a275f590
      Shucai Xiao authored
      
      
      Add Loop operator for opset version 13.
      Notes: 1) Default max iteration number is 10 if no max iteration number is provided
      2) To change the max iter number, a user can set the max_loop_iterations in the onnx_option struct when parsing a model.
      3) The returned shape of the scan output is from the max_loop_iterations even the actual loop num is less than that. This issue also applies to other operators like NonZero and NonMaxSuppression. A issue #948 is created to track this and to be resolved later.
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      a275f590
  18. 25 Aug, 2021 1 commit
    • Shucai Xiao's avatar
      Exclude param from deadcode elimiation (#910) · 4b86a0aa
      Shucai Xiao authored
      
      
      * always keep parameters
      
      * clang format
      
      * fix tidy error
      
      * clang format
      
      * add more unit tests to have more code coverage
      
      * fixed a bug to ensure get_parameter_names to return ordered parameter names
      
      * clang format
      
      * remove unnecessary print out
      
      * refine a code change
      
      * clang format
      
      * add a unit test to check parameter is not removed by dead code elimination
      
      * clang format
      
      * rename a function name
      Co-authored-by: default avatarChris Austen <causten@users.noreply.github.com>
      4b86a0aa
  19. 08 Jul, 2021 1 commit
  20. 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
  21. 09 Jun, 2021 1 commit
  22. 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
  23. 07 May, 2021 1 commit
    • Paul Fultz II's avatar
      Update dead_code_elimination to remove unused modules (#820) · 43230d29
      Paul Fultz II authored
      * Update pass manager to get modules after every pass
      
      * Add program overload for module
      
      * Formatting
      
      * Hash modules for quicker lookup of modules
      
      * Bump file version
      
      * Add methods to remove modules
      
      * Formatting
      
      * Eliminate unused modules
      
      * Formatting
      
      * Fix test errors
      
      * Foramtting
      
      * Fix tidy issues
      43230d29
  24. 03 May, 2021 1 commit
  25. 22 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Cpu fusions using post_ops (#781) · f7befe50
      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
      
      * Add dnnl binary op
      
      * Formatting
      
      * Add binary and eltwise
      
      * Formatting
      
      * Add softmax
      
      * Formatting
      
      * Remove unused operators
      
      * Add missing files
      
      * Formatting
      
      * Add lrn
      
      * Formatting
      
      * Add deconvolution
      
      * Formatting
      
      * Change allocate default
      
      * Add reorder
      
      * Formatting
      
      * Add reductions
      
      * Formatting
      
      * Sort lines
      
      * Change literals in another loop
      
      * Add pow operator
      
      * Formatting
      
      * Add pow operator
      
      * Formatting
      
      * Make sure shapes are packed
      
      * Allow broadcasted inputs
      
      * Remove unused operators
      
      * Simplify functions
      
      * Remove softmax
      
      * Add sub and erf functions
      
      * Formatting
      
      * Fix bug
      
      * Formatting
      
      * Improve parallism
      
      * Formatting
      
      * Allow multiple batch dimensions
      
      * Formatting
      
      * Move literal transforms out of lowering
      
      * Formatting
      
      * Add gather operator
      
      * Sort lines
      
      * Add early exit for carry
      
      * Formatting
      
      * Add missing concat
      
      * Rename macro
      
      * Fix deep nesting
      
      * Formatting
      
      * Fix cppcheck issues
      
      * Remov else
      
      * Move attribute to typedef
      
      * Formatting
      
      * Disable maybe-uninitialized warning since its broken on gcc
      
      * Add constexpr default constructor
      
      * Formatting
      
      * Fix compiler warnings
      
      * Fix adjust_allocation test
      
      * Add layernorm matcher
      
      * Add gelu_erf matcher
      
      * Formatting
      
      * Add gelu_tanh matcher
      
      * Formatting
      
      * Remove match namespace
      
      * Formatting
      
      * Use matcher instead of string
      
      * Formatting
      
      * Add fusions
      
      * Formatting
      
      * Add post op field
      
      * Formatting
      
      * Make post_ops serializable
      
      * Formatting
      
      * Add eltwise fusions
      
      * Formatting
      
      * Fix null conversions
      
      * Formatting
      
      * Add fuse_ops source files
      
      * Formatting
      
      * Set binary post op index correctly
      
      * Formatting
      
      * Fix serialization bugs
      
      * Check if used once
      
      * Formatting
      
      * Fix error in get_primitive_attr
      
      * Formatting
      
      * Add compile function
      
      * Formatting
      
      * Limit fusions
      
      * Formatting
      
      * Disable with env variable instead of using compile arg
      
      * Formatting
      
      * Fix implicit conversion to bool
      
      * Declar on seperate lines
      
      * Formatting
      
      * Fix cppcheck issues
      
      * Fix ICE in pack_join
      
      * Formatting
      
      * Use const ref
      
      * Make enum hashable
      
      * Formatting
      
      * Add explicit this
      
      * Fix merge issues
      
      * Fix dangling ref
      
      * Formatting
      
      * Add test for compile
      
      * Formatting
      
      * Add more value tests
      
      * Formatting
      Co-authored-by: default avatarShucai Xiao <shucai@gmail.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      f7befe50
  26. 05 Apr, 2021 1 commit
    • Shucai Xiao's avatar
      Module build exec (#765) · 41c0487b
      Shucai Xiao authored
      
      
      * 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
      
      * rename variables
      
      * clang format
      
      * remove the unused compute_op function
      
      * clang format
      
      * add lowering of if operator and compute_op function
      
      * clang format
      
      * add parsing if operator in onnx file
      
      * clang format
      
      * fix clang tidy format
      
      * clang format
      
      * add the gpu implementation of the if operator
      
      * enhance the validate function and uncomment a unit test
      
      * clang format
      
      * remove unnecessary code
      
      * add sub_module processing in ref passes
      
      * clang format
      
      * 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
      
      * clang format
      
      * 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
      
      * clang format
      
      * fix cppcheck error
      
      * fix a cppcheck error
      
      * clang format
      
      * backup code
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * some code refinement
      
      * clang format
      
      * code backup to handle submodules in module compilation
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * fix a bug related to literal id
      
      * fix a bug in gpu execution
      
      * change the way of compiling a graph
      
      * clang format
      
      * backup more changes
      
      * clang format
      
      * refine pass log information
      
      * remove unnecessary code
      
      * clang format
      
      * temp changes backup
      
      * clang format
      
      * add module name prefix to scratch memory id in hip_memory_allocation
      
      * clang format
      
      * change to copy the cond input by inserting a copy instruction
      
      * clang format
      
      * change to use the if output argument as the submodule output so can remove a gpu_copy
      
      * clang format
      
      * consider submodule in some compile passes
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix issues related to scratch memory
      
      * clang format
      
      * remove unnecessary code
      
      * fix cppcheck error
      
      * clang format
      
      * reslove the implicit dependencies issue related to submodule
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * backup temp changes
      
      * clang format
      
      * fixed an bug in the has_instruction function
      
      * clang format
      
      * fix the return value of the gpu implementation of the if operator
      
      * fix a bug in the compute_shape function in the gpu implementation
      
      * add an if onnx unit test
      
      * clang format
      
      * add more unit tests
      
      * clang format
      
      * tmp code backup
      
      * clang format
      
      * fix a sync problem related to copy cond argument from gpu to cpu
      
      * clang format
      
      * change the compile offload copy flag setting
      
      * clang format
      
      * enable copy from cpu to be able to do synchronous copy
      
      * clang format
      
      * add more unit tests
      
      * add more unit tests
      
      * add more ref unit tests
      
      * clang format
      
      * fixed a bug error
      
      * tmp code backup
      
      * clang format
      
      * fixed an onnx verify unit test
      
      * add more unit tests
      
      * clang format
      
      * reverse a change
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * fix to print all instructions in program execution
      
      * clang format
      
      * fix bugs related to memory coloring and offload copy to be true
      
      * clang format
      
      * remove unnecessary include header file
      
      * sort test cases in ref_cpu_ops alphabetically
      
      * clang format
      
      * add a flag to disable cpu target in verification test
      
      * change the way to disable some tests
      
      * clang format
      
      * disable verify unit test of the if operators
      
      * add a function call to have more code coverage
      
      * fix a build error
      
      * fix review comments
      
      * fix review comments
      
      * clang format
      
      * add a api gpu unit test for more code coverage
      
      * clang format
      
      * change to use instruction.size() as node index
      
      * move the calc_implicit_deps function to module class as a member function
      
      * clang format
      
      * move the offload_copy flag setting to lowering
      
      * clang format
      
      * assign the module_eval lambda function to a variable to simplify code
      
      * clang format
      
      * move the compute function from ref/gpu implementation to the main if operator
      
      * clang format
      
      * fix cpp check error
      
      * add a unit test for more code coverage
      
      * clang format
      
      * add unit test to calculate implicit deps
      
      * add a python unit test
      
      * clang format
      
      * refine a unit test to have more code coverage
      
      * clang format
      
      * chang the way of wrap up arguments for sub modules
      
      * clang format
      
      * fix some build errors
      
      * code cleanup
      
      * refine unit tests to have more code coverage
      
      * clang format
      
      * refine unit test to have more code coverage
      
      * code backup
      
      * clang format
      
      * add memory coloring test
      
      * refine memory coloring unit test
      
      * clang format
      
      * remove an unnecessary line
      
      * remove an unused line
      
      * remove an unnecessary parameter in the lambda function
      
      * clang format
      
      * refine a unit test
      
      * remove an unnecessary line
      
      * refine unit tests to have more code coverage
      
      * clang format
      
      * combine two lines
      
      * add one more unit test for more code coverage
      
      * clang format
      
      * add one more unit test
      
      * clang format
      
      * fix review comments
      
      * refine a print out information
      
      * fix review comments
      
      * clang format
      
      * change the sync copy to using a gpu device sync
      
      * clang format
      
      * remove unnecessary code
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      41c0487b
  27. 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
  28. 25 Feb, 2021 1 commit
  29. 05 Feb, 2021 2 commits
  30. 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
  31. 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
  32. 30 Sep, 2020 1 commit
    • Paul Fultz II's avatar
      Add hip clang builds to jenkins (#651) · f28a62ea
      Paul Fultz II authored
      * Make global variables const
      
      * Tidy fixes
      
      * Disable some lints
      
      * Formatting
      
      * Fix tidy const
      
      * Formatting
      
      * Add missing const keywords
      
      * Formatting
      
      * More fixes
      
      * Fix remaining tidy issues
      
      * Formatting
      
      * Fix rocblas function call
      
      * Formatting
      
      * Fix nodiscard warnings
      
      * Formatting
      
      * Use named parameters
      
      * Remove overload
      
      * Add overload
      
      * Remove noncps
      
      * Use named param for node
      
      * Add auto register header
      
      * Use named parameters
      
      * Refactor jenkinsfile
      
      * Fix shadow
      
      * Add missing body variable
      
      * Add more const methods
      
      * Add hip-clang docker builds
      
      * Remove comments
      
      * Add clang-format
      
      * Add more const
      
      * Formatting
      
      * Rename stage
      
      * Disable check
      
      * Add another const
      
      * Add python 2 dev packages
      
      * Add sphinx to dockerfile
      f28a62ea
  33. 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
  34. 13 Aug, 2020 1 commit
    • Shucai Xiao's avatar
      integrate onnx backend test suit to migraphx (#574) · d612e976
      Shucai Xiao authored
      
      
      * initial progress
      
      * formatting
      
      * add pooling changes
      
      * formatting
      
      * change eliminate_pad
      
      * formatting
      
      * rename var
      
      * fomratting
      
      * update op shape test and compute
      
      * formatting
      
      * revert conv constructor
      
      * formatting
      
      * change initializer
      
      * formatting
      
      * fix tidy
      
      * change quant conv and shape check
      
      * add tests and fixes
      
      * formatting
      
      * fix type
      
      * fix conv test
      
      * formatting
      
      * add pooling and bn tests
      
      * formatting
      
      * add inconsistent attr tests
      
      * fix padding issue
      
      * formatting
      
      * progress on 1d to 2d
      
      * formatting
      
      * change compute and compile functions
      
      * formatting
      
      * fix duplicate
      
      * fix conflict
      
      * fix issue with 1d conv
      
      * formatting
      
      * add check for 3d limit
      
      * rename function
      
      * formatting
      
      * update to MIOPen 2.3
      
      * add support for nd pooling
      
      * formatting
      
      * test miopen 2.4
      
      * change function name
      
      * rename functions
      
      * formatting
      
      * add op_shape test
      
      * add gpu ops tests
      
      * formatting
      
      * initial progress
      
      * formatting
      
      * add pkg-config
      
      * add to support asymmetric padding of averagepool
      
      * clang format
      
      * fix bug for average pooling
      
      * clang format
      
      * fix a bug
      
      * add unit tests for the asymmetric padding of averagepool
      
      * clang format
      
      * change functions
      
      * formatting
      
      * additional code refinement
      
      * clang format
      
      * check existing tests
      
      * formatting
      
      * change to copy_backward
      
      * formatting
      
      * change for loop to transform
      
      * formatting
      
      * add tests
      
      * formatting
      
      * remove comment
      
      * add more tests
      
      * remove an optimization for pooling
      
      * clang format
      
      * add and fix unit tests
      
      * clang format
      
      * update gpu miopen calls
      
      * formatting
      
      * initial progress
      
      * add cpu impl and tests
      
      * formatting
      
      * add NOLINT
      
      * add 3d test
      
      * formatting
      
      * add more op_shape tests
      
      * test diff miopen version
      
      * add submodule onnx
      
      * add pooling shape tests
      
      * fix error msg
      
      * add onnx_test_backend
      
      * reorganize python code
      
      * temp disable test
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * code backup
      
      * add support device choice
      
      * refine onnx backend test
      
      * revert to miopen 2.4
      
      * fix review comments
      
      * fix review comments
      
      * clang format
      
      * fixed review comments
      
      * clang format
      
      * fix cppcheck error
      
      * copy onnx_backend_test to dest when building
      
      * add testdata folder
      
      * fix bounds
      
      * formatting
      
      * code backup
      
      * code backup
      
      * remove unnecessary file
      
      * fix various bugs
      
      * remove unnecessary changes
      
      * remove unnecessary submodule
      
      * remove unnecessary lines
      
      * fix algorithm
      
      * formatting
      
      * refine onnx backend unit tests
      
      * pin numpy version
      
      * fix build issue
      
      * fixed a filename to be copied
      
      * add the onnx dependency in docker image
      
      * ensure results are copied back correctly
      
      * specify onnx version
      
      * update excluded tests
      
      * remove unnecessary log info
      
      * turn on more unit tests
      
      * restrict onnx backend test to python 3.x
      
      * clang format
      
      * refine retrieving the input parameters
      
      * clang format
      
      * fix program input parameter names
      
      * clang format
      
      * avoid running onnx test in python 2.x
      
      * fix cppcheck error
      
      * fix python2.7 backend unit tests error
      
      * clang format
      
      * resolve the issue of ensure data copy to be completed
      
      * clang format
      
      * fix review comments
      
      * fix onnx backend unit test error
      
      * another change to make onnx backend test pass
      
      * clang format
      
      * fix onnx backend test error
      
      * clang format
      
      * disable onnx backend test to try
      
      * build try
      
      * update Dockerfile to try onnx backend test
      
      * remove unnecessary code
      
      * fix a bug in copying program
      
      * clang format
      
      * update dockerfile to include onnx
      
      * fix review comments
      
      * add the pytest module to the container
      
      * exclude real model to avoid to be downloaded
      
      * resolve the sync device for data copy from gpu to cpu
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * move sync_device after memory_coloring
      Co-authored-by: default avatarKhalique <15948690+kahmed10@users.noreply.github.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      d612e976
  35. 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
  36. 06 Mar, 2020 1 commit
    • Shucai Xiao's avatar
      Support multi program outputs (#436) · 5592b921
      Shucai Xiao 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
      
      * fixed a bug related to number of outputs
      
      * 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
      
      * code backup for support multiple outputs
      
      * clang format
      
      * change migraphx api to support multiple program outputs
      
      * clang format
      
      * change api implementation
      
      * clang format
      
      * clang format
      
      * fix a build error
      
      * additional changes
      
      * clang format
      
      * change api for correct automatic generation
      
      * clang format
      
      * fix unit test error
      
      * fix unit test error
      
      * fix unit tests error
      
      * support multiple program outputs
      
      * clang format
      
      * remove @ from the add_return name
      
      * Add nolint
      
      * Try fix formatting
      
      * Formatting
      
      * formatting
      
      * formatting
      
      * Fix formatting
      
      * code cleanup
      
      * clang format
      
      * fix cppcheck error
      
      * fix a cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * record graph output name
      
      * clang format
      
      * refine print the add_return instruction
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * refine the name of the add_return instruction
      
      * fixed a bug related to workspace
      
      * fixed two small bugs
      
      * clang format
      
      * add more unit tests for multiple program outputs
      
      * clang format
      
      * change an error info
      
      * clang format
      
      * fix cppcheck error
      
      * add unit test for better code coverage
      
      * change to reduce code change
      
      * clang format
      
      * remove storing program output
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      
      * clang format
      
      * remove unnecessary change
      
      * resolve an assert error
      
      * clang format
      
      * change the output name with prefix '#'
      
      * changes in quantization function to support the returns instructin
      
      * clang format
      
      * refine unit tests
      
      * clang format
      
      * refine profiling print out report
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarKhalique <15948690+kahmed10@users.noreply.github.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      5592b921
  37. 15 Feb, 2020 1 commit
    • Shucai Xiao's avatar
      Change api to multiple prog outputs (only API change) (#433) · 1b692d0f
      Shucai Xiao 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
      
      * change migraphx api to support multiple program outputs
      
      * clang format
      
      * change api implementation
      
      * clang format
      
      * fix a build error
      
      * change api for correct automatic generation
      
      * clang format
      
      * Add nolint
      
      * Try fix formatting
      
      * Formatting
      
      * formatting
      
      * formatting
      
      * Fix formatting
      
      * code cleanup
      
      * clang format
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      Co-authored-by: default avatarkahmed10 <15948690+kahmed10@users.noreply.github.com>
      1b692d0f
  38. 27 Nov, 2019 1 commit
    • Paul Fultz II's avatar
      Add support for builtin models in the driver (#404) · b0aef8c8
      Paul Fultz II authored
      * Add experimental support for c++ output
      
      * Format
      
      * Fix syntax errors
      
      * Add resnet50 model
      
      * Formatting
      
      * Add inceptionv3 model
      
      * Formatting
      
      * Add alexnet
      
      * Formatting
      
      * Fix name of pooling mode
      
      * Formatting
      
      * Fix tidy issues
      
      * Ignore driver directory
      
      * Show accetable values
      b0aef8c8
  39. 15 Nov, 2019 1 commit
    • Paul Fultz II's avatar
      Add option to do offload copying automatically (#403) · 81b0ff5d
      Paul Fultz II authored
      * Add compiler options
      
      * Add copy operators
      
      * Formatting
      
      * Use run_passes in tests
      
      * Formatting
      
      * Use run_pass in schedule test
      
      * Formatting
      
      * Add compile_options to get_passes in target
      
      * Formatting
      
      * Offload copy option
      
      * Formatting
      
      * Copy using pinned memory
      
      * Formatting
      
      * Improve performance of gpu copying
      
      * Formatting
      
      * Dont copy
      
      * Formatting
      
      * Always make an extra copy
      
      * Formatting
      
      * Remove unused write op
      
      * Add missing include
      
      * Remove copy_to_gpu function in python api
      
      * Make offload copy disabled by default on C++
      
      * Formatting
      
      * Fix tidy issues
      
      * Formatting
      
      * Fix namespace
      
      * Fix python tests
      
      * Turn clang format off since its broken
      
      * Fix compile error on gcc 5
      
      * Remove commented code
      81b0ff5d