1. 17 Nov, 2023 1 commit
  2. 10 Sep, 2023 1 commit
  3. 22 Jul, 2023 1 commit
  4. 08 Jul, 2023 1 commit
    • Artur Wojcik's avatar
      export API symbols from dynamic libraries (#1892) · c04fbc92
      Artur Wojcik authored
      Export API symbols for migraphx, migraphx_ref, migraphx_cpu, migrphx_gpu, migraphx_device, migraphx_tf, and migraphx_onnx. There is a separate PR for migrahx_c.
      
      API symbol exporting affects only Windows. It is transparent on Linux.
      c04fbc92
  5. 17 Jun, 2023 1 commit
  6. 15 Jun, 2023 1 commit
    • Brian Pickrell's avatar
      fix parse_instancenorm to create broadcast and multibroadcast instruc… (#1715) · 41ba30d5
      Brian Pickrell authored
      * fix parse_instancenorm to create broadcast and multibroadcast instructions with two dynamic shape arguments instead of 1.  Their make_op() functions don't support dynamic shapes when called with one input.  This caused an error when parsing an ONNX 3duunet model
      
      * Use add_common_op() to create multibroadcast op.
      
      * add verification and parsing test for instance_norm with dynamic input.  Parse test doesn't pass.
      
      * fix for test; still doesn't pass
      
      * another fix for test; still doesn't pass
      
      * work in progress, instance_norm_dyn_batch_test works but instance_norm_test doesn't
      
      * fix onnx instancenorm tests to match parser changes.  Passes all check tests
      
      * Updated comments explaining usage of add_common_op()
      
      * hand-merged conflicts with develop
      
      * fix instance_norm_half_test after merge
      
      * add Onnx test instance_norm_dyn_batch_half_test
      
      * add shape test cases broadcast_1in_dyn_error and multibroadcast_1in_dyn_error_0
      41ba30d5
  7. 05 Jun, 2023 1 commit
  8. 20 Apr, 2023 1 commit
  9. 06 Apr, 2023 1 commit
    • 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
  10. 04 Apr, 2023 1 commit
    • 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
  11. 28 Feb, 2023 1 commit
    • Charlie Lin's avatar
      Select module op (#1569) · a63ee2e0
      Charlie Lin authored
      Creates the select_module operator that selects one of the submodules passed to it to run based on the submodule parameters.  The submodule is selected by having the exact same static shapes for the arguments to select_module as the parameters in the submodule
      a63ee2e0
  12. 17 Jan, 2023 1 commit
    • Charlie Lin's avatar
      Dynamic ref pad (#1487) · 8202e411
      Charlie Lin authored
      Extends pad operator to handle dynamic input shapes
      Only handles computing the shape for adding constant padding to a dynamic shape
      - adds the padding to the min, max, and opt values (unless opt is 0, where it keeps it 0)
      - does not handle reflect padding with dynamic shapes
      8202e411
  13. 13 Dec, 2022 1 commit
  14. 13 Nov, 2022 1 commit
    • Charlie Lin's avatar
      Dyn ref multibroadcast; dyn binary (#1423) · d73c6d7c
      Charlie Lin authored
      Updated Multibroadcast op to have a two input version for dynamic shapes
      Current dynamic shape broadcasting logic
      dynamic_dimensions must be the same or one of them is {1, 1, 0} or {1, 1, 1}
      Works for dyn-dyn, dyn-static, and static-static shape combinations
      Changed common.cpp for multibroadcasting for binary ops with dynamic shapes
      Extended binary.hpp for dynamic shapes to test the new common.cpp stuff
      d73c6d7c
  15. 08 Jul, 2022 1 commit
  16. 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
  17. 22 Jun, 2022 1 commit
  18. 22 Mar, 2022 1 commit
  19. 02 Mar, 2022 1 commit
  20. 25 Feb, 2022 1 commit
  21. 27 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Add tuple type to shape (#800) · 66aa4cc8
      Paul Fultz II 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
      
      * Add tuple type to shape class
      
      * Formatting
      
      * Make data member private
      
      * Formatting
      
      * Add sub arguments
      
      * Formatting
      
      * Trun clang format off
      
      * Disable clang-format
      
      * Improve visiting tuples
      
      * Formatting
      
      * Add more argument tests
      
      * Formatting
      
      * Handle tuple in load
      
      * Formatting
      
      * Remove .o files
      
      * Add tuple type to api
      
      * Formatting
      
      * Fix tidy warnings
      
      * Fix tidy warnings
      
      * Add a test for share method
      
      * Formatting
      
      * Add a test cpp_type
      
      * Suppress tidy warning
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      66aa4cc8
  22. 19 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Add code generation for pointwise operators (#780) · 35d1bcc2
      Paul Fultz II 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
      
      * Remove .o files
      35d1bcc2
  23. 05 Apr, 2021 1 commit
    • Paul Fultz II's avatar
      Propagate data layout in the operators (#777) · abe4ec3e
      Paul Fultz II authored
      
      
      * Add method to compute shape with same layout
      
      * Formatting
      
      * Fix permutation with ambiguous layouts
      
      * Formatting
      
      * Propagate layout for pointwise operators
      
      * Formatting
      
      * Propagate layout for more operators
      
      * Formatting
      
      * Sort with lens
      
      * Formatting
      
      * Simplify permutation sorting
      
      * Formatting
      
      * Propagate layout for concat operator
      
      * Formatting
      
      * Use copy
      
      * Formatting
      
      * Remove header
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      abe4ec3e
  24. 08 Feb, 2021 1 commit
    • Paul Fultz II's avatar
      Add a pass to remove unsupported data types (#738) · 3d24a21c
      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
      Co-authored-by: default avatarShucai Xiao <shucai@gmail.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      3d24a21c
  25. 14 Dec, 2020 1 commit
    • Paul Fultz II's avatar
      Use dnnl for cpu backend (#688) · 406afeb8
      Paul Fultz II authored
      
      
      * Add flag to enable cpu backend
      
      * Make buffers shared
      
      * Enable optimizations
      
      * Add onednn
      
      * Formatting
      
      * Formatting
      
      * Add dnnl header
      
      * Formatting
      
      * Rewrite rnn first
      
      * Formatting
      
      * Call reference implementation
      
      * Formatting
      
      * Make literal data shared
      
      * Formatting
      
      * Add convolution
      
      * Formatting
      
      * Compensate for dilation
      
      * Formatting
      
      * Use name/make_op instead
      
      * Formatting
      
      * Rename gemm header
      
      * Formatting
      
      * Add dnnl convolution/gemm operators
      
      * Formatting
      
      * Add eliminate_contiguous
      
      * Add faster pointwise operators
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Add dnnl op class
      
      * Formatting
      
      * Add add op
      
      * Formatting
      
      * Add concat operator
      
      * Formatting
      
      * Add more ops
      
      * Create descriptor during finalization
      
      * Formatting
      
      * Dont rewrite pooling
      
      * Enable memory coloring
      
      * Formatting
      
      * Add output aliases
      
      * Formatting
      
      * Fix errors
      
      * Formatting
      
      * Convert literals
      
      * Add missing file
      
      * Remove batch_norm
      
      * Formatting
      
      * Use strides
      
      * Formatting
      
      * Add some debug checks
      
      * Formatting
      
      * Fix big in adjusting shape for gemm
      
      * Formatting
      
      * Fix fallback dot operator
      
      * Zero initialize buffers
      
      * Add suport for group convolutions
      
      * Formatting
      
      * Make adjust allocation target independent
      
      * Formatting
      
      * Enable adjust_allocation for gpu/cpu
      
      * Formatting
      
      * Add copy to allocation model
      
      * Formatting
      
      * Add copy operator
      
      * Formatting
      
      * Better handling of output parameters in adjust_allocation
      
      * Formatting
      
      * Build with dnnl
      
      * Make dnnl required
      
      * Fix compile error
      
      * Tidy fixes
      
      * Formatting
      
      * Tidy fixes
      
      * Formatting
      
      * Fix more tidy issues
      
      * Formatting
      
      * Add mul op
      
      * Add mul op
      
      * Set c compiler to clang as well
      
      * Compensate for normalized compute shape
      
      * Formatting
      
      * Fix cppcheck errors
      
      * Formatting
      
      * Add onednn library to hcc
      
      * Guard clang pragmas
      
      * Disable cpu mode for gcc for now
      
      * Leave it enabled it for gcc 7
      
      * Fix cppcheck suppresion
      
      * Fix compile error on gcc 5
      
      * Remove unused code
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      406afeb8
  26. 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
  27. 29 Jul, 2020 1 commit
    • Paul Fultz II's avatar
      Add serialization framework (#577) · 9c3c3c5f
      Paul Fultz II authored
      
      
      * Add initial serialization
      
      * Formatting
      
      * Add unit tests
      
      * Formatting
      
      * Add tests for serialization
      
      * Formatting
      
      * Use or not and
      
      * Add value test
      
      * Formatting
      
      * Add more tests
      
      * Add shape serialization
      
      * Formatting
      
      * Add serializtion for literal and argument
      
      * Formatting
      
      * Serialize empty types
      
      * Formatting
      
      * Tidy fixes
      
      * Formatting
      
      * Fix tidy issues
      
      * Formatting
      
      * Reformat value type macro
      
      * Formatting
      
      * Handle enum types
      
      * Formatting
      
      * Add float_equal
      
      * Fix tidy issue
      
      * Use declval for better sfinae
      
      * Formatting
      
      * Fix maro name
      
      * Add more test cases to improve coverage
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Fix assertion
      
      * Fix bug with keyless assignment
      
      * Formatting
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      9c3c3c5f
  28. 09 Jul, 2020 1 commit
  29. 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
  30. 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
  31. 25 Jun, 2019 1 commit
  32. 09 Feb, 2019 2 commits
  33. 11 Dec, 2018 2 commits
  34. 27 Nov, 2018 2 commits
  35. 14 Nov, 2018 1 commit
  36. 06 Nov, 2018 2 commits