diff --git a/bin/hipify-perl b/bin/hipify-perl index ca29945e..6531c48a 100755 --- a/bin/hipify-perl +++ b/bin/hipify-perl @@ -1089,6 +1089,7 @@ my %experimental_funcs = ( "cusolverDnDgetrf" => "6.1.0", "cusolverDnDestroy" => "6.1.0", "cusolverDnCreate" => "6.1.0", + "CUSOLVER_STATUS_ZERO_PIVOT" => "6.1.0", "CUSOLVER_STATUS_SUCCESS" => "6.1.0", "CUSOLVER_STATUS_NOT_SUPPORTED" => "6.1.0", "CUSOLVER_STATUS_NOT_INITIALIZED" => "6.1.0", @@ -4708,11 +4709,13 @@ sub simpleSubstitutions { subst("cusparseSpVecDescr_t", "hipsparseSpVecDescr_t", "type"); subst("cusparseSparseToDenseAlg_t", "hipsparseSparseToDenseAlg_t", "type"); subst("cusparseStatus_t", "hipsparseStatus_t", "type"); + subst("gesvdjInfo_t", "hipsolverGesvdjInfo_t", "type"); subst("nvrtcProgram", "hiprtcProgram", "type"); subst("nvrtcResult", "hiprtcResult", "type"); subst("pruneInfo", "pruneInfo", "type"); subst("pruneInfo_t", "pruneInfo_t", "type"); subst("surfaceReference", "surfaceReference", "type"); + subst("syevjInfo_t", "hipsolverSyevjInfo_t", "type"); subst("texture", "texture", "type"); subst("textureReference", "textureReference", "type"); subst("CUBLAS_ATOMICS_ALLOWED", "HIPBLAS_ATOMICS_ALLOWED", "numeric_literal"); @@ -5014,6 +5017,9 @@ sub simpleSubstitutions { subst("CURAND_STATUS_SUCCESS", "HIPRAND_STATUS_SUCCESS", "numeric_literal"); subst("CURAND_STATUS_TYPE_ERROR", "HIPRAND_STATUS_TYPE_ERROR", "numeric_literal"); subst("CURAND_STATUS_VERSION_MISMATCH", "HIPRAND_STATUS_VERSION_MISMATCH", "numeric_literal"); + subst("CUSOLVER_STATUS_IRS_INTERNAL_ERROR", "HIPSOLVER_STATUS_INTERNAL_ERROR", "numeric_literal"); + subst("CUSOLVER_STATUS_IRS_NOT_SUPPORTED", "HIPSOLVER_STATUS_NOT_SUPPORTED", "numeric_literal"); + subst("CUSOLVER_STATUS_IRS_PARAMS_INVALID", "HIPSOLVER_STATUS_INVALID_VALUE", "numeric_literal"); subst("CUSPARSE_ACTION_NUMERIC", "HIPSPARSE_ACTION_NUMERIC", "numeric_literal"); subst("CUSPARSE_ACTION_SYMBOLIC", "HIPSPARSE_ACTION_SYMBOLIC", "numeric_literal"); subst("CUSPARSE_COOMM_ALG1", "HIPSPARSE_COOMM_ALG1", "numeric_literal"); @@ -6894,6 +6900,7 @@ sub warnUnsupportedFunctions { my $line_num = shift; my $k = 0; foreach $func ( + "syevjInfo", "nvrtcGetSupportedArchs", "nvrtcGetOptiXIRSize", "nvrtcGetOptiXIR", @@ -6906,6 +6913,7 @@ sub warnUnsupportedFunctions { "memoryBarrier", "libraryPropertyType_t", "libraryPropertyType", + "gesvdjInfo", "cusparseZhybsv_solve", "cusparseZhybsv_analysis", "cusparseZhyb2dense", @@ -7065,8 +7073,17 @@ sub warnUnsupportedFunctions { "cusolverDnXgetrf_bufferSize", "cusolverDnXgetrf", "cusolverDnSetAdvOptions", + "cusolverDnParams_t", + "cusolverDnParams", + "cusolverDnIRSParams_t", + "cusolverDnIRSParams", + "cusolverDnIRSInfos_t", + "cusolverDnIRSInfos", + "cusolverDnFunction_t", "cusolverDnCreateParams", + "cusolverDnContext", "cusolverDirectMode_t", + "cusolverDeterministicMode_t", "cusolverAlgMode_t", "curand_mtgp32_specific", "curand_mtgp32_single_specific", @@ -8671,12 +8688,9 @@ sub warnUnsupportedFunctions { "CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE", "CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC", "CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER", - "CUSOLVER_STATUS_IRS_PARAMS_INVALID", "CUSOLVER_STATUS_IRS_OUT_OF_RANGE", "CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES", - "CUSOLVER_STATUS_IRS_NOT_SUPPORTED", "CUSOLVER_STATUS_IRS_MATRIX_SINGULAR", - "CUSOLVER_STATUS_IRS_INTERNAL_ERROR", "CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED", "CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED", "CUSOLVER_STATUS_INVALID_WORKSPACE", @@ -8703,6 +8717,7 @@ sub warnUnsupportedFunctions { "CUSOLVER_IRS_REFINE_CLASSICAL", "CUSOLVER_INF_NORM", "CUSOLVER_FRO_NORM", + "CUSOLVER_DETERMINISTIC_RESULTS", "CUSOLVER_C_TF32", "CUSOLVER_C_AP", "CUSOLVER_C_8U", @@ -8711,9 +8726,12 @@ sub warnUnsupportedFunctions { "CUSOLVER_C_32F", "CUSOLVER_C_16F", "CUSOLVER_C_16BF", + "CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", "CUSOLVER_ALG_2", "CUSOLVER_ALG_1", "CUSOLVER_ALG_0", + "CUSOLVERDN_POTRF", + "CUSOLVERDN_GETRF", "CURAND_REJECTION", "CURAND_POISSON", "CURAND_ORDERING_QUASI_DEFAULT", diff --git a/docs/tables/CUSOLVER_API_supported_by_HIP.md b/docs/tables/CUSOLVER_API_supported_by_HIP.md index fa7e7c9d..c092e782 100644 --- a/docs/tables/CUSOLVER_API_supported_by_HIP.md +++ b/docs/tables/CUSOLVER_API_supported_by_HIP.md @@ -8,9 +8,12 @@ |`CUBLAS_DIRECT_FORWARD`|11.0| | | | | | | | | | |`CUBLAS_STOREV_COLUMNWISE`|11.0| | | | | | | | | | |`CUBLAS_STOREV_ROWWISE`|11.0| | | | | | | | | | +|`CUSOLVERDN_GETRF`|11.0| | | | | | | | | | +|`CUSOLVERDN_POTRF`|11.5| | | | | | | | | | |`CUSOLVER_ALG_0`|11.0| | | | | | | | | | |`CUSOLVER_ALG_1`|11.0| | | | | | | | | | |`CUSOLVER_ALG_2`|11.5| | | | | | | | | | +|`CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS`|12.2| | | | | | | | | | |`CUSOLVER_C_16BF`|11.0| | | | | | | | | | |`CUSOLVER_C_16F`|11.0| | | | | | | | | | |`CUSOLVER_C_32F`|11.0| | | | | | | | | | @@ -19,6 +22,7 @@ |`CUSOLVER_C_8U`|11.0| | | | | | | | | | |`CUSOLVER_C_AP`|11.0| | | | | | | | | | |`CUSOLVER_C_TF32`|11.0| | | | | | | | | | +|`CUSOLVER_DETERMINISTIC_RESULTS`|12.2| | | | | | | | | | |`CUSOLVER_EIG_MODE_NOVECTOR`|8.0| | | |`HIPSOLVER_EIG_MODE_NOVECTOR`|4.5.0| | | |6.1.0| |`CUSOLVER_EIG_MODE_VECTOR`|8.0| | | |`HIPSOLVER_EIG_MODE_VECTOR`|4.5.0| | | |6.1.0| |`CUSOLVER_EIG_RANGE_ALL`|10.1| | | |`HIPSOLVER_EIG_RANGE_ALL`|5.3.0| | | |6.1.0| @@ -58,12 +62,12 @@ |`CUSOLVER_STATUS_INVALID_WORKSPACE`|11.0| | | | | | | | | | |`CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED`|11.0| | | | | | | | | | |`CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED`|10.2| | | | | | | | | | -|`CUSOLVER_STATUS_IRS_INTERNAL_ERROR`|10.2| | | | | | | | | | +|`CUSOLVER_STATUS_IRS_INTERNAL_ERROR`|10.2| | | |`HIPSOLVER_STATUS_INTERNAL_ERROR`|4.5.0| | | |6.1.0| |`CUSOLVER_STATUS_IRS_MATRIX_SINGULAR`|11.0| | | | | | | | | | -|`CUSOLVER_STATUS_IRS_NOT_SUPPORTED`|10.2| | | | | | | | | | +|`CUSOLVER_STATUS_IRS_NOT_SUPPORTED`|10.2| | | |`HIPSOLVER_STATUS_NOT_SUPPORTED`|4.5.0| | | |6.1.0| |`CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES`|10.2| | | | | | | | | | |`CUSOLVER_STATUS_IRS_OUT_OF_RANGE`|10.2| | | | | | | | | | -|`CUSOLVER_STATUS_IRS_PARAMS_INVALID`|10.2| | | | | | | | | | +|`CUSOLVER_STATUS_IRS_PARAMS_INVALID`|10.2| | | |`HIPSOLVER_STATUS_INVALID_VALUE`|4.5.0| | | |6.1.0| |`CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER`|11.0| | | | | | | | | | |`CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC`|11.0| | | | | | | | | | |`CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE`|11.0| | | | | | | | | | @@ -73,10 +77,19 @@ |`CUSOLVER_STATUS_NOT_INITIALIZED`| | | | |`HIPSOLVER_STATUS_NOT_INITIALIZED`|4.5.0| | | |6.1.0| |`CUSOLVER_STATUS_NOT_SUPPORTED`| | | | |`HIPSOLVER_STATUS_NOT_SUPPORTED`|4.5.0| | | |6.1.0| |`CUSOLVER_STATUS_SUCCESS`| | | | |`HIPSOLVER_STATUS_SUCCESS`|4.5.0| | | |6.1.0| -|`CUSOLVER_STATUS_ZERO_PIVOT`| | | | |`HIPSOLVER_STATUS_ZERO_PIVOT`| | | | | | +|`CUSOLVER_STATUS_ZERO_PIVOT`| | | | |`HIPSOLVER_STATUS_ZERO_PIVOT`|5.6.0| | | |6.1.0| |`cusolverAlgMode_t`|11.0| | | | | | | | | | +|`cusolverDeterministicMode_t`|12.2| | | | | | | | | | |`cusolverDirectMode_t`|11.0| | | | | | | | | | +|`cusolverDnContext`| | | | | | | | | | | +|`cusolverDnFunction_t`|11.0| | | | | | | | | | |`cusolverDnHandle_t`| | | | |`hipsolverHandle_t`|4.5.0| | | |6.1.0| +|`cusolverDnIRSInfos`|10.2| | | | | | | | | | +|`cusolverDnIRSInfos_t`|10.2| | | | | | | | | | +|`cusolverDnIRSParams`|10.2| | | | | | | | | | +|`cusolverDnIRSParams_t`|10.2| | | | | | | | | | +|`cusolverDnParams`|11.0| | | | | | | | | | +|`cusolverDnParams_t`|11.0| | | | | | | | | | |`cusolverEigMode_t`|8.0| | | |`hipsolverEigMode_t`|4.5.0| | | |6.1.0| |`cusolverEigRange_t`|10.1| | | |`hipsolverEigRange_t`|5.3.0| | | |6.1.0| |`cusolverEigType_t`|8.0| | | |`hipsolverEigType_t`|4.5.0| | | |6.1.0| @@ -85,6 +98,10 @@ |`cusolverPrecType_t`|11.0| | | | | | | | | | |`cusolverStatus_t`| | | | |`hipsolverStatus_t`|4.5.0| | | |6.1.0| |`cusolverStorevMode_t`|11.0| | | | | | | | | | +|`gesvdjInfo`|9.0| | | | | | | | | | +|`gesvdjInfo_t`|9.0| | | |`hipsolverGesvdjInfo_t`|5.1.0| | | |6.1.0| +|`syevjInfo`|9.0| | | | | | | | | | +|`syevjInfo_t`|9.0| | | |`hipsolverSyevjInfo_t`|5.1.0| | | |6.1.0| ## **2. CUSOLVER Function Reference** diff --git a/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md b/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md index b2ca3fdc..5a7b9cb0 100644 --- a/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md +++ b/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md @@ -8,9 +8,12 @@ |`CUBLAS_DIRECT_FORWARD`|11.0| | | | | | | | | | | | | | | | |`CUBLAS_STOREV_COLUMNWISE`|11.0| | | | | | | | | | | | | | | | |`CUBLAS_STOREV_ROWWISE`|11.0| | | | | | | | | | | | | | | | +|`CUSOLVERDN_GETRF`|11.0| | | | | | | | | | | | | | | | +|`CUSOLVERDN_POTRF`|11.5| | | | | | | | | | | | | | | | |`CUSOLVER_ALG_0`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_ALG_1`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_ALG_2`|11.5| | | | | | | | | | | | | | | | +|`CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS`|12.2| | | | | | | | | | | | | | | | |`CUSOLVER_C_16BF`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_C_16F`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_C_32F`|11.0| | | | | | | | | | | | | | | | @@ -19,6 +22,7 @@ |`CUSOLVER_C_8U`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_C_AP`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_C_TF32`|11.0| | | | | | | | | | | | | | | | +|`CUSOLVER_DETERMINISTIC_RESULTS`|12.2| | | | | | | | | | | | | | | | |`CUSOLVER_EIG_MODE_NOVECTOR`|8.0| | | |`HIPSOLVER_EIG_MODE_NOVECTOR`|4.5.0| | | |6.1.0|`rocblas_evect_none`|4.1.0| | | |6.1.0| |`CUSOLVER_EIG_MODE_VECTOR`|8.0| | | |`HIPSOLVER_EIG_MODE_VECTOR`|4.5.0| | | |6.1.0|`rocblas_evect_original`|4.1.0| | | |6.1.0| |`CUSOLVER_EIG_RANGE_ALL`|10.1| | | |`HIPSOLVER_EIG_RANGE_ALL`|5.3.0| | | |6.1.0|`rocblas_erange_all`|5.2.0| | | |6.1.0| @@ -58,12 +62,12 @@ |`CUSOLVER_STATUS_INVALID_WORKSPACE`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED`|10.2| | | | | | | | | | | | | | | | -|`CUSOLVER_STATUS_IRS_INTERNAL_ERROR`|10.2| | | | | | | | | | | | | | | | +|`CUSOLVER_STATUS_IRS_INTERNAL_ERROR`|10.2| | | |`HIPSOLVER_STATUS_INTERNAL_ERROR`|4.5.0| | | |6.1.0| | | | | | | |`CUSOLVER_STATUS_IRS_MATRIX_SINGULAR`|11.0| | | | | | | | | | | | | | | | -|`CUSOLVER_STATUS_IRS_NOT_SUPPORTED`|10.2| | | | | | | | | | | | | | | | +|`CUSOLVER_STATUS_IRS_NOT_SUPPORTED`|10.2| | | |`HIPSOLVER_STATUS_NOT_SUPPORTED`|4.5.0| | | |6.1.0| | | | | | | |`CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES`|10.2| | | | | | | | | | | | | | | | |`CUSOLVER_STATUS_IRS_OUT_OF_RANGE`|10.2| | | | | | | | | | | | | | | | -|`CUSOLVER_STATUS_IRS_PARAMS_INVALID`|10.2| | | | | | | | | | | | | | | | +|`CUSOLVER_STATUS_IRS_PARAMS_INVALID`|10.2| | | |`HIPSOLVER_STATUS_INVALID_VALUE`|4.5.0| | | |6.1.0| | | | | | | |`CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC`|11.0| | | | | | | | | | | | | | | | |`CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE`|11.0| | | | | | | | | | | | | | | | @@ -73,10 +77,19 @@ |`CUSOLVER_STATUS_NOT_INITIALIZED`| | | | |`HIPSOLVER_STATUS_NOT_INITIALIZED`|4.5.0| | | |6.1.0|`rocblas_status_invalid_handle`|5.6.0| | | |6.1.0| |`CUSOLVER_STATUS_NOT_SUPPORTED`| | | | |`HIPSOLVER_STATUS_NOT_SUPPORTED`|4.5.0| | | |6.1.0|`rocblas_status_not_implemented`|1.5.0| | | |6.1.0| |`CUSOLVER_STATUS_SUCCESS`| | | | |`HIPSOLVER_STATUS_SUCCESS`|4.5.0| | | |6.1.0|`rocblas_status_success`|3.0.0| | | |6.1.0| -|`CUSOLVER_STATUS_ZERO_PIVOT`| | | | |`HIPSOLVER_STATUS_ZERO_PIVOT`| | | | | |`rocblas_status_not_implemented`|1.5.0| | | |6.1.0| +|`CUSOLVER_STATUS_ZERO_PIVOT`| | | | |`HIPSOLVER_STATUS_ZERO_PIVOT`|5.6.0| | | |6.1.0|`rocblas_status_not_implemented`|1.5.0| | | |6.1.0| |`cusolverAlgMode_t`|11.0| | | | | | | | | | | | | | | | +|`cusolverDeterministicMode_t`|12.2| | | | | | | | | | | | | | | | |`cusolverDirectMode_t`|11.0| | | | | | | | | | | | | | | | +|`cusolverDnContext`| | | | | | | | | | | | | | | | | +|`cusolverDnFunction_t`|11.0| | | | | | | | | | | | | | | | |`cusolverDnHandle_t`| | | | |`hipsolverHandle_t`|4.5.0| | | |6.1.0|`rocblas_handle`|1.5.0| | | |6.1.0| +|`cusolverDnIRSInfos`|10.2| | | | | | | | | | | | | | | | +|`cusolverDnIRSInfos_t`|10.2| | | | | | | | | | | | | | | | +|`cusolverDnIRSParams`|10.2| | | | | | | | | | | | | | | | +|`cusolverDnIRSParams_t`|10.2| | | | | | | | | | | | | | | | +|`cusolverDnParams`|11.0| | | | | | | | | | | | | | | | +|`cusolverDnParams_t`|11.0| | | | | | | | | | | | | | | | |`cusolverEigMode_t`|8.0| | | |`hipsolverEigMode_t`|4.5.0| | | |6.1.0|`rocblas_evect`|4.1.0| | | |6.1.0| |`cusolverEigRange_t`|10.1| | | |`hipsolverEigRange_t`|5.3.0| | | |6.1.0|`rocblas_erange`|5.2.0| | | |6.1.0| |`cusolverEigType_t`|8.0| | | |`hipsolverEigType_t`|4.5.0| | | |6.1.0|`rocblas_eform`|4.2.0| | | |6.1.0| @@ -85,6 +98,10 @@ |`cusolverPrecType_t`|11.0| | | | | | | | | | | | | | | | |`cusolverStatus_t`| | | | |`hipsolverStatus_t`|4.5.0| | | |6.1.0|`rocblas_status`|3.0.0| | | |6.1.0| |`cusolverStorevMode_t`|11.0| | | | | | | | | | | | | | | | +|`gesvdjInfo`|9.0| | | | | | | | | | | | | | | | +|`gesvdjInfo_t`|9.0| | | |`hipsolverGesvdjInfo_t`|5.1.0| | | |6.1.0| | | | | | | +|`syevjInfo`|9.0| | | | | | | | | | | | | | | | +|`syevjInfo_t`|9.0| | | |`hipsolverSyevjInfo_t`|5.1.0| | | |6.1.0| | | | | | | ## **2. CUSOLVER Function Reference** diff --git a/docs/tables/CUSOLVER_API_supported_by_ROC.md b/docs/tables/CUSOLVER_API_supported_by_ROC.md index 51a03d6c..499f14a3 100644 --- a/docs/tables/CUSOLVER_API_supported_by_ROC.md +++ b/docs/tables/CUSOLVER_API_supported_by_ROC.md @@ -8,9 +8,12 @@ |`CUBLAS_DIRECT_FORWARD`|11.0| | | | | | | | | | |`CUBLAS_STOREV_COLUMNWISE`|11.0| | | | | | | | | | |`CUBLAS_STOREV_ROWWISE`|11.0| | | | | | | | | | +|`CUSOLVERDN_GETRF`|11.0| | | | | | | | | | +|`CUSOLVERDN_POTRF`|11.5| | | | | | | | | | |`CUSOLVER_ALG_0`|11.0| | | | | | | | | | |`CUSOLVER_ALG_1`|11.0| | | | | | | | | | |`CUSOLVER_ALG_2`|11.5| | | | | | | | | | +|`CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS`|12.2| | | | | | | | | | |`CUSOLVER_C_16BF`|11.0| | | | | | | | | | |`CUSOLVER_C_16F`|11.0| | | | | | | | | | |`CUSOLVER_C_32F`|11.0| | | | | | | | | | @@ -19,6 +22,7 @@ |`CUSOLVER_C_8U`|11.0| | | | | | | | | | |`CUSOLVER_C_AP`|11.0| | | | | | | | | | |`CUSOLVER_C_TF32`|11.0| | | | | | | | | | +|`CUSOLVER_DETERMINISTIC_RESULTS`|12.2| | | | | | | | | | |`CUSOLVER_EIG_MODE_NOVECTOR`|8.0| | | |`rocblas_evect_none`|4.1.0| | | |6.1.0| |`CUSOLVER_EIG_MODE_VECTOR`|8.0| | | |`rocblas_evect_original`|4.1.0| | | |6.1.0| |`CUSOLVER_EIG_RANGE_ALL`|10.1| | | |`rocblas_erange_all`|5.2.0| | | |6.1.0| @@ -75,8 +79,17 @@ |`CUSOLVER_STATUS_SUCCESS`| | | | |`rocblas_status_success`|3.0.0| | | |6.1.0| |`CUSOLVER_STATUS_ZERO_PIVOT`| | | | |`rocblas_status_not_implemented`|1.5.0| | | |6.1.0| |`cusolverAlgMode_t`|11.0| | | | | | | | | | +|`cusolverDeterministicMode_t`|12.2| | | | | | | | | | |`cusolverDirectMode_t`|11.0| | | | | | | | | | +|`cusolverDnContext`| | | | | | | | | | | +|`cusolverDnFunction_t`|11.0| | | | | | | | | | |`cusolverDnHandle_t`| | | | |`rocblas_handle`|1.5.0| | | |6.1.0| +|`cusolverDnIRSInfos`|10.2| | | | | | | | | | +|`cusolverDnIRSInfos_t`|10.2| | | | | | | | | | +|`cusolverDnIRSParams`|10.2| | | | | | | | | | +|`cusolverDnIRSParams_t`|10.2| | | | | | | | | | +|`cusolverDnParams`|11.0| | | | | | | | | | +|`cusolverDnParams_t`|11.0| | | | | | | | | | |`cusolverEigMode_t`|8.0| | | |`rocblas_evect`|4.1.0| | | |6.1.0| |`cusolverEigRange_t`|10.1| | | |`rocblas_erange`|5.2.0| | | |6.1.0| |`cusolverEigType_t`|8.0| | | |`rocblas_eform`|4.2.0| | | |6.1.0| @@ -85,6 +98,10 @@ |`cusolverPrecType_t`|11.0| | | | | | | | | | |`cusolverStatus_t`| | | | |`rocblas_status`|3.0.0| | | |6.1.0| |`cusolverStorevMode_t`|11.0| | | | | | | | | | +|`gesvdjInfo`|9.0| | | | | | | | | | +|`gesvdjInfo_t`|9.0| | | | | | | | | | +|`syevjInfo`|9.0| | | | | | | | | | +|`syevjInfo_t`|9.0| | | | | | | | | | ## **2. CUSOLVER Function Reference** diff --git a/src/CUDA2HIP_SOLVER_API_types.cpp b/src/CUDA2HIP_SOLVER_API_types.cpp index 3be25f5d..68eb6c69 100644 --- a/src/CUDA2HIP_SOLVER_API_types.cpp +++ b/src/CUDA2HIP_SOLVER_API_types.cpp @@ -38,18 +38,19 @@ const std::map CUDA_SOLVER_TYPE_NAME_MAP { {"CUSOLVER_STATUS_ZERO_PIVOT", {"HIPSOLVER_STATUS_ZERO_PIVOT", "rocblas_status_not_implemented", CONV_NUMERIC_LITERAL, API_SOLVER, 1, HIP_EXPERIMENTAL}}, {"CUSOLVER_STATUS_INVALID_LICENSE", {"HIPSOLVER_STATUS_INVALID_LICENSE", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_PARAMS_NOT_INITIALIZED", {"HIPSOLVER_STATUS_IRS_PARAMS_NOT_INITIALIZED", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, - {"CUSOLVER_STATUS_IRS_PARAMS_INVALID", {"HIPSOLVER_STATUS_IRS_PARAMS_INVALID", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"CUSOLVER_STATUS_IRS_PARAMS_INVALID", {"HIPSOLVER_STATUS_INVALID_VALUE", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, ROC_UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_PARAMS_INVALID_PREC", {"HIPSOLVER_STATUS_IRS_PARAMS_INVALID_PREC", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE", {"HIPSOLVER_STATUS_IRS_PARAMS_INVALID_REFINE", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER", {"HIPSOLVER_STATUS_IRS_PARAMS_INVALID_MAXITER", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, - {"CUSOLVER_STATUS_IRS_INTERNAL_ERROR", {"HIPSOLVER_STATUS_IRS_INTERNAL_ERROR", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, - {"CUSOLVER_STATUS_IRS_NOT_SUPPORTED", {"HIPSOLVER_STATUS_IRS_NOT_SUPPORTED", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"CUSOLVER_STATUS_IRS_INTERNAL_ERROR", {"HIPSOLVER_STATUS_INTERNAL_ERROR", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, ROC_UNSUPPORTED}}, + {"CUSOLVER_STATUS_IRS_NOT_SUPPORTED", {"HIPSOLVER_STATUS_NOT_SUPPORTED", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, ROC_UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_OUT_OF_RANGE", {"HIPSOLVER_STATUS_IRS_OUT_OF_RANGE", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES", {"HIPSOLVER_STATUS_IRS_NRHS_NOT_SUPPORTED_FOR_REFINE_GMRES", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED", {"HIPSOLVER_STATUS_IRS_INFOS_NOT_INITIALIZED", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED", {"HIPSOLVER_STATUS_IRS_INFOS_NOT_DESTROYED", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_IRS_MATRIX_SINGULAR", {"HIPSOLVER_STATUS_IRS_MATRIX_SINGULAR", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_STATUS_INVALID_WORKSPACE", {"HIPSOLVER_STATUS_INVALID_WORKSPACE", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnContext", {"hipsolverDnContext", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, {"cusolverDnHandle_t", {"hipsolverHandle_t", "rocblas_handle", CONV_TYPE, API_SOLVER, 1, HIP_EXPERIMENTAL}}, {"cusolverEigType_t", {"hipsolverEigType_t", "rocblas_eform", CONV_TYPE, API_SOLVER, 1, HIP_EXPERIMENTAL}}, {"CUSOLVER_EIG_TYPE_1", {"HIPSOLVER_EIG_TYPE_1", "rocblas_eform_ax", CONV_NUMERIC_LITERAL, API_SOLVER, 1, HIP_EXPERIMENTAL}}, @@ -105,6 +106,22 @@ const std::map CUDA_SOLVER_TYPE_NAME_MAP { {"CUSOLVER_C_16BF", {"HIPSOLVER_C_16BF", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_C_TF32", {"HIPSOLVER_C_TF32", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, {"CUSOLVER_C_AP", {"HIPSOLVER_C_AP", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"syevjInfo", {"hipsyevjInfo", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"syevjInfo_t", {"hipsolverSyevjInfo_t", "", CONV_TYPE, API_SOLVER, 1, ROC_UNSUPPORTED}}, + {"gesvdjInfo", {"hipgesvdjInfo", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"gesvdjInfo_t", {"hipsolverGesvdjInfo_t", "", CONV_TYPE, API_SOLVER, 1, ROC_UNSUPPORTED}}, + {"cusolverDnIRSParams", {"hipsolverDnIRSParams", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnIRSParams_t", {"hipsolverDnIRSParams_t", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnIRSInfos", {"hipsolverDnIRSInfos", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnIRSInfos_t", {"hipsolverDnIRSInfos_t", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnParams", {"hipsolverDnParams", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnParams_t", {"hipsolverDnParams_t", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDnFunction_t", {"hipsolverDnFunction_t", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"CUSOLVERDN_GETRF", {"HIPSOLVERDN_GETRF", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"CUSOLVERDN_POTRF", {"HIPSOLVERDN_POTRF", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"cusolverDeterministicMode_t", {"hipsolverDeterministicMode_t", "", CONV_TYPE, API_SOLVER, 1, UNSUPPORTED}}, + {"CUSOLVER_DETERMINISTIC_RESULTS", {"HIPSOLVER_DETERMINISTIC_RESULTS", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, + {"CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", {"HIPSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", "", CONV_NUMERIC_LITERAL, API_SOLVER, 1, UNSUPPORTED}}, }; const std::map CUDA_SOLVER_TYPE_NAME_VER_MAP { @@ -175,6 +192,22 @@ const std::map CUDA_SOLVER_TYPE_NAME_VER_MAP { {"CUSOLVER_C_16BF", {CUDA_110, CUDA_0, CUDA_0}}, {"CUSOLVER_C_TF32", {CUDA_110, CUDA_0, CUDA_0}}, {"CUSOLVER_C_AP", {CUDA_110, CUDA_0, CUDA_0}}, + {"syevjInfo", {CUDA_90, CUDA_0, CUDA_0}}, + {"syevjInfo_t", {CUDA_90, CUDA_0, CUDA_0}}, + {"gesvdjInfo", {CUDA_90, CUDA_0, CUDA_0}}, + {"gesvdjInfo_t", {CUDA_90, CUDA_0, CUDA_0}}, + {"cusolverDnIRSParams", {CUDA_102, CUDA_0, CUDA_0}}, + {"cusolverDnIRSParams_t", {CUDA_102, CUDA_0, CUDA_0}}, + {"cusolverDnIRSInfos", {CUDA_102, CUDA_0, CUDA_0}}, + {"cusolverDnIRSInfos_t", {CUDA_102, CUDA_0, CUDA_0}}, + {"cusolverDnParams", {CUDA_110, CUDA_0, CUDA_0}}, + {"cusolverDnParams_t", {CUDA_110, CUDA_0, CUDA_0}}, + {"cusolverDnFunction_t", {CUDA_110, CUDA_0, CUDA_0}}, + {"CUSOLVERDN_GETRF", {CUDA_110, CUDA_0, CUDA_0}}, + {"CUSOLVERDN_POTRF", {CUDA_115, CUDA_0, CUDA_0}}, + {"cusolverDeterministicMode_t", {CUDA_122, CUDA_0, CUDA_0}}, + {"CUSOLVER_DETERMINISTIC_RESULTS", {CUDA_122, CUDA_0, CUDA_0}}, + {"CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", {CUDA_122, CUDA_0, CUDA_0}}, }; const std::map HIP_SOLVER_TYPE_NAME_VER_MAP { @@ -188,6 +221,7 @@ const std::map HIP_SOLVER_TYPE_NAME_VER_MAP { {"HIPSOLVER_STATUS_EXECUTION_FAILED", {HIP_4050, HIP_0, HIP_0, HIP_LATEST}}, {"HIPSOLVER_STATUS_INTERNAL_ERROR", {HIP_4050, HIP_0, HIP_0, HIP_LATEST}}, {"HIPSOLVER_STATUS_NOT_SUPPORTED", {HIP_4050, HIP_0, HIP_0, HIP_LATEST}}, + {"HIPSOLVER_STATUS_ZERO_PIVOT", {HIP_5060, HIP_0, HIP_0, HIP_LATEST}}, {"hipsolverHandle_t", {HIP_4050, HIP_0, HIP_0, HIP_LATEST}}, {"hipsolverEigType_t", {HIP_4050, HIP_0, HIP_0, HIP_LATEST}}, {"HIPSOLVER_EIG_TYPE_1", {HIP_4050, HIP_0, HIP_0, HIP_LATEST}}, @@ -200,6 +234,9 @@ const std::map HIP_SOLVER_TYPE_NAME_VER_MAP { {"HIPSOLVER_EIG_RANGE_ALL", {HIP_5030, HIP_0, HIP_0, HIP_LATEST}}, {"HIPSOLVER_EIG_RANGE_I", {HIP_5030, HIP_0, HIP_0, HIP_LATEST}}, {"HIPSOLVER_EIG_RANGE_V", {HIP_5030, HIP_0, HIP_0, HIP_LATEST}}, + {"hipsolverSyevjInfo_t", {HIP_5010, HIP_0, HIP_0, HIP_LATEST}}, + {"hipsolverGesvdjInfo_t", {HIP_5010, HIP_0, HIP_0, HIP_LATEST}}, + {"rocblas_status", {HIP_3000, HIP_0, HIP_0, HIP_LATEST}}, {"rocblas_status_success", {HIP_3000, HIP_0, HIP_0, HIP_LATEST}}, {"rocblas_status_invalid_handle", {HIP_5060, HIP_0, HIP_0, HIP_LATEST}}, diff --git a/tests/unit_tests/synthetic/libraries/cusolver2hipsolver.cu b/tests/unit_tests/synthetic/libraries/cusolver2hipsolver.cu index c3e455bd..3b18ee79 100644 --- a/tests/unit_tests/synthetic/libraries/cusolver2hipsolver.cu +++ b/tests/unit_tests/synthetic/libraries/cusolver2hipsolver.cu @@ -38,6 +38,9 @@ int main() { // CHECK-NEXT: hipsolverStatus_t STATUS_INTERNAL_ERROR = HIPSOLVER_STATUS_INTERNAL_ERROR; // CHECK-NEXT: hipsolverStatus_t STATUS_NOT_SUPPORTED = HIPSOLVER_STATUS_NOT_SUPPORTED; // CHECK-NEXT: hipsolverStatus_t STATUS_ZERO_PIVOT = HIPSOLVER_STATUS_ZERO_PIVOT; + // CHECK-NEXT: hipsolverStatus_t STATUS_IRS_PARAMS_INVALID = HIPSOLVER_STATUS_INVALID_VALUE; + // CHECK-NEXT: hipsolverStatus_t STATUS_IRS_INTERNAL_ERROR = HIPSOLVER_STATUS_INTERNAL_ERROR; + // CHECK-NEXT: hipsolverStatus_t STATUS_IRS_NOT_SUPPORTED = HIPSOLVER_STATUS_NOT_SUPPORTED; cusolverStatus_t status; cusolverStatus_t STATUS_SUCCESS = CUSOLVER_STATUS_SUCCESS; cusolverStatus_t STATUS_NOT_INITIALIZED = CUSOLVER_STATUS_NOT_INITIALIZED; @@ -49,6 +52,9 @@ int main() { cusolverStatus_t STATUS_INTERNAL_ERROR = CUSOLVER_STATUS_INTERNAL_ERROR; cusolverStatus_t STATUS_NOT_SUPPORTED = CUSOLVER_STATUS_NOT_SUPPORTED; cusolverStatus_t STATUS_ZERO_PIVOT = CUSOLVER_STATUS_ZERO_PIVOT; + cusolverStatus_t STATUS_IRS_PARAMS_INVALID = CUSOLVER_STATUS_IRS_PARAMS_INVALID; + cusolverStatus_t STATUS_IRS_INTERNAL_ERROR = CUSOLVER_STATUS_IRS_INTERNAL_ERROR; + cusolverStatus_t STATUS_IRS_NOT_SUPPORTED = CUSOLVER_STATUS_IRS_NOT_SUPPORTED; // CHECK: hipblasOperation_t blasOperation; cublasOperation_t blasOperation; @@ -111,6 +117,14 @@ int main() { cusolverEigMode_t SOLVER_EIG_MODE_VECTOR = CUSOLVER_EIG_MODE_VECTOR; #endif +#if CUDA_VERSION >= 9000 + // CHECK: hipsolverSyevjInfo_t syevj_info; + syevjInfo_t syevj_info; + + // CHECK: hipsolverGesvdjInfo_t gesvdj_info; + gesvdjInfo_t gesvdj_info; +#endif + #if CUDA_VERSION >= 10010 // CHECK: hipsolverEigRange_t eigRange; // CHECK-NEXT: hipsolverEigRange_t EIG_RANGE_ALL = HIPSOLVER_EIG_RANGE_ALL;