Skip to content

Add gemv_batched and gemv_strided_batched unit tests#645

Merged
jzuniga-amd merged 7 commits into
ROCm:developfrom
jzuniga-amd:gemvUnitTests
Aug 17, 2019
Merged

Add gemv_batched and gemv_strided_batched unit tests#645
jzuniga-amd merged 7 commits into
ROCm:developfrom
jzuniga-amd:gemvUnitTests

Conversation

@jzuniga-amd
Copy link
Copy Markdown
Contributor

Enable unit tests for gemv_batched and gemv_strided_batched

- Add function templates for gemv_strided_batched and gemv_batched (in rocblas_gemv.hpp)

to enable correct calls of these functions from other functions or from outside rocblas.
- Add batch and strides checks and quick return in rocblas_gemv_batched.cpp and rocblas_gemv_strided_batched.cpp
- Add unit tests testing_gemv_batched.hpp and testing_gemv_strided_batched.hpp
- Add new class device_batch_vector in rocblas_vector.hpp. Needed for the batched case.
- Add new template headers to rocblas.hpp
- Add new template header and especializations for norm_check_general to work with the batched case (in norm.hpp and norm.cpp)
- Add new template and espcializations for unit_check_general to work with the batched case (in unit.hpp)
- Add new arguments, stride_x and stride_y (needed to test gemv_strided_batched) in rocblas_arguments.hpp and rocblas_common.yaml. Set stride_x and stride_y defaults to zero in rocblas_common.yaml to correctly generate the tests of those functions that do not need these arguments
- Include the new tests in client.cpp as well as a description of the new arguments
- Add the new functions in rocblas_template.yaml to process YAML from log files
- Add batched and strided_batched template test cases in gemv_gtest.cpp
- Add new yaml test-data files gemv_batched_gtest.yaml and gemv_strided_batched_gtest.yaml
- Include the new yaml files in rocblas_gtest.yaml
- Add the new yaml files to the list of dependencies for rocblas_gtest.data in CMakeLists.txt

- Add function templates for gemv_strided_batched and gemv_batched (in rocblas_gemv.hpp)
  to enable correct calls of these functions from other functions or from outside rocblas.
- Add batch and strides checks and quick return in rocblas_gemv_batched.cpp and rocblas_gemv_strided_batched.cpp
- Add unit tests testing_gemv_batched.hpp and testing_gemv_strided_batched.hpp
- Add new class device_batch_vector in rocblas_vector.hpp. Needed for the batched case.
- Add new template headers to rocblas.hpp
- Add new template header and especializations for norm_check_general to work with the batched case (in norm.hpp and norm.cpp)
- Add new template and espcializations for unit_check_general to work with the batched case (in unit.hpp)
- Add new arguments, stride_x and stride_y (needed to test gemv_strided_batched) in rocblas_arguments.hpp and
  rocblas_common.yaml. Set stride_x and stride_y defaults to zero in rocblas_common.yaml to correctly generate the tests of
  those functions that do not need these arguments
- Include the new tests in client.cpp as well as a description of the new arguments
- Add the new functions in rocblas_template.yaml to process YAML from log files
- Add batched and strided_batched template test cases in gemv_gtest.cpp
- Add new yaml test-data files gemv_batched_gtest.yaml and gemv_strided_batched_gtest.yaml
- Include the new yaml files in rocblas_gtest.yaml
- Add the new yaml files to the list of dependencies for rocblas_gtest.data in CMakeLists.txt
@leekillough
Copy link
Copy Markdown
Contributor

There are 770 failed tests: test.txt

Copy link
Copy Markdown
Contributor

@leekillough leekillough left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does not build. CMake error with Tensile.

Please merge with main develop first, and then rerun tests

(gemvUnitTests branch does build and passes all checks)

Copy link
Copy Markdown
Contributor

@leekillough leekillough left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It passes all tests now, and with Tensile fixed, it builds okay.

@jzuniga-amd jzuniga-amd merged commit 938905b into ROCm:develop Aug 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants