Skip to main content

cusparseXbsrsv2_zeroPivot

Function cusparseXbsrsv2_zeroPivot 

Source
pub unsafe extern "C" fn cusparseXbsrsv2_zeroPivot(
    handle: cusparseHandle_t,
    info: bsrsv2Info_t,
    position: *mut c_int,
) -> cusparseStatus_t
๐Ÿ‘ŽDeprecated
Expand description

If the returned error code is cusparseStatus_t::CUSPARSE_STATUS_ZERO_PIVOT, position=j means A(j,j) is either structural zero or numerical zero (singular block). Otherwise position=-1.

The position can be 0-based or 1-based, the same as the matrix.

Function cusparseXbsrsv2_zeroPivot is a blocking call. It calls cudaDeviceSynchronize() to make sure all previous kernels are done.

The position can be in the host memory or device memory. The user can set the proper mode with cusparseSetPointerMode.

  • The routine requires no extra storage
  • The routine supports asynchronous execution if the Stream Ordered Memory Allocator is available
  • The routine supports CUDA graph capture if the Stream Ordered Memory Allocator is available.

ยงParameters

  • position: if no structural or numerical zero, position is -1; otherwise if A(j,j) is missing or U(j,j) is zero, position=j.