1. 09 Feb, 2022 1 commit
  2. 08 Feb, 2022 2 commits
  3. 28 Jan, 2022 2 commits
  4. 27 Jan, 2022 1 commit
  5. 21 Jan, 2022 1 commit
  6. 10 Jan, 2022 1 commit
  7. 09 Dec, 2021 1 commit
    • Shucai Xiao's avatar
      Softmax perf optimization (#1014) · 2e337c7f
      Shucai Xiao authored
      Changed the number of threads in a block from 256 to 128
      Increased the max number of blocks in the kernel from 256 to 1M.
      For the case that the axis is the last dimension, we removed the computation of index since it is not required.
      
      With these change, we can get about 2x speedup compared to the develop branch for the softmax op used in the BertSquad model.
      2e337c7f
  8. 08 Dec, 2021 1 commit
  9. 07 Dec, 2021 1 commit
  10. 02 Dec, 2021 1 commit
  11. 30 Nov, 2021 2 commits
  12. 24 Nov, 2021 1 commit
  13. 18 Nov, 2021 1 commit
  14. 11 Nov, 2021 1 commit
    • Paul Fultz II's avatar
      Conditionally enable pointwise fusion (#992) · 157935ff
      Paul Fultz II authored
      This enables the pointwise fusions using the MIGRAPHX_ENABLE_POINTWISE_FUSION env variable. Its disabled by default since MIOpen fusions need to be refactored.
      
      This also adds a compile_ops pass to compile the pointwise modules. All tests except test_gpu_fast_math passes with MIGRAPHX_ENABLE_POINTWISE_FUSION=1 set.
      157935ff
  15. 09 Nov, 2021 1 commit
  16. 05 Nov, 2021 1 commit
  17. 28 Oct, 2021 2 commits
  18. 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
  19. 19 Oct, 2021 1 commit
  20. 08 Oct, 2021 2 commits
  21. 01 Oct, 2021 1 commit
    • turneram's avatar
      Add multinomial op (#954) · 0b7672d7
      turneram authored
      
      
      Add multinomial op to onnx parser with ref and GPU implementations.
      
      The onnx parser inserts a literal of shape {batch_size, sample_size} with random values in the range [0, 1) and inserts existing ops to compute the cumulative density function. The multinomial operator multiplies the random values by the sum of the CDF and returns the index of the first element of the CDF that is greater than the result, representing samples randomly drawn from [0, class_size) that follow the log-probability distribution.
      
      Resolves #821
      Co-authored-by: default avatarShucai Xiao <shucai@gmail.com>
      0b7672d7
  22. 27 Sep, 2021 1 commit
  23. 17 Sep, 2021 2 commits
    • Paul Fultz II's avatar
      985f58b0
    • Umang Yadav's avatar
      Remove alpha and beta attributes from dot operator (#945) · 9e43cb8b
      Umang Yadav authored
      This PR aims to remove alpha and beta attributes from dot operator completely.
      
      Previously dot operator was defined as C = alpha * A . B + beta * C where * is scalar multiplication and . is dot product or matrix multiplication depending on dimension of the inputs.
      
      Aim is to have the definition of dot operator as C = A . B without having alpha or beta.
      
      In order to achieve the same effect as alpha and beta (1) it multiplies the one of the inputs to the dot operator with alpha value. (2) if beta is present then, multiplies the C with beta and then adds into the output from step 1.
      9e43cb8b
  24. 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
  25. 10 Sep, 2021 1 commit
  26. 02 Sep, 2021 2 commits
  27. 01 Sep, 2021 1 commit
    • Chris Austen's avatar
      Adjust HIP_COMPILER_FLAGS to support <$:$<>:> and SHELL: tags (#933) · 33a17257
      Chris Austen authored
      
      
      In ROCm 4.5.0 hip compile flags are coming in differently.  This has
      caused some parsing issues for the HIP_COMPILER_FLAGS variable.  As an example
      
          ROCm 4.3.0: --offload-arch=gfx900
          ROCm 4.5.0: <$<COMPILE_LANGUAGE:CXX>:SHELL:--offload-arch=gfx900>
      
      Using existing code...
          $<$<COMPILE_LANGUAGE:CXX>:SHELL:--offload-arch=gfx900>
      Becomes...
          $<$<COMPILE_LANGUAGE:CXX>:SHELL:
      
      There are two problems with that.
        1) The "<" is not balanced with a "> due to the regex consuming the ">"
        2) There is still a `SHELL:`  label.
      
      This commit repairs both.  I took the regex parsing code from ROCmSoftwarePlatform/MIOpen/blame/develop/CMakeLists.txt
      but improved it to support handling of target features like
      <$<COMPILE_LANGUAGE:CXX>:SHELL:--offload-arch=gfx900:xxx+>
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      33a17257
  28. 31 Aug, 2021 2 commits
    • kahmed10's avatar
      Changes to support both OneDNN and ZenDNN builds (#929) · 0859fe90
      kahmed10 authored
      
      
      * Add preallocate method
      
      * Add preallocate_param pass
      
      * Preallocate buffers on the cpu
      
      * Formatting
      
      * Preallocate on the gpu
      
      * Add missing cpp file
      
      * Formatting
      
      * Add lifetime function
      
      * Formatting
      
      * 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
      
      * Always allocate
      
      * Fix tidy warning
      
      * Flush code code cov
      
      * Formatting
      
      * Fix tidy
      
      * Add const
      
      * Check if weak symbols is linked
      
      * Formatting
      
      * initial progress
      
      * formatting
      
      * Add continue flag
      
      * Formatting
      
      * Set exe name
      
      * Use stringstream and use quotes
      
      * rename vars
      
      * formatting
      
      * more testing
      
      * formatting
      
      * Fix bug when using --continue in the tests
      
      * Formatting
      
      * revert gemm
      
      * revert dot file
      
      * rename var
      
      * update cmakelists and deconv compute
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      0859fe90
    • Shucai Xiao's avatar
      Fix debug assert (#930) · bd85a76c
      Shucai Xiao authored
      * fix two asserts for debug build
      
      * add unit test for copy parameters
      
      * clang format
      
      * add a unit test for reorder_dims
      
      * change tranpose to always require perm not be empty
      
      * clang format
      
      * remove an unnecessary line
      
      * fix tidy error
      
      * fix review comments
      bd85a76c
  29. 24 Aug, 2021 1 commit
    • Umang Yadav's avatar
      Change attributes names to be more consistent and reflect better meaning (#916) · 0d2606bb
      Umang Yadav authored
      * rename broadcast and multibroadcast output_lens attribute to out_lens attribute, and change tests and source code to reflect the same
      
      * change the reshape attribute from dims to out_lens
      
      * change transpose attribute's name from dims to perm to reflect better meaning
      
      * use permutation instead of perm for transpose
      
      clang formaating
      
      * use dims instead of out_lens for reshape
      
      clang formatting
      0d2606bb
  30. 19 Aug, 2021 1 commit
  31. 18 Aug, 2021 2 commits
    • turneram's avatar
      Optimize Q/DQ Format Pass (#889) · 0b5f33b6
      turneram authored
      * Add operators, refactor parsers, add rewrite passes, add tests
      
      * Add ref implementations
      
      * Move broadcasting of scales and zero points to onnx parser
      
      * Allow for x and zero_point to have different types in quantizelinear; fix zero_point default type
      
      * Switch certain variables to int64_t
      
      * Fix overflow in implicit constant conversion
      
      * Remove operators.hpp from includes in tf_test.cpp
      
      * Add conversion for int32 input to quantizelinear and add test case; remove operators.hpp from onnx_test.cpp includes
      
      * Switch dequantizelinear math from int32 to float
      
      * Remove changes to operators.hpp
      
      * Simplify apply_quantizelinear
      
      * Add verify test for int32 data
      
      * Add rewrite_quantization back to CMakeLists
      
      * Add passes to insert qdq after add_bias is applied, replace quant_ops, and remove remaining qdq pairs
      
      * Renaming, refactoring, cleaning up code, adding formal test, and adding passes to targets
      
      * Renaming, review comments, begin adding more specific tests
      
      * Add more specific unit tests
      
      * Fix failing test on CI
      
      * Correct matcher and update qop rewriting, update tests and add more tests
      
      * Update matcher, clean up simplify_qdq, tweak tests
      
      * Add tests, remove pass from CPU target, update dot parameters, clean up simplify_qdq
      
      * Fix correctness bug in ref q/dq implementations; edit gemm parser to make beta always 0.0
      
      * Remove unused variables in onnx gemm tests
      0b5f33b6
    • turneram's avatar