1. 25 Jul, 2022 1 commit
    • Ted Themistokleous's avatar
      Add onnx mod operator (#1302) · 77e80b8e
      Ted Themistokleous authored
      * Add in changes for onnx Mod operator
      
      Initial operator for mod implementation and test cases for integer and floating based types.
      
      Need to use fmod from stdlib for floating point types. half_float::half thankfully is specced to the use the existing std::fmod() call when looking at the half.hpp implementation.
      
      fmod_flag should mirror the onnx fmod attribute. Right now using a floating point type without setting that on the user side to true will result in an exception.
      
      Ref ticket #1283 
      77e80b8e
  2. 22 Jun, 2022 1 commit
  3. 29 Apr, 2022 1 commit
  4. 11 Apr, 2022 1 commit
    • bpickrel's avatar
      scatter operator refactoring to include reduction (#1124) · 701c2014
      bpickrel authored
      Change the "scatter" struct and op to a base/child set of three: scatter_none, scatter_add, scatter_mul to mirror Onnx' ScatterElements op. and its three reduction options. (Onnx Scatter op is deprecated and is equivalent to scatter_none.)
      
      Provides both a reference op. and update to Onnx parsing. Tests updated and new test case added.
      701c2014
  5. 03 Mar, 2022 1 commit
  6. 02 Mar, 2022 1 commit
  7. 28 Oct, 2021 1 commit
  8. 20 Oct, 2021 1 commit
    • Shucai Xiao's avatar
      Roialign (#952) · d7653732
      Shucai Xiao authored
      Implementation of the roialign operator. For now, we have only the ref implementation. When we run a model on the GPU, we fall back the execution to use the ref implementation.
      d7653732
  9. 08 Oct, 2021 1 commit
  10. 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
  11. 02 Sep, 2021 2 commits
  12. 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
  13. 25 Jun, 2021 1 commit
  14. 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
  15. 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
  16. 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
  17. 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
  18. 26 Feb, 2021 1 commit
  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. 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
  21. 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
  22. 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
  23. 20 May, 2020 1 commit
    • Shucai Xiao's avatar
      Rnn variable seq lengths (#517) · 90200619
      Shucai Xiao authored
      
      
      * code backup
      
      * clang format
      
      * fix compiling errors
      
      * clang format
      
      * rename a few files
      
      * rename a few files
      
      * fix variable bugs
      
      * clang format
      
      * add an operator to shift input sequences
      
      * clang format
      
      * fixed a bug
      
      * clang format
      
      * fixed a bug
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * refine code related lstm operator optimization
      
      * clang format
      
      * fix various bugs
      
      * clang format
      
      * fixed a bug in rewrite_lstm
      
      * clang format
      
      * fixed another bug
      
      * refine two operator names
      
      * clang format
      
      * refine file names
      
      * fix cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * fixed review comments
      
      * clang format
      
      * add unit tests
      
      * clang format
      
      * add unit tests
      
      * clang format
      
      * refine unit tests for better coverage
      
      * clang format
      
      * fixed a bug
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      
      * rename two operators according to review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments
      
      * fix a cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      Co-authored-by: default avatarShucai Xiao <scxiao@prj47-rack-99.local.lan>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      90200619
  24. 02 Apr, 2020 1 commit
  25. 07 Mar, 2020 1 commit
  26. 10 Feb, 2020 1 commit
    • Shucai Xiao's avatar
      Add additional simple operators (MatMulInteger, ConvInteger, Asinh, Acosh, and Atanh (#431) · a023ec19
      Shucai Xiao authored
      
      
      * Add initial api
      
      * Formatting
      
      * Add more api
      
      * Formatting
      
      * add more operators (asinh, acosh, atanh, MatMulInteger, ConvInteger)
      
      * clang format
      
      * add unit tests for new operators
      
      * clang format
      
      * 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 avatarPaul Fultz II <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      Co-authored-by: default avatarkahmed10 <15948690+kahmed10@users.noreply.github.com>
      a023ec19
  27. 24 Jan, 2020 1 commit
    • kahmed10's avatar
      Conv transpose op (#429) · cf85b4c6
      kahmed10 authored
      
      
      * initial testing
      
      * add shape op
      
      * formatting
      
      * add env variable for batch sizes
      
      * formatting
      
      * progress on driver
      
      * progress on driver
      
      * cleanup
      
      * cleanup
      
      * add and modified prev tests
      
      * formatting
      
      * remove comment
      
      * add shape op test
      
      * formatting
      
      * manually insert shape op in test
      
      * formatting
      
      * create options struct for parsers
      
      * formatting
      
      * Add documentation for python
      
      * Fix c++ documentaion
      
      * add documentation to parser
      
      * formatting
      
      * add argmin and tests
      
      * fix doc and definitions
      
      * formatting
      
      * revert test functions
      
      * formatting
      
      * cpu impl of conv_transpose
      
      * more work on conv_transpose
      
      * rename files, added extratests
      
      * formatting
      
      * add more tests
      
      * formatting
      
      * changes
      
      * fix tests
      
      * fix tidy
      
      * formatting
      
      * fixed function parameter
      
      * fix function parameter
      
      * add cpu ops test
      
      * formatting
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      cf85b4c6
  28. 17 Jan, 2020 1 commit
    • Shucai Xiao's avatar
      Reduce operators (#427) · e320f89f
      Shucai Xiao authored
      * add reduce operators as required by onnxruntime
      
      * clang format
      
      * remove a test since it can cause overflow
      
      * resolve cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      e320f89f
  29. 27 Sep, 2019 1 commit
    • Shucai Xiao's avatar
      Ceil floor operators (#375) · 7d06cdbd
      Shucai Xiao authored
      * add two operators ceil and floor
      
      * clang format
      
      * add unit test for the ceil and floor operators
      
      * remove unintended code
      7d06cdbd
  30. 25 Sep, 2019 1 commit
    • Shucai Xiao's avatar
      Reduce_min/max operators (#363) · 3962c2ad
      Shucai Xiao authored
      * first version of refactoring reduce operators.
      
      * clang format
      
      * refactor the gpu implemantation of the reduce_mean operator
      
      * clang format
      
      * refactor gpu implementation of the resuce_sum operator
      
      * fix cpp check error
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      
      * fix a jenkin error
      
      * fixed review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * add implemenation of reduce_min and reduce_max
      
      * clang format
      
      * add unit test for reduce_min/max operator
      
      * clang format
      
      * add more unit tests
      
      * clang format
      
      * fix review comments
      3962c2ad
  31. 03 Aug, 2019 1 commit
  32. 02 Aug, 2019 1 commit
  33. 11 Jul, 2019 1 commit
  34. 10 Jul, 2019 2 commits
  35. 09 Jul, 2019 1 commit
  36. 03 Jul, 2019 2 commits
  37. 02 Jul, 2019 1 commit