Matrix Manipulation#
2025-10-17
4 min read time
Initialization#
#include <raft/matrix/init.cuh>
namespace raft::matrix
-
template<typename math_t, typename extents, typename layout>
void fill( - raft::resources const &handle,
- raft::device_mdspan<const math_t, extents, layout> in,
- raft::device_mdspan<math_t, extents, layout> out,
- raft::host_scalar_view<math_t> scalar
set values to scalar in matrix
- Template Parameters:
math_t – data-type upon which the math operation will be performed
extents – dimension and indexing type used for the input
layout – layout of the matrix data (must be row or col major)
- Parameters:
handle – [in] raft handle
in – [in] input matrix
out – [out] output matrix. The result is stored in the out matrix
scalar – [in] scalar value to fill matrix elements
-
template<typename math_t, typename extents, typename layout>
void fill( - raft::resources const &handle,
- raft::device_mdspan<math_t, extents, layout> inout,
- math_t scalar
set values to scalar in matrix
- Template Parameters:
math_t – data-type upon which the math operation will be performed
extents – dimension and indexing type used for the input
layout_t – layout of the matrix data (must be row or col major)
- Parameters:
handle – [in] raft handle
inout – [inout] input matrix
scalar – [in] scalar value to fill matrix elements
Reverse#
#include <raft/matrix/reverse.cuh>
namespace raft::matrix
-
template<typename m_t, typename idx_t, typename layout_t>
void col_reverse( - raft::resources const &handle,
- raft::device_matrix_view<m_t, idx_t, layout_t> inout
Reverse the columns of a matrix in place (i.e. first column and last column are swapped)
- Parameters:
handle – [in] raft handle
inout – [inout] input and output matrix
-
template<typename m_t, typename idx_t, typename layout_t>
void row_reverse( - raft::resources const &handle,
- raft::device_matrix_view<m_t, idx_t, layout_t> inout
Reverse the rows of a matrix in place (i.e. first row and last row are swapped)
- Parameters:
handle – [in] raft handle
inout – [inout] input and output matrix
Threshold#
#include <raft/matrix/threshold.cuh>
namespace raft::matrix
-
template<typename math_t, typename idx_t, typename layout>
void zero_small_values( - raft::resources const &handle,
- raft::device_matrix_view<const math_t, idx_t, layout> in,
- raft::device_matrix_view<math_t, idx_t, layout> out,
- math_t thres = 1e-15
sets the small values to zero based on a defined threshold
- Template Parameters:
math_t – data-type upon which the math operation will be performed
idx_t – integer type used for indexing
layout – layout of the matrix data (must be row or col major)
- Parameters:
handle – raft handle
in – [in] input matrix
out – [out] output matrix. The result is stored in the out matrix
thres – [in] threshold to set values to zero
-
template<typename math_t, typename idx_t, typename layout>
void zero_small_values( - raft::resources const &handle,
- raft::device_matrix_view<math_t, idx_t, layout> inout,
- math_t thres = 1e-15
sets the small values to zero in-place based on a defined threshold
- Template Parameters:
math_t – data-type upon which the math operation will be performed
idx_t – integer type used for indexing
layout – layout of the matrix data (must be row or col major)
- Parameters:
handle – raft handle
inout – input matrix and also the result is stored
thres – threshold