rocsparse_sddmm_buffer_size Interface Reference

rocsparse_sddmm_buffer_size Interface Reference#

HIPFORT API Reference: hipfort_rocsparse::rocsparse_sddmm_buffer_size Interface Reference
hipfort_rocsparse::rocsparse_sddmm_buffer_size Interface Reference

Calculate the size in bytes of the required buffer for the use of rocsparse_sddmm and rocsparse_sddmm_preprocess. More...

Public Member Functions

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

Detailed Description

Calculate the size in bytes of the required buffer for the use of rocsparse_sddmm and rocsparse_sddmm_preprocess.

rocsparse_sddmm_buffer_size returns the size of the required buffer to execute the SDDMM operation from a given configuration.

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.
[out]buffer_sizenumber of bytes of the temporary storage buffer.
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 buffer_size pointer is invalid.
rocsparse_status_not_implementedopA == rocsparse_operation_conjugate_transpose or opB == rocsparse_operation_conjugate_transpose.

Member Function/Subroutine Documentation

◆ rocsparse_sddmm_buffer_size_()

integer(kind(rocsparse_status_success)) function hipfort_rocsparse::rocsparse_sddmm_buffer_size::rocsparse_sddmm_buffer_size_ ( 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,
integer(c_size_t)  buffer_size 
)

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