1. 10 Aug, 2021 1 commit
    • Paul Fultz II's avatar
      Add option to compile with hiprtc (#892) · 91c9ebbc
      Paul Fultz II authored
      * Add hiprtc compile option
      * Add cross compile test
      * Update error reporting
      * Add tests for errors and warnings
      * Fix tidy warning
      * Add comment to ifdefs
      * Skip null character at end of log
      * Assert there is null at the end
      91c9ebbc
  2. 09 Aug, 2021 1 commit
  3. 05 Aug, 2021 1 commit
    • Paul Fultz II's avatar
      Add gpu driver and improvements to pointwise codegen (#851) · 29fa2666
      Paul Fultz II authored
      
      
      * Add method to compile pointwise
      
      * Formatting
      
      * Add lambda
      
      * Add semicolon
      
      * Rename variable
      
      * Add driver to run jit kernels
      
      * Formatting
      
      * Add context
      
      * Formatting
      
      * Make seperate driver folder
      
      * Add more general gpu driver
      
      * Formatting
      
      * Print out wll time
      
      * Formatting
      
      * Run multiple times and skip first run
      
      * Formatting
      
      * Seperate time_op
      
      * Run an op for comparison
      
      * Formatting
      
      * Add debug asserts
      
      * Formatting
      
      * Change parameer name
      
      * Formatting
      
      * Fix argument order
      
      * Formatting
      
      * Add preloading
      
      * Formatting
      
      * Allow a different data type
      
      * Formatting
      
      * Pipeline transformations
      
      * Formatting
      
      * Add vectorization
      
      * Formatting
      
      * Reduce dims
      
      * Formatting
      
      * Compile with launch params as constant
      
      * Formatting
      
      * Make sure buffer can be vecotrized
      
      * Formatting
      
      * Enable vectorization and preloading
      
      * Formatting
      
      * Add print header
      
      * Formatting
      
      * Avoid allocating to large of LDS
      
      * Formatting
      
      * Add some vec functions to a seperate header
      
      * Formatting
      
      * Add stride loops
      
      * Formatting
      
      * Improve the transform pipeline
      
      * Formatting
      
      * Add const
      
      * Fix shape check
      
      * Formatting
      
      * Just check stride axis is zero
      
      * Remove extra finc_vector_axis overload
      
      * Simplify some mroe functions
      
      * Formatting
      
      * Remove some more extra functions
      
      * Formatting
      
      * Simplify more decltypes
      
      * Add another const
      
      * Fix test
      
      * Get buffer pointer different for older compilers
      Co-authored-by: default avatarShucai Xiao <shucai@gmail.com>
      Co-authored-by: default avatarChris Austen <causten@users.noreply.github.com>
      29fa2666
  4. 03 Aug, 2021 1 commit
  5. 28 Jul, 2021 1 commit
  6. 21 Jul, 2021 1 commit
  7. 17 Jul, 2021 1 commit
    • Umang Yadav's avatar
      Remove Alpha Beta from onnx gemm parsing (#874) · eacf042e
      Umang Yadav authored
      * gemm_test_workign
      
      clang_formatting
      
      tests passing
      
      clang formatting
      
      look for beta not equal to one
      
      * make_use of broadcastable_binary_op
      
      clang formatting
      
      * make use of common_op
      
      clang formatting
      
      * move transposes after multiplication
      
      clang formatting
      
      fix transpose
      
      formatting
      
      fix cpp check
      
      foramtting
      
      * fix parsing conditions and ci fails
      eacf042e
  8. 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
  9. 14 Jul, 2021 1 commit
  10. 13 Jul, 2021 1 commit
  11. 12 Jul, 2021 1 commit
  12. 09 Jul, 2021 2 commits
  13. 08 Jul, 2021 4 commits
  14. 06 Jul, 2021 1 commit
    • Paul Fultz II's avatar
      Update test driver to continue executing after exceptions and other failures (#868) · f60c3815
      Paul Fultz II authored
      
      
      * Improve handling of exceptions in test driver
      
      * Formatting
      
      * Auto print exception
      
      * Formatting
      
      * Fork each test case
      
      * Formatting
      
      * Exclude gcc 5 debug build
      
      * Fix tidy issues
      
      * Add color
      
      * Formatting
      
      * Create driver class
      
      * Formatting
      
      * Customize test_case names
      
      * Formatting
      
      * Report status from forked processes
      
      * Formatting
      
      * Update the verify driver
      
      * Formatting
      
      * Print out failed tests
      
      * Formatting
      
      * Fix tidy issues
      
      * Formatting
      
      * Expect passing
      
      * Improve failure reporting on non-linux systems
      
      * Fix ifdef
      
      * Flush code code cov
      
      * Formatting
      
      * Fix tidy
      
      * Check if weak symbols is linked
      
      * Formatting
      
      * Add continue flag
      
      * Formatting
      
      * Set exe name
      
      * Use stringstream and use quotes
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      f60c3815
  15. 01 Jul, 2021 1 commit
    • Cagri Eryilmaz's avatar
      Step op for parse_slice.cpp (#858) · 85d93d23
      Cagri Eryilmaz authored
      
      
      * slice+step+reverse: parsing + onnxfile + test
      
      * cleanup
      
      * updates for step operator, abs axis
      
      * test updates
      
      * updates to tests
      
      * slice+reverse verify test
      
      * verify test for slice+step+reverse
      
      * clang format
      
      * reverse with lens
      
      * simplify normalize_compute_shape
      
      * step op: normalization for axes
      
      * clang format
      
      * change of order: fixing wrong functionality in some cases
      
      * test for slice,reverse,step
      
      * clang format
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      85d93d23
  16. 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
  17. 25 Jun, 2021 7 commits
  18. 16 Jun, 2021 1 commit
    • Shucai Xiao's avatar
      Resize linear mode support (#819) · 4fe71058
      Shucai Xiao authored
      
      
      * backup implementation of resize enhancement
      
      * clang format
      
      * code backup for the resize
      
      * clang format
      
      * fix build error for resize operator
      
      * clang format
      
      * tmp code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * remove changes in parse_resize
      
      * remove unnecessary changes
      
      * clang format
      
      * add unit test for the bug
      
      * clang format
      
      * remove print code
      
      * remove a semi-colon
      
      * clang format
      
      * fix a tidy error
      
      * clang format
      
      * add contiguous for nonstd input for the resize operator
      
      * clang format
      
      * code backup
      
      * clang format
      
      * fix build error
      
      * code backup
      
      * clang format
      
      * code backup
      
      * code backup
      
      * clang format
      
      * add unit tests for resize_linear
      
      * clang format
      
      * refine a function name
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      
      * backup code changes
      
      * clang format
      
      * add unit tests for resize operator
      
      * clang format
      
      * remove an unused header file
      
      * remove an unused header file
      
      * remove unrelated unit tests
      
      * refine parsing resize inputs
      
      * clang format
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * remove unnecessary code
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fixed a bug
      
      * clang format
      
      * fix review comments
      
      * clang format
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      4fe71058
  19. 15 Jun, 2021 1 commit
    • Shucai Xiao's avatar
      Int8 gemm support (#811) · 39bc6161
      Shucai Xiao authored
      
      
      * add a flag to indicate int8x4 input format
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * remove log info
      
      * remove unnecessary changes
      
      * fix cppcheck error
      
      * add unit tests to have more code coverage
      
      * clang format
      
      * add debug info
      
      * remove log info
      
      * fix cppcheck error
      
      * clang format
      
      * clang format
      
      * add one more unit tests for more scenarios
      
      * fix cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * rename p to m
      
      * fix review comments
      
      * refine unit tests
      
      * clang format
      
      * refine unit tests and fixed a bug
      
      * clang format
      
      * fix build error related to rocm4.2
      
      * fix a bug related to alpha and beta
      
      * refine two unit tests related to int8_gemm
      
      * fix cppcheck error
      
      * refine unit test to pass on mi100
      
      * add unit test for packing int8 args
      
      * clang format
      
      * change unit tests back
      
      * disable some unit tests for gpu
      
      * clang format
      
      * refine unit tests to run on mi100
      
      * clang format
      
      * refine unit tests
      
      * refine unit tests
      
      * clang format
      
      * change back a unit test
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      39bc6161
  20. 11 Jun, 2021 1 commit
  21. 10 Jun, 2021 2 commits
    • Cagri Eryilmaz's avatar
      Update parse slice (#847) · ade97057
      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
      
      * changes to parse_slice.cpp debug copy
      
      * cleanup + additional axis  for reverse instruction
      
      * formatting
      
      * remove local size, back to default
      
      * update tests: replace with std functions
      
      * multiple axis for reverse op
      
      * fix a build error
      
      * clang format
      
      * changes to parse_slice.cpp debug copy
      
      * cleanup + additional axis  for reverse instruction
      
      * formatting
      
      * axes update to parse slice
      
      * typo
      
      * more tests
      
      * fix a bug for the reverse device function
      
      * clang format
      
      * fix a bug
      
      * clang format
      
      * ref test updates, multiaxis
      
      * formatting
      
      * formatting, cleanup bool op
      
      * casting for tidy warning
      
      * tidy fix
      
      * remove bool, add steps, check only negative axis
      
      * clang-format
      
      * step op for parse slice
      
      * cleanup & format
      
      * missing axis for logsoftmax_nonstd_input_test
      
      * updated onnx file for logsoftmax_nonstd_input_test
      
      * updates to parse slice. tests for slice+reverse, slice+step+reverse
      
      * removing tests for slice+step+reverse as step requires normalization, will move it to other branch. removed related lines and tests
      
      * duplicate test removal
      
      * some refinement of the code
      
      * clang format
      
      * undefined behavior fix
      
      * undef behavior v2
      
      * formatting
      
      * formatting & updates
      
      * change to parse slice
      
      * update to parse_slice for undef/asan + test update
      
      * formatting
      
      * remove header, no if
      
      * assertions + change the loop from axis to steps for logsoftmax test segfault
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      ade97057
    • Paul Fultz II's avatar
      Dont match or bind to global instructions (#826) · c72a047f
      Paul Fultz II authored
      
      
      * Add optional header
      
      * Formatting
      
      * Use optional in the matcher
      
      * Foramtting
      
      * Remove program from tests
      
      * Formatting
      
      * Dont bind or match non-local variables
      
      * Formatting
      
      * Fix gcc 5 error
      
      * Format
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      c72a047f
  22. 09 Jun, 2021 2 commits
  23. 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
  24. 02 Jun, 2021 1 commit
  25. 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
  26. 25 May, 2021 1 commit
  27. 24 May, 2021 2 commits
    • Shucai Xiao's avatar
      Bug split optimization (#817) · b847e868
      Shucai Xiao authored
      
      
      * backup implementation of resize enhancement
      
      * clang format
      
      * code backup for the resize
      
      * clang format
      
      * fix build error for resize operator
      
      * clang format
      
      * tmp code backup
      
      * clang format
      
      * remove changes in parse_resize
      
      * remove unnecessary changes
      
      * clang format
      
      * add unit test for the bug
      
      * clang format
      
      * remove print code
      
      * remove a semi-colon
      
      * clang format
      
      * fix a tidy error
      
      * fix review comments
      
      * clang format
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      b847e868
    • 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