Skip to content

Commit

Permalink
added support for gfx940,gfx941,gfx942 (#335)
Browse files Browse the repository at this point in the history
* added support for gfx940,gfx941,gfx942

* Allow CI to pick up dependencies from same branch

* Adjust SpMV tests for gfx940 (#588)

* Adjust tests for gfx940

* Adjust tests for gfx940 spmv_csc

---------

Co-authored-by: jsandham <james.sandham@amd.com>

* Adjust tests for rounding errors on gfx940

* Fix rounding errors encountered on gfx940

* Adjust failing csrmv test on gfx940

---------

Co-authored-by: Eiden Yoshida <47196116+eidenyoshida@users.noreply.github.com>
Co-authored-by: jsandham <james.sandham@amd.com>
Co-authored-by: James Sandham <33790278+jsandham@users.noreply.github.com>
  • Loading branch information
4 people authored Jul 7, 2023
1 parent 8a971a8 commit 2ac2e27
Show file tree
Hide file tree
Showing 8 changed files with 238 additions and 7 deletions.
2 changes: 1 addition & 1 deletion .jenkins/common.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ def runCompileCommand(platform, project, jobName, boolean sameOrg=false)
{
project.libraryDependencies.each
{ libraryName ->
getDependenciesCommand += auxiliary.getLibrary(libraryName, platform.jenkinsLabel, 'develop', sameOrg)
getDependenciesCommand += auxiliary.getLibrary(libraryName, platform.jenkinsLabel, null, sameOrg)
}
}

Expand Down
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@

Full documentation for rocSPARSE is available at [rocsparse.readthedocs.io](https://rocsparse.readthedocs.io/en/latest/).

## rocSPARSE 2.5.3 for ROCm 5.7.0
## rocSPARSE 2.5.4 for ROCm 5.7.0
### Added
- Added more mixed precisions for SpMV, (matrix: float, vectors: double, calculation: double) and (matrix: rocsparse_float_complex, vectors: rocsparse_double_complex, calculation: rocsparse_double_complex)
- Added support for gfx940, gfx941 and gfx942
### Improved
- Fixed a bug in csrsm and bsrsm
### Known Issues
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ endif()
#Set the AMDGPU_TARGETS with backward compatibility
if(COMMAND rocm_check_target_ids)
rocm_check_target_ids(DEFAULT_AMDGPU_TARGETS
TARGETS "gfx803;gfx900:xnack-;gfx906:xnack-;gfx908:xnack-;gfx90a:xnack-;gfx90a:xnack+;gfx1030;gfx1100;gfx1101;gfx1102"
TARGETS "gfx803;gfx900:xnack-;gfx906:xnack-;gfx908:xnack-;gfx90a:xnack-;gfx90a:xnack+;gfx940;gfx941;gfx942;gfx1030;gfx1100;gfx1101;gfx1102"
)
else()
# Use target ID syntax if supported for AMDGPU_TARGETS
Expand Down Expand Up @@ -179,7 +179,7 @@ if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
endif( )

# Setup version
set(VERSION_STRING "2.5.3")
set(VERSION_STRING "2.5.4")
rocm_setup_version(VERSION ${VERSION_STRING})
set(rocsparse_SOVERSION 0.1)

Expand Down
56 changes: 56 additions & 0 deletions clients/tests/test_bsrmv.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ Tests:

- name: bsrmv_file
category: pre_checkin
hardware: [gfx900, gfx906, gfx908, gfx90a, gfx1030]
function: bsrmv
precision: *single_double_precisions
M: 1
Expand All @@ -162,6 +163,25 @@ Tests:
nos5,
nos7]

- name: bsrmv_file
category: pre_checkin
hardware: [gfx940]
function: bsrmv
precision: *double_only_precisions
M: 1
N: 1
block_dim: [2, 15]
alpha_beta: *alpha_beta_range_checkin
direction: [rocsparse_direction_column]
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_one]
matrix: [rocsparse_matrix_file_rocalution]
storage: [rocsparse_storage_mode_sorted, rocsparse_storage_mode_unsorted]
filename: [scircuit,
nos3,
nos5,
nos7]

- name: bsrmv_file
category: pre_checkin
function: bsrmv
Expand Down Expand Up @@ -270,6 +290,7 @@ Tests:

- name: bsrmv_file
category: nightly
hardware: [gfx900, gfx906, gfx908, gfx90a, gfx1030]
function: bsrmv
precision: *single_double_precisions
M: 1
Expand All @@ -286,6 +307,41 @@ Tests:
sme3Dc,
shipsec1,
webbase-1M]

- name: bsrmv_file
category: nightly
hardware: [gfx940]
function: bsrmv
precision: *single_double_precisions
M: 1
N: 1
block_dim: [2, 12]
alpha_beta: *alpha_beta_range_nightly
direction: [rocsparse_direction_row]
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_file_rocalution]
storage: [rocsparse_storage_mode_sorted, rocsparse_storage_mode_unsorted]
filename: [amazon0312,
Chebyshev4,
webbase-1M]

- name: bsrmv_file
category: nightly
hardware: [gfx940]
function: bsrmv
precision: *double_only_precisions
M: 1
N: 1
block_dim: [2, 12]
alpha_beta: *alpha_beta_range_nightly
direction: [rocsparse_direction_row]
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_file_rocalution]
storage: [rocsparse_storage_mode_sorted, rocsparse_storage_mode_unsorted]
filename: [sme3Dc,
shipsec1]

