- 21 Aug, 2022 1 commit
-
-
varunsh authored
* Update is_supported * Return object from is_supported * Return by reference in interator
-
- 09 Aug, 2022 1 commit
-
-
Paul Fultz II authored
* Allow license_stamper.py to be ran from any directory * Format Co-authored-by:kahmed10 <15948690+kahmed10@users.noreply.github.com>
-
- 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>
-
- 30 Jul, 2022 1 commit
-
-
kahmed10 authored
Added an Accuracy checker to the tools directory. Currently compares ONNX FP32 models against ORT CPUEP
-
- 22 Jul, 2022 1 commit
-
-
Umang Yadav authored
C++ API is not printing thrown exception string. this improves on it.
-
- 12 Jul, 2022 1 commit
-
-
Paul Fultz II authored
This will ensure that migraphx.h can be included from a C compiler, and check that the C API can be called. This includes stdbool.h which is needed when using bool from C.
-
- 08 Jul, 2022 1 commit
-
-
varunsh authored
Added is_supported and get_target_assignments methods to the target and program, respectively, to eventually support multi-target compilation and execution.
-
- 24 Jun, 2022 2 commits
-
-
Ted Themistokleous authored
Used to determine what files contain a license and are stamped. If not we exit and return an error code that can be later ingested by another script, as well as a list of the outstanding files in questions. Currently baked in the list of files we should support or not support with licenses in them a well as some stuff to quickly ignore
-
Umang Yadav authored
Adds compute_method for the experimental custom ops. Adds a test for the same using HIP APIs. Depends on #1183 Solves #1101
-
- 23 Jun, 2022 1 commit
-
-
Ted Themistokleous authored
Regenerate notebook header for licensing
-
- 22 Jun, 2022 1 commit
-
-
Ted Themistokleous authored
Updated each source file in the repo with the existing license.
-
- 17 Jun, 2022 1 commit
-
-
kahmed10 authored
* add allocate op header * formatting * add replace_allocate pass * formatting * move output param to remove_allocate pass * formatting * fix bugs in replace_allocate pass * formatting * fix verify if tests * formatting * move if op logic * formatting * cleanup lowering * cleanup lowering * formatting * fix tidy * formatting * fix tidy * add cpu allocate check * formatting * change cpu allocate in pass * formatting * add some tests for replace_allocate pass * formatting * pass by ref * fix run_pass * formatting * update variable name for module * update dce to use contains() and fix tidy * formatting * update cppcheck * add if test * formatting * add if test * rename var to mod_output_names * formatting * remove conditional * update allocate op and tests * formatting * update replace_allocate tests * update create_output_names() and conditional in replace_allocate * formatting * remove extra variable in replace_allocate * update tools script for allocation_model Co-authored-by:
Umang Yadav <29876643+umangyadav@users.noreply.github.com> Co-authored-by:
Chris Austen <causten@users.noreply.github.com> Co-authored-by:
Paul Fultz II <pfultz2@yahoo.com>
-
- 01 Jun, 2022 1 commit
-
-
kahmed10 authored
update protobuf version
-
- 13 May, 2022 1 commit
-
-
Chris Austen authored
Our documentation indicates a user with sudo can run the install_prereqs.sh file. Turns out that the file is not complete enough to run on Ubuntu 18.04/20.04 independently. I updated the file to resolve the failures. resolves #1191
-
- 28 Mar, 2022 1 commit
-
-
Paul Fultz II authored
Use ifdef instead of comment for the auto-generated method declarations for type erased classes (#1138) It seems the formatting of comments are unreadable for larger methods, so instead just generate a struct with the methods in the interface and add a comment if its optional. It wraps this in #ifdef TYPE_ERASED_DECLARATION(assuming this would never be defined) instead of #if 0, so most editors can still provide syntax highlighting(although I think vscode with clangd will still gray it out unfortunately).
-
- 24 Mar, 2022 1 commit
-
-
Paul Fultz II authored
This creates a custom op which has name() and compute_shape() methods.
-
- 15 Mar, 2022 1 commit
-
-
Umang Yadav authored
API includes following create_module, get_main_module add_instruction without module args add_instruction with module args add_parameter add_return
-
- 09 Mar, 2022 1 commit
-
-
kahmed10 authored
Add a callable C++ API to migraphx
-
- 02 Mar, 2022 1 commit
-
-
bpickrel authored
Update the base version of clang-format from 5.0 to 10.0
-
- 25 Feb, 2022 1 commit
-
-
Paul Fultz II authored
wrapped in a any_ptr class so the type can be checked at runtime for a mismatch.
-
- 16 Feb, 2022 1 commit
-
-
kahmed10 authored
-
- 01 Feb, 2022 1 commit
-
-
Paul Fultz II authored
This will also check the types using mypy on the CI.
-
- 07 Dec, 2021 1 commit
-
-
Shucai Xiao authored
1. Previous implementation assumes inputs and outputs .pb files are ordered, but it is not the case. So, we should use the name of the tensors in the input/output .pb files to match the input and output in the onnx model. (This change applies to the BERT_Squad model) 2. When parsing a model with dynamic input shape, current implementation uses the default batch_size for the unknown dims, which can cause parsing error for some cases (e.g. mask_rcnn model). The solution is we first read an input to get the shape, then use these shapes to parse the onnx model.
-
- 05 Dec, 2021 1 commit
-
-
Cagri authored
Adds description for roctx knob of migraphx-driver in documentation.
-
- 22 Nov, 2021 1 commit
-
-
Cagri authored
This provides a helper script to run rocTX markers with migraphx-driver and reduces the number of steps a user would go through running rocTX knob. Run: python roctx.py --run --onnx_file <ONNX_FILE> --migraphx_args "--onnx --gpu --fp16 --batch 16" --out outputfolder Runs and parses the run output (JSON file). An example output is given below: SUM MIN MAX Marker start: gpu::convolution 5272 10 563 Marker start: gpu::add_relu 605 12 18 Marker start: gpu::gather 299 145 154 Marker start: gpu::mul_add 227 14 57 Marker start: gpu::sub 177 13 42 Marker start: gpu::concat 169 22 31 Marker start: gpu::triadd_relu 163 15 18 Marker start: load 141 0 3 Marker start: hip::hip_copy_literal 111 0 3 Marker start: gpu::add 58 13 17 Marker start: broadcast 52 0 3 Marker start: gpu::convert 31 15 16 Marker start: slice 11 0 1 Marker start: gpu::pooling 9 9 9 Marker start: step 2 2 2 Marker start: @param 2 0 1 Marker start: reshape 1 0 1 Marker start: hip::hip_allocate_memory 1 1 1 Marker start: check_context::migraphx::version_... 0 ERR ERR TOTAL TIME: 7331 us JSON FILE PATH: [...]/rpl_data_211019_195229_9369/input_results_211019_195229/trace.json Parse: python roctx.py --parse --json_path <JSON PATH FROM RUN> Note: The parse knob is made available if the user wants to parse an already existing JSON output.
-
- 17 Nov, 2021 1 commit
-
-
Paul Fultz II authored
Currently, eliminate_contiguous will never remove contiguous for operators that use module inputs due to the fact that it doesn't pass the module inputs to compute_shape. - Update to pass the module inputs correctly to compute_shape - Fix the overloads of compute_shape so that when passed an empty vector of module inputs it will call the overload without module inputs - Add tests with contiguous and pointwise module function. - Move add_pointwise function to a seperate header to reuse across different tests
-
- 11 Nov, 2021 1 commit
-
-
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.
-
- 18 Oct, 2021 1 commit
-
-
Paul Fultz II authored
Designed to allow a user to format the values needed for the json_string: migraphx::operation("reduce_mean", "{axes : [%i, %i, %i, %i]}", axes[0], axes[1], axes[2], axes[3]) instead of needing to use string concat or stringstream
-
- 15 Oct, 2021 1 commit
-
-
Cagri authored
Added features: This enables wrapping each migraphx operator with rocTX markers. It adds new knob trace to migraphx-driver binary. Limitation: rocTX standalone does not output a file, it needs to be used with rocprof. Example command line: /opt/rocm/bin/rocprof -i ./in.txt --hip-trace --roctx-trace --flush-rate 10ms --timestamp on -d cagri_out --obj-tracking on /opt/rocm/bin/migraphx-driver trace ./resnet50-v2-7.onnx --onnx --gpu Co-authored-by:Shucai Xiao <shucai@gmail.com>
-
- 23 Sep, 2021 1 commit
-
-
Umang Yadav authored
Add forward compatibility support for compile options
-
- 17 Sep, 2021 1 commit
-
-
Umang Yadav authored
make file_options struct an opaque object for ABI compatibility, uses make generate to auto-generate and includes modified tests. Co-authored-by:Paul Fultz II <pfultz2@yahoo.com>
-
- 16 Sep, 2021 1 commit
-
-
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:
Paul <pfultz2@yahoo.com> Co-authored-by:
mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 07 Sep, 2021 1 commit
-
-
Paul Fultz II authored
* Add module pass manage
-
- 24 Aug, 2021 1 commit
-
-
Paul Fultz II authored
-
- 05 Aug, 2021 1 commit
-
-
Shucai Xiao authored
* add python test runner * fix review comments * move test runner to the tools folder * raise an error if some cases failed * clang format * fix review comments Co-authored-by:
Paul Fultz II <pfultz2@yahoo.com> Co-authored-by:
Chris Austen <causten@users.noreply.github.com>
-
- 30 Jul, 2021 1 commit
-
-
Paul Fultz II authored
-
- 08 Jul, 2021 1 commit
-
-
Paul Fultz II 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 * Always allocate * Fix tidy warning * Add const * Add missing lifetime annotations Co-authored-by:mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 27 Jun, 2021 1 commit
-
-
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:
Paul <pfultz2@yahoo.com> Co-authored-by:
mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-
- 20 Jun, 2021 1 commit
-
-
Shucai Xiao authored
* try turning on ort tests in rocm4.2 * try rocm4.1
-
- 26 May, 2021 1 commit
-
-
Paul Fultz II authored
* Add rbuild.ini file * Skip rbuild step * Use rbuild for gh runners * Update ini file * Invalidate cache * Use full path for ccache * Use master Co-authored-by:mvermeulen <5479696+mvermeulen@users.noreply.github.com>
-