1. 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
  2. 08 Dec, 2020 1 commit
    • Paul Fultz II's avatar
      Refactor to use make_op almost everywhere (#696) · 8d21fdc9
      Paul Fultz II authored
      * Load op when serializing
      
      * Formatting
      
      * Add missing clip field
      
      * Use make_op almost everywhere
      
      * Formatting
      
      * More make ops for rnns
      
      * Get rid of spaces
      
      * Formatting
      
      * Remove operators headers
      
      * Formatting
      
      * Remove unused op headers
      
      * Increase line threshold
      8d21fdc9
  3. 16 Nov, 2020 1 commit
    • Shucai Xiao's avatar
      Normalize ops (#667) · 8443ecd1
      Shucai Xiao authored
      
      
      * add a pass to normalize ops
      
      * clang format
      
      * add unit tests
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * add support for slice in the normalize_op function
      
      * clang format
      
      * add operation method api for whether we need to call normalize_op
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * rename a function namejJ
      
      * clang format
      
      * change compute_shape to normalize_compute_shape for corresponding operators
      
      * clang format
      
      * remove unnecessary code
      
      * fix various issues
      
      * clang format
      
      * add attributes to operators having axis attributes
      
      * clang format
      
      * fixed jenkins build error
      
      * clang format
      
      * fix a bug related to slice
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * rename a file
      
      * fix cppcheck error
      
      * some code refinement
      
      * clang format
      
      * change attributes to enum
      
      * clang format
      
      * refine the enum
      
      * clang format
      
      * remove unnecessary code
      
      * add unit tests for more code coverage and fixed a bug
      
      * clang format
      
      * remove unnecessary changes
      
      * change normalize_axes to normalize
      
      * clang format
      
      * revert back the changes in broadcast.hpp
      
      * rename normalize_axes to normalize
      
      * fix review comments
      
      * clang format
      
      * Add flag to enable cpu backend
      
      * Make buffers shared
      
      * Enable optimizations
      
      * Formatting
      
      * Try to avoid ambiguous assign in value class
      
      * fixed a build error
      
      * clang format
      
      * add the normalize_ops pass to the ref target
      
      * refactor program to module to normalize_ops pass
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      8443ecd1
  4. 10 Nov, 2020 1 commit
  5. 09 Nov, 2020 1 commit
    • Paul Fultz II's avatar
      Add hip compilation (#664) · f71af72a
      Paul Fultz II authored
      
      
      * Add compiler flags
      
      * Add missing include
      
      * Add filesystem header
      
      * Formatting
      
      * Add tmp_dir to run
      
      * Formatting
      
      * Kernel compilation and launching
      
      * Formatting
      
      * Seperate pack_args
      
      * Formatting
      
      * Add alignment tests
      
      * Formatting
      
      * Add compile test
      
      * Formatting
      
      * Complete compile test
      
      * Formatting
      
      * Use is_regular_file free function
      
      * Fix is_regular_file call
      
      * Fix tidy issues
      
      * Fix tidy
      
      * Fix tidy issue
      
      * Print size in read_buffer to debug issue on jenkins
      
      * Add hip flags before src file
      
      * Fix reading output files
      
      * Fix unsued variable warning
      
      * Formatting
      
      * Formatting
      
      * Disable tidy check
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      f71af72a
  6. 04 Nov, 2020 1 commit
    • Paul Fultz II's avatar
      Split cpu and reference implementation (#671) · 500d9441
      Paul Fultz II authored
      
      
      * Add all_targets cmake target
      
      * Rename target
      
      * Add ref target
      
      * Rename tests
      
      * Refactor compiler target
      
      * Formatting
      
      * Verify for every target
      
      * Formatting
      
      * Add verify test suite
      
      * Formatting
      
      * Add initial test programs
      
      * Formatting
      
      * Add rnn tests
      
      * Formatting
      
      * Validate gpu
      
      * Formatting
      
      * Remove old gpu tests
      
      * Fix gpu tests
      
      * Fix ref error
      
      * Fix tidy issues
      
      * Formatting
      
      * Tidy fixes
      
      * Fix header in python api
      
      * Rename to ref
      
      * Use ref in verify_onnx
      
      * Fix tidy issue
      
      * Build with verbose on
      
      * Fix typo
      
      * Remove verbose
      
      * rename some cpu prefix to ref
      Co-authored-by: default avatarShucai Xiao <Shucai.Xiao@amd.com>
      500d9441
  7. 19 Oct, 2020 1 commit
    • Shucai Xiao's avatar
      Op constructor c/python api (#636) · e939ddcd
      Shucai Xiao authored
      
      
      * code backup
      
      * clang format
      
      * add the python api for op construction
      
      * clang format
      
      * add converting a json string to a value and then pass to make_op
      
      * fix a build error
      
      * support kwargs decoder
      
      * clang format
      
      * code backup
      
      * clang format
      
      * temp code backup
      
      * clang format
      
      * temp code backup
      
      * convert input string to the json format
      
      * clang format
      
      * remove unnecessary code
      
      * fix review comments
      
      * clang format
      
      * add a comment
      
      * add unit tests
      
      * clang format
      
      * fix cppcheck error
      
      * fix review comments
      
      * clang format
      
      * rename two files
      
      * refine an error report
      
      * clang format
      
      * remove unnecessary code
      
      * fix a review comments
      
      * add convert_to_json unit tests
      
      * clang format
      
      * fix cppcheck error
      
      * fix cppcheck error
      
      * add more unit tests
      
      * clang format
      
      * fix clang tidy error
      
      * clang format
      
      * fixed an test failure
      
      * fix cppcheck error
      
      * fix a bug
      
      * fix cppcheck error
      
      * fix jenkins build error
      
      * fix a jenkin build error by wrap up string
      
      * clang format
      
      * another try
      
      * clang format
      
      * fix jenkins build error
      
      * clang format
      
      * remove unnecessary code
      
      * fix review comments
      
      * fix cppcheck error
      
      * fix review comments
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      e939ddcd
  8. 15 Oct, 2020 1 commit
    • turneram's avatar
      Added greater and less operators (#660) · 48ffbfa5
      turneram authored
      
      
      * Added greater and less operators
      
      * Fixed ops_test.cpp
      
      * Set commutative to false for less, greater
      
      * Refactored parse_equal/less/greater into parse_compare_op
      
      * Removed unnecessary function attributes() from greater.hpp/less.hpp
      
      * Added op_name arguments
      
      * Removed local settings
      
      * Formatting
      
      * Missing comma
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Formatting
      
      * Missing space
      Co-authored-by: default avatarPaul Fultz II <pfultz2@yahoo.com>
      48ffbfa5
  9. 09 Oct, 2020 1 commit
    • Paul Fultz II's avatar
      Add parallel stream analysis (#629) · 1d98fbb4
      Paul Fultz II authored
      * Add intial multi stream analysis
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Remove comment
      
      * Analyze streams on the gpu
      
      * Formatting
      
      * Fix nstream
      
      * Formatting
      
      * Add test for return
      
      * Formatting
      
      * Make sure return has a stream assignment
      
      * Formatting
      
      * Fix asserts and checks
      
      * Improve error message for out-of-order sequence
      
      * Formatting
      1d98fbb4
  10. 10 Sep, 2020 1 commit
    • Paul Fultz II's avatar
      Add load/save function for program (#623) · 63c5582a
      Paul Fultz II authored
      
      
      * Add save/load functions
      
      * Formatting
      
      * Add loading and saving to the driver
      
      * Formatting
      
      * Add return
      
      * Serialize the context with the program
      
      * Formatting
      
      * Add python API
      
      * Formatting
      
      * Add c/c++ apis
      
      * Formatting
      
      * Add tests
      
      * Formatting
      
      * Fix tidy error
      
      * Fix python doc
      
      * Restore python code
      
      * Add function name to errors
      
      * Formatting
      
      * Use lvalue for writing
      
      * Serialize context
      
      * Fix convolution and pooling operator for miopen
      
      * Formatting
      
      * Add const ref
      
      * Set target name to gpu
      
      * Add target tests
      
      * Formatting
      
      * Move register target to cpp file
      
      * Fix target test
      
      * Use make_target in driver
      
      * Formatting
      
      * Use make_target for the API
      
      * Formatting
      
      * Add cpu include
      
      * Increase timeout
      
      * Add more tests
      
      * Formatting
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      63c5582a
  11. 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
  12. 26 Aug, 2020 1 commit
    • Paul Fultz II's avatar
      Add C++ ability to construct operators by name (#616) · 002eb4e2
      Paul Fultz II authored
      
      
      * Add make_op function
      
      * Formatting
      
      * Add more values
      
      * Formatting
      
      * Remove templates parse_conv functions
      
      * Formatting
      
      * Remove mat_mul template
      
      * Formatting
      
      * Reduce header includes
      
      * Fix compiling for gpu
      
      * Formatting
      
      * Use make_op in lowering
      
      * Formatting
      
      * Sort lines
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Fix tidy error
      
      * Formatting
      
      * Add const refs
      
      * Add explicit this
      
      * Add more const refs
      
      * Sort the program
      
      * Remove commented out code
      
      * Formatting
      
      * Infer gpu prefix
      
      * Formatting
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      002eb4e2
  13. 25 Aug, 2020 1 commit
    • Paul Fultz II's avatar
      Improve layernorm performance (#613) · 56b3bf58
      Paul Fultz II authored
      * Use increment instead of division to compute register offset
      
      * Formatting
      
      * Limit layernorm to 1024 elements
      
      * Formatting
      
      * Add verification to driver
      
      * Formatting
      
      * Remove early return
      
      * Use block_size 256
      
      * Vectorize the kernel
      
      * Formatting
      
      * Convert to vector type
      
      * Add layernorm tests
      
      * Formatting
      
      * Formatting
      
      * Refactor layernorm to run both algos
      
      * Formatting
      
      * Fix compile error
      
      * Fix tidy warnings
      
      * Formatting
      
      * Add layernorm function
      
      * Formatting
      56b3bf58
  14. 18 Aug, 2020 1 commit
    • Paul Fultz II's avatar
      Register all operators in migraphx (#604) · e8be8548
      Paul Fultz II authored
      * Register ops for main migraphx
      
      * Formatting
      
      * Register cpu ops
      
      * Formatting
      
      * Show list of operators in the driver
      
      * Formatting
      
      * Simplify regiter
      
      * Try to register gpu ops
      
      * Fix compiler errors
      
      * Register rest of the gpu operators
      
      * Add some tests
      
      * Formatting
      
      * Fix gcc compiler warnings
      
      * Formatting
      
      * Fix tidy warnings
      
      * Fix compile error
      
      * Use correct op name
      
      * Register layer norm
      
      * Use const ref
      
      * Make run const
      e8be8548
  15. 13 Aug, 2020 1 commit
  16. 12 Aug, 2020 1 commit
  17. 10 Aug, 2020 1 commit
    • Shucai Xiao's avatar
      Convert value to json (#592) · a5648d9c
      Shucai Xiao 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
      
      * backup code change
      
      * Fix maro name
      
      * Add more test cases to improve coverage
      
      * Formatting
      
      * Add more tests
      
      * Formatting
      
      * Fix assertion
      
      * code backup
      
      * clang format
      
      * Fix bug with keyless assignment
      
      * Formatting
      
      * add implementation of converting json to migraphx::value
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * clang format
      
      * code backup
      
      * code refactor
      
      * add unit tests
      
      * separate json conversion from serialization
      
      * clang format
      
      * add the missing files
      
      * refine code
      
      * clang format
      
      * fix cppcheck error
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * code backup
      
      * fix cppcheck error
      
      * refine an implementation
      
      * clang format
      
      * fix review comments
      
      * clang format
      
      * fix review comments and add more unit tests
      
      * clang format
      
      * code backup to try
      
      * fix review comments and add more unit tests
      
      * clang format
      
      * some refinement
      
      * clang format
      
      * fix review comments
      
      * remove unnecessary code
      
      * add assignment of null
      Co-authored-by: default avatarPaul <pfultz2@yahoo.com>
      Co-authored-by: default avatarmvermeulen <5479696+mvermeulen@users.noreply.github.com>
      a5648d9c
  18. 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
  19. 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
  20. 07 Feb, 2020 1 commit
    • Paul Fultz II's avatar
      Add C and C++ api (#430) · b949da7f
      Paul Fultz II 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
      
      * 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
      
      * Add nolint
      
      * Try fix formatting
      
      * Formatting
      
      * formatting
      
      * formatting
      
      * Fix formatting
      Co-authored-by: default avatarShucai Xiao <shucai.xiao@amd.com>
      Co-authored-by: default avatarkahmed10 <15948690+kahmed10@users.noreply.github.com>
      b949da7f
  21. 17 Nov, 2019 1 commit
  22. 04 Sep, 2019 1 commit
  23. 28 Aug, 2019 1 commit
  24. 12 Aug, 2019 1 commit
  25. 10 Jul, 2019 1 commit
  26. 05 Jun, 2019 1 commit
  27. 18 Apr, 2019 2 commits
  28. 16 Apr, 2019 1 commit
  29. 13 Apr, 2019 1 commit
  30. 09 Apr, 2019 2 commits
  31. 03 Apr, 2019 1 commit
  32. 28 Mar, 2019 1 commit
  33. 26 Mar, 2019 1 commit
  34. 13 Mar, 2019 1 commit
  35. 12 Mar, 2019 1 commit
  36. 01 Mar, 2019 1 commit
  37. 12 Feb, 2019 1 commit
  38. 07 Feb, 2019 1 commit