- name: bsrmv_file
category: nightly
Expand Down
59 changes: 58 additions & 1 deletion clients/tests/test_csrmv.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,7 @@ Tests:

- name: csrmv_file
category: pre_checkin
hardware: [gfx900, gfx906, gfx908, gfx90a, gfx1030]
function: csrmv
precision: *single_double_precisions
M: 1
Expand All @@ -204,6 +205,25 @@ Tests:
nos5,
nos7]

- name: csrmv_file
category: pre_checkin
hardware: [gfx940]
function: csrmv
precision: *double_only_precisions
M: 1
N: 1
alpha_beta: *alpha_beta_range_checkin
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_file_rocalution]
matrix_type: [rocsparse_matrix_type_general]
spmv_alg: [rocsparse_spmv_alg_csr_adaptive]
filename: [scircuit,
nos1,
nos3,
nos5,
nos7]

- name: csrmv_file
category: nightly
function: csrmv
Expand All @@ -215,14 +235,34 @@ Tests:
baseA: [rocsparse_index_base_one]
matrix: [rocsparse_matrix_file_rocalution]
matrix_type: [rocsparse_matrix_type_general]
spmv_alg: [rocsparse_spmv_alg_csr_adaptive, rocsparse_spmv_alg_csr_stream]
spmv_alg: [rocsparse_spmv_alg_csr_adaptive]
filename: [bibd_22_8,
bmwcra_1,
amazon0312,
ASIC_320k,
sme3Dc,
shipsec1]

- name: csrmv_file
category: nightly
hardware: [gfx940]
function: csrmv
precision: *double_only_precisions
M: 1
N: 1
alpha_beta: *alpha_beta_range_nightly
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_one]
matrix: [rocsparse_matrix_file_rocalution]
matrix_type: [rocsparse_matrix_type_general]
spmv_alg: [rocsparse_spmv_alg_csr_stream]
filename: [bibd_22_8,
bmwcra_1,
amazon0312,
ASIC_320k,
sme3Dc,
mac_econ_fwd500]

- name: csrmv_file
category: quick
function: csrmv
Expand All @@ -240,6 +280,7 @@ Tests:

- name: csrmv_file
category: pre_checkin
hardware: [gfx900, gfx906, gfx908, gfx90a, gfx1030]
function: csrmv
precision: *single_double_precisions_complex
M: 1
Expand All @@ -253,6 +294,22 @@ Tests:
filename: [mplate,
Chevron2]

- name: csrmv_file
category: pre_checkin
hardware: [gfx940]
function: csrmv
precision: *double_only_precisions_complex
M: 1
N: 1
alpha_beta: *alpha_beta_range_checkin
transA: [rocsparse_operation_none, rocsparse_operation_conjugate_transpose]
baseA: [rocsparse_index_base_one]
matrix: [rocsparse_matrix_file_rocalution]
matrix_type: [rocsparse_matrix_type_general]
spmv_alg: [rocsparse_spmv_alg_csr_adaptive, rocsparse_spmv_alg_csr_stream]
filename: [mplate,
Chevron2]

- name: csrmv_file
category: nightly
function: csrmv
Expand Down
33 changes: 32 additions & 1 deletion clients/tests/test_gebsrmv.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -386,9 +386,40 @@ Tests:
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_file_rocalution]
filename: [amazon0312,
shipsec1,
webbase-1M]

- name: gebsrmv_file
category: nightly
hardware: [gfx900, gfx906, gfx908, gfx90a, gfx1030]
function: gebsrmv
precision: *single_double_precisions
M: 1
N: 1
row_block_dimA: [4]
col_block_dimA: [2, 5, 8]
alpha_beta: *alpha_beta_range_1
direction: [rocsparse_direction_row]
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_file_rocalution]
filename: [shipsec1]

- name: gebsrmv_file
category: nightly
hardware: [gfx940]
function: gebsrmv
precision: *double_only_precisions
M: 1
N: 1
row_block_dimA: [4]
col_block_dimA: [2, 5, 8]
alpha_beta: *alpha_beta_range_1
direction: [rocsparse_direction_row]
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_file_rocalution]
filename: [shipsec1]

- name: gebsrmv_file
category: nightly
function: gebsrmv
Expand Down
18 changes: 18 additions & 0 deletions clients/tests/test_spmv_csc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ Tests:

- name: spmv_csc
category: quick
hardware: [gfx900, gfx906, gfx908, gfx90a, gfx1030]
function: spmv_csc
indextype: *i32i32_i64i32_i64i64
precision: *single_double_precisions_complex_real
Expand All @@ -264,6 +265,23 @@ Tests:
uplo: [rocsparse_fill_mode_lower]
spmv_alg: [rocsparse_spmv_alg_csr_adaptive, rocsparse_spmv_alg_csr_stream]

- name: spmv_csc
category: quick
hardware: [gfx940]
function: spmv_csc
indextype: *i32i32_i64i32_i64i64
precision: *single_double_precisions_complex_real
M_N: *M_N_range_quick
alpha_beta: *alpha_beta_range_quick
transA: [rocsparse_operation_none]
baseA: [rocsparse_index_base_zero]
matrix: [rocsparse_matrix_random]
matrix_type: [rocsparse_matrix_type_symmetric, rocsparse_matrix_type_triangular]
uplo: [rocsparse_fill_mode_lower]
spmv_alg: [rocsparse_spmv_alg_csr_adaptive, rocsparse_spmv_alg_csr_stream]



- name: spmv_csc
category: pre_checkin
function: spmv_csc
Expand Down
Loading

0 comments on commit 2ac2e27

Please sign in to comment.