1. 05 May, 2023 2 commits
  2. 04 May, 2023 2 commits
    • Paul Fultz II's avatar
      Rewrite multiplies with dot operator (#1685) · 457703a8
      Paul Fultz II authored
      When multiplying either the input or output across the K dimensions then the multiple can be applied to the constant which can then be folded with propagate_const.
      457703a8
    • Zhuoran Yin's avatar
      [mlir] Adding quant convolution fusion as anchor op (#1683) · 7f105952
      Zhuoran Yin authored
      Exposed the mlir_enabled() call the decide for lowering pipeline's enablement
      Disabled the rewrite quantization pipeline in mlir compilation
      Added quant convolution as anchor ops
      Fixed the return type expectations
      Added the fall back hip implementation for quantizelinear and dequantizelinear
      Will need advises to improve the implementation for quantizelinear
      7f105952
  3. 03 May, 2023 1 commit
    • Charlie Lin's avatar
      Update C/C++ API for dynamic batch (#1712) · 0ff00ef6
      Charlie Lin authored
      Relies on Removed split_single_dyn_dim compile flag #1711
      Exposes dynamic_dimension as a opaque object with dynamic_dimensions and optimals
      Exposes ONNX dyn_input_dims and default_dyn_dim to run with dynamic batch
      Updates api.py to be able to create objects from aggregate initialization (used for dynamic_dimension)
      Uses offload copy for now
      0ff00ef6
  4. 02 May, 2023 1 commit
  5. 28 Apr, 2023 1 commit
  6. 25 Apr, 2023 2 commits
  7. 24 Apr, 2023 3 commits
  8. 21 Apr, 2023 1 commit
  9. 20 Apr, 2023 1 commit
  10. 19 Apr, 2023 1 commit
  11. 18 Apr, 2023 2 commits
  12. 17 Apr, 2023 2 commits
  13. 13 Apr, 2023 1 commit
  14. 12 Apr, 2023 1 commit
  15. 11 Apr, 2023 1 commit
  16. 10 Apr, 2023 2 commits
  17. 09 Apr, 2023 1 commit
  18. 07 Apr, 2023 1 commit
  19. 06 Apr, 2023 2 commits
    • Charlie Lin's avatar
      Driver dynamic batch update (#1652) · adccec52
      Charlie Lin authored
      Examples..
      
      bin/driver verify /codes/onnx_models/resnet50-v1-7/resnet50-v1-7.onnx --split-single-dyn-dim --batch 3 --dyn-input-dim @data "[{min:1, max:4}, 3, 224, 224]"
      
      bin/driver compile /codes/onnx_models/resnet50-v1-7/resnet50-v1-7.onnx --split-single-dyn-dim --default-dyn-dim "{min:1, max:10}" --output resnet50_batch1-10.mxr
      
      bin/driver perf resnet50_batch1-10.mxr --batch 4
      adccec52
    • Paul Fultz II's avatar
      Add reduction fusion (#1614) · f201285c
      Paul Fultz II authored
      Automatically fuse multiple reductions and pointwise operations.
      f201285c
  20. 05 Apr, 2023 3 commits
  21. 04 Apr, 2023 2 commits
    • shivadbhavsar's avatar
      fix bug in transpose_slice simplification (#1660) · 30af1697
      shivadbhavsar authored
      Bug found due to failing torch benchmark. Added test case to reproduce issue causing the model to error out on compile.
      Original logic results in the following error:
      AMDMIGraphX/src/include/migraphx/op/unsqueeze.hpp:128: normalize_compute_shape: UNSQUEEZE: Axis dimenstion is not divisible by step
      30af1697
    • Charlie Lin's avatar
      Refactor dynamic_dimension to have multiple optimals (#1625) · e7ec374f
      Charlie Lin authored
      Makes the optimals into a std::set<std::size_t>
      Changes shape object functions to handle the opts change
      Changes to convolution, flatten, pooling, and convolution in that they no longer calculate the output optimal dimensions. Instead returns empty opts. Will need to change this in the future if we want to support dynamic shapes fully.
      Many changes to tests and shape calls with respect to the new optimals
      e7ec374f
  22. 03 Apr, 2023 2 commits
  23. 01 Apr, 2023 1 commit
  24. 31 Mar, 2023 1 commit
    • Charlie Lin's avatar
      Split single dynamic dimension compiler pass (#1580) · e9e3eacc
      Charlie Lin authored
      Adds a new GPU compiler pass split_single_dyn_dim that handles when one input parameter has a single non-fixed dynamic_dimension.
      commonly occurs for dynamic batch or BERT sequence length
      Splits the dynamic shape into several submodules will static input parameters to handle all of the cases in the dynamic_dimension range.
      Essentially does what I manually did for the select_module verify tests
      Adds a compile option split_single_dyn_dim that toggles the pass on/off. Defaults to false.
      Updates verify_program.hpp and run_verify.cpp to allow for the tests to change the compile_options
      e9e3eacc
  25. 30 Mar, 2023 1 commit
  26. 29 Mar, 2023 1 commit
  27. 28 Mar, 2023 1 commit