- 08 Aug, 2023 1 commit
-
-
Paul Fultz II authored
-
- 31 Jul, 2023 1 commit
-
-
Lakhinder Walia authored
* Use shape of Instruction (instead of a default) in add_return() * Instruction validation fix: not to use a default shape value for comparison * Fix instruction::replace() to recompute shape for "@return" * handle the case of missing shape in an Instruction related Test * use compute_shape() to get op shapes + test case for tuple_type * add test case shape_test/return_shape_tuple * Add test for @return to check for half type * Move @return unit-tests around..; Address review comments * Broken comparison fix: comparison to a (default) shape of tuple_type * Test cases: (add) return_shape_empty & (modify) return_shape_tuple * modify the assert() statement
-
- 17 Jul, 2023 1 commit
-
-
Charlie Lin authored
throw on use_len with non-fixed dynamic dimensions change normalize_attributes to use input shape rather than input dimensions
-
- 06 Jul, 2023 1 commit
-
-
Paul Fultz II authored
This is to help enable multi-target execution. We store a vector of targets and contexts. Currently this will only compile a single target, the PR #1672 is needed to enable multiple targets. This will also serialize the targets and contexts. When using the execution_environment or prog.get_context() it will always use the context from the first target assuming this is the "primary" target. Although, its unlikely a user would use execution_environment with a multi-target environment.
-
- 31 May, 2023 1 commit
-
-
Umang Yadav authored
partially solves #1656 This PR only handles compilation part of multitarget.
-
- 08 Dec, 2022 1 commit
-
-
shivadbhavsar authored
Currently, quantizing a program with rnn layers to fp16 results in segmentation faults due to a "convert" operation being applied to an "undefined" instruction. The following changes are implemented to fix this issue: Added is_undefined method to the instruction class that returns true if all inputs to the instruction are from an undefined op. Updated rewrite_rnn pass to use the new is_undefined method rather than checking ins->name() Updated the dead_code_elimination pass to also use this new method rather than only checking the instruction name
-
- 02 Nov, 2022 1 commit
-
-
Paul Fultz II authored
Can be enabled via environment variable MIGRAPHX_ENABLE_NHWC
-
- 06 Sep, 2022 1 commit
-
-
Paul Fultz II authored
Using not and or improves readability. The cppcheck rule will help ensure we are doing it consistently.
-
- 04 Aug, 2022 1 commit
-
-
Charlie Lin authored
* Dynamic shape handling in shape object * rewrite empty lens multibroadcast test * Shape class changes to handle dynamic * More throw errors for functions that don't make sense for dynamic shape * Print output changes * Serialization changes * Fixing serialization errors * Remove const on dyn_dim copy getters * Dynamic shape tests * Fix serialize errors * Add dyn_data struct to avoid ambiguous constructor * Tidy fix: emplace_back() over for loop * Tidy fix: use move * Use std::initializer_list in constructor Reverts the dyn_data struct change Should get around the ambiguous braced initialization list error * avoid typedef * element_space, min,max,opt _lens change * formatting * Comments fix * dynamic bytes() test * Seralize and reflect changes * formatting * Test the dynamic lens functions * progress * Formatting * Dynamic conv draft progress * Add operator<< tests for coverage * Coverage update * Add to conv dynamic batch test * Dynamic image size test * Dynamic weight handling * Dyn image shape test change, fix dyn weight cond * Comment update * Dynamic weights shape test and fix * Use ternary operator * Tidy fixes * Handle dynamic graph input shapes in ONNX parser * Formatting * Handle dynamic shape for convolution * formatting * cppcheck fixes * Add onnx test files * Fix typo * Disable auto_pad for dynamic input shape * check_shapes object checks for allowing dynamic shapes * Fix any_of * Change to maintain const objectness * Formatting * Check shapes allow dynamic * Refactor compute_shape() call into op.compute() Allows for per operator differences with handling dynamic shape Fix operation.hpp change to use the generator * Comment fix * Refactor normalize_attributes() calls to use max_lens() * Comment addition * Update other normalize_attributes() calls * Change to using constructor and add tests * Use const member function * Add more dynamic shape support * Add tests for error code coverage * Fix opt shape bug and add shape tests * capture all by ref * Fix typo with img shape calculation * Add more tests * dynamic auto pad attempt Linker error with pad_calc.cpp * Fix parse dyn auto_pad Should only need to use dynamic auto pad when the image shape or kernel shape are dynamic. For a dynamic batch size, the auto pad calculation is the same. * Fix linking error * Fix auto_pad bug Fixed input tensor with auto_pad setting on * auto_pad onnx tests * Fix auto_pad calculation, evaluate in ref_conv add ref_ops tests * Add shape tests, fix bugs * Refactor first two output dynamic len calculation * Conv MLIR test update * i64 MLIR test fix * Fix MLIR test typo Co-authored-by:Chris Austen <causten@users.noreply.github.com>
-
- 22 Jun, 2022 1 commit
-
-
Ted Themistokleous authored
Updated each source file in the repo with the existing license.
-
- 16 Jun, 2022 1 commit
-
-
Charlie Lin authored
* Use custom distance function * Pass module, skip order check if other module * Change other valid() * Remove unnecessary declaration * test multiple module dependency * Refactor to make more clear * Code cleanup * Simplify fix * Test EXPECT Co-authored-by:Paul Fultz II <pfultz2@yahoo.com>
-
- 25 Nov, 2021 1 commit
-
-
Shucai Xiao authored
Resolves a problem in parsing the ssd-10 model. The problem is, after inserting contiguous in the auto_contiguous pass, standard output shape of some operators becomes non-standard. Then, if the next operator requires standard input shape, an exception is throw. For example, if we pass the following model: Input (standard shape) -> transpose (transposed) -> softmax (transposed) -> transpose (standard) -> gather. It works fine, and no contiguous is required. In the auto_contiguous pass, a contiguous is inserted after the first transpose. Then we need to replace the first transpose with the contiguous and recompute all shapes. When it comes to the gather operator, its input is a transposed shape, and an exception is thrown. The solution is in the recompute_shape() function. If it is called by the auto_contiguous pass and shape of an instruction is changed, and the shape is non_standard, we do not recompute shape of its output. The reason is: since its output shape is non_standard, a contiguous op will be added after the instruction, which will recompute shape for later operators.
-
- 19 Oct, 2021 1 commit
-
-
Paul Fultz II authored
Adds a pass to fuse pointwise operators into one "pointwsie" op that has a submodule which does the calculation.
-
- 09 Jun, 2021 1 commit
-
-
Paul Fultz II authored
* Enable libstdc++ debug mode * Add is_end function * Compare addresses in a map or set * Formatting * Check end * Fix comparision of instruction_ref * Formatting * Some more iterator fixes * Formatting * Fix assert * Fix invalid iterators * Fix debug print in program * Remove debug flag for now * Set correct bool type Co-authored-by:mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 22 Apr, 2021 1 commit
-
-
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 * Add dnnl binary op * Formatting * Add binary and eltwise * Formatting * Add softmax * Formatting * Remove unused operators * Add missing files * Formatting * Add lrn * Formatting * Add deconvolution * Formatting * Change allocate default * Add reorder * Formatting * Add reductions * Formatting * Sort lines * Change literals in another loop * Add pow operator * Formatting * Add pow operator * Formatting * Make sure shapes are packed * Allow broadcasted inputs * Remove unused operators * Simplify functions * Remove softmax * Add sub and erf functions * Formatting * Fix bug * Formatting * Improve parallism * Formatting * Allow multiple batch dimensions * Formatting * Move literal transforms out of lowering * Formatting * Add gather operator * Sort lines * Add early exit for carry * Formatting * Add missing concat * Rename macro * Fix deep nesting * Formatting * Fix cppcheck issues * Remov else * Move attribute to typedef * Formatting * Disable maybe-uninitialized warning since its broken on gcc * Add constexpr default constructor * Formatting * Fix compiler warnings * Fix adjust_allocation test * Add layernorm matcher * Add gelu_erf matcher * Formatting * Add gelu_tanh matcher * Formatting * Remove match namespace * Formatting * Use matcher instead of string * Formatting * Add fusions * Formatting * Add post op field * Formatting * Make post_ops serializable * Formatting * Add eltwise fusions * Formatting * Fix null conversions * Formatting * Add fuse_ops source files * Formatting * Set binary post op index correctly * Formatting * Fix serialization bugs * Check if used once * Formatting * Fix error in get_primitive_attr * Formatting * Add compile function * Formatting * Limit fusions * Formatting * Disable with env variable instead of using compile arg * Formatting * Fix implicit conversion to bool * Declar on seperate lines * Formatting * Fix cppcheck issues * Fix ICE in pack_join * Formatting * Use const ref * Make enum hashable * Formatting * Add explicit this * Fix merge issues * Fix dangling ref * Formatting * Add test for compile * Formatting * Add more value tests * Formatting Co-authored-by:
Shucai Xiao <shucai@gmail.com> Co-authored-by:
mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 05 Apr, 2021 1 commit
-
-
Shucai Xiao authored
* 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 * rename variables * clang format * remove the unused compute_op function * clang format * add lowering of if operator and compute_op function * clang format * add parsing if operator in onnx file * clang format * fix clang tidy format * clang format * add the gpu implementation of the if operator * enhance the validate function and uncomment a unit test * clang format * remove unnecessary code * add sub_module processing in ref passes * clang format * 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 * clang format * 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 * clang format * fix cppcheck error * fix a cppcheck error * clang format * backup code * clang format * fix cppcheck error * clang format * some code refinement * clang format * code backup to handle submodules in module compilation * clang format * code backup * clang format * code backup * clang format * fix a bug related to literal id * fix a bug in gpu execution * change the way of compiling a graph * clang format * backup more changes * clang format * refine pass log information * remove unnecessary code * clang format * temp changes backup * clang format * add module name prefix to scratch memory id in hip_memory_allocation * clang format * change to copy the cond input by inserting a copy instruction * clang format * change to use the if output argument as the submodule output so can remove a gpu_copy * clang format * consider submodule in some compile passes * clang format * fix review comments * clang format * fix issues related to scratch memory * clang format * remove unnecessary code * fix cppcheck error * clang format * reslove the implicit dependencies issue related to submodule * clang format * fix cppcheck error * clang format * backup temp changes * clang format * fixed an bug in the has_instruction function * clang format * fix the return value of the gpu implementation of the if operator * fix a bug in the compute_shape function in the gpu implementation * add an if onnx unit test * clang format * add more unit tests * clang format * tmp code backup * clang format * fix a sync problem related to copy cond argument from gpu to cpu * clang format * change the compile offload copy flag setting * clang format * enable copy from cpu to be able to do synchronous copy * clang format * add more unit tests * add more unit tests * add more ref unit tests * clang format * fixed a bug error * tmp code backup * clang format * fixed an onnx verify unit test * add more unit tests * clang format * reverse a change * fix cppcheck error * fix cppcheck error * fix to print all instructions in program execution * clang format * fix bugs related to memory coloring and offload copy to be true * clang format * remove unnecessary include header file * sort test cases in ref_cpu_ops alphabetically * clang format * add a flag to disable cpu target in verification test * change the way to disable some tests * clang format * disable verify unit test of the if operators * add a function call to have more code coverage * fix a build error * fix review comments * fix review comments * clang format * add a api gpu unit test for more code coverage * clang format * change to use instruction.size() as node index * move the calc_implicit_deps function to module class as a member function * clang format * move the offload_copy flag setting to lowering * clang format * assign the module_eval lambda function to a variable to simplify code * clang format * move the compute function from ref/gpu implementation to the main if operator * clang format * fix cpp check error * add a unit test for more code coverage * clang format * add unit test to calculate implicit deps * add a python unit test * clang format * refine a unit test to have more code coverage * clang format * chang the way of wrap up arguments for sub modules * clang format * fix some build errors * code cleanup * refine unit tests to have more code coverage * clang format * refine unit test to have more code coverage * code backup * clang format * add memory coloring test * refine memory coloring unit test * clang format * remove an unnecessary line * remove an unused line * remove an unnecessary parameter in the lambda function * clang format * refine a unit test * remove an unnecessary line * refine unit tests to have more code coverage * clang format * combine two lines * add one more unit test for more code coverage * clang format * add one more unit test * clang format * fix review comments * refine a print out information * fix review comments * clang format * change the sync copy to using a gpu device sync * clang format * remove unnecessary code Co-authored-by:mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 17 Mar, 2021 1 commit
-
-
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:
Paul <pfultz2@yahoo.com> Co-authored-by:
mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 25 Feb, 2021 1 commit
-
-
Paul Fultz II authored
* Fix bug where instructions were not printed when doing TRACE_EVAL * Formatting Co-authored-by:mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 05 Feb, 2021 1 commit
-
-
Paul Fultz II authored
* Normalize compute functions * Formatting * Save normalization flag to the file * Formatting * Remove tuned functions * Formatting * Use in_index Co-authored-by:
Shucai Xiao <shucai@gmail.com> Co-authored-by:
mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 28 Oct, 2020 1 commit
-
-
Paul Fultz II authored
* Fix fusions in bert model * Formatting * Add unit tests * Formatting * Fix one_half matcher * Workaround ICE on gcc * Formatting * Tidy fixes Co-authored-by:mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 06 Mar, 2020 1 commit
-
-
Shucai Xiao authored
* Add initial api * Formatting * Add more api * Formatting * Add auto api generation * Formatting * Fix some compilation errors * Change handle struct * Formatting * Fix reamining compilation errors * Formatting * fixed a bug related to number of outputs * 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 * code backup for support multiple outputs * clang format * change migraphx api to support multiple program outputs * clang format * change api implementation * clang format * clang format * fix a build error * additional changes * clang format * change api for correct automatic generation * clang format * fix unit test error * fix unit test error * fix unit tests error * support multiple program outputs * clang format * remove @ from the add_return name * Add nolint * Try fix formatting * Formatting * formatting * formatting * Fix formatting * code cleanup * clang format * fix cppcheck error * fix a cppcheck error * clang format * fix review comments * clang format * fix cppcheck error * clang format * record graph output name * clang format * refine print the add_return instruction * clang format * fix cppcheck error * clang format * refine the name of the add_return instruction * fixed a bug related to workspace * fixed two small bugs * clang format * add more unit tests for multiple program outputs * clang format * change an error info * clang format * fix cppcheck error * add unit test for better code coverage * change to reduce code change * clang format * remove storing program output * fix cppcheck error * fix review comments * clang format * clang format * remove unnecessary change * resolve an assert error * clang format * change the output name with prefix '#' * changes in quantization function to support the returns instructin * clang format * refine unit tests * clang format * refine profiling print out report Co-authored-by:
Paul <pfultz2@yahoo.com> Co-authored-by:
Khalique <15948690+kahmed10@users.noreply.github.com> Co-authored-by:
mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 03 May, 2019 1 commit
-
-
Paul authored
-
- 02 May, 2019 1 commit
-
-
Paul authored
-
- 01 May, 2019 2 commits
- 30 Apr, 2019 2 commits
- 16 Apr, 2019 1 commit
-
-
Shucai Xiao authored
-
- 03 Apr, 2019 2 commits
-
-
Shucai Xiao authored
-
Shucai Xiao authored
-
- 12 Mar, 2019 1 commit
-
-
Paul authored
-
- 13 Feb, 2019 1 commit
-
-
mei-ye authored
-
- 12 Feb, 2019 1 commit
-
-
mei-ye authored
-
- 09 Feb, 2019 3 commits
- 16 Jan, 2019 2 commits
- 10 Jan, 2019 2 commits