rocsparse_sddmm_preprocess Interface Reference

rocsparse_sddmm_preprocess Interface Reference#

HIPFORT API Reference: hipfort_rocsparse::rocsparse_sddmm_preprocess Interface Reference
hipfort_rocsparse::rocsparse_sddmm_preprocess Interface Reference

Preprocess data before the use of rocsparse_sddmm. More...

Public Member Functions

integer(kind(rocsparse_status_success)) function rocsparse_sddmm_preprocess_ (handle, opA, opB, alpha, A, B, beta, C, compute_type, alg, temp_buffer)
 

Detailed Description

Preprocess data before the use of rocsparse_sddmm.

rocsparse_sddmm_preprocess executes a part of the algorithm that can be calculated once in the context of multiple calls of the rocsparse_sddmm with the same sparsity pattern.

Parameters
[in]handlehandle to the rocsparse library context queue.
[in]opAdense matrix \(A\) operation type.
[in]opBdense matrix \(B\) operation type.
[in]alphascalar \(\alpha\).
[in]Adense matrix \(A\) descriptor.
[in]Bdense matrix \(B\) descriptor.
[in]betascalar \(\beta\).
[in,out]Csparse matrix \(C\) descriptor.
[in]compute_typefloating point precision for the SDDMM computation.
[in]algspecification of the algorithm to use.
[in]temp_buffertemporary storage buffer allocated by the user. The size must be greater or equal to the size obtained with rocsparse_sddmm_buffer_size.
Return values
rocsparse_status_successthe operation completed successfully.
rocsparse_status_invalid_valuethe value of trans_A or trans_B is incorrect.
rocsparse_status_invalid_handlethe library context was not initialized.
rocsparse_status_invalid_pointeralpha and beta are invalid, A, B, D, C or temp_buffer pointer is invalid.
rocsparse_status_not_implementedopA == rocsparse_operation_conjugate_transpose or opB == rocsparse_operation_conjugate_transpose.

Member Function/Subroutine Documentation

◆ rocsparse_sddmm_preprocess_()

integer(kind(rocsparse_status_success)) function hipfort_rocsparse::rocsparse_sddmm_preprocess::rocsparse_sddmm_preprocess_ ( type(c_ptr), value  handle,
integer(kind(rocsparse_operation_none)), value  opA,
integer(kind(rocsparse_operation_none)), value  opB,
type(c_ptr), value  alpha,
type(c_ptr), value  A,
type(c_ptr), value  B,
type(c_ptr), value  beta,
type(c_ptr), value  C,
integer(kind(rocsparse_datatype_f32_r)), value  compute_type,
integer(kind(rocsparse_sddmm_alg_default)), value  alg,
type(c_ptr), value  temp_buffer 
)

The documentation for this interface was generated from the following file: