\doxysection{gko::\+matrix::\+Csr\texorpdfstring{$<$}{<} Value\+Type, Index\+Type \texorpdfstring{$>$}{>}::\+automatical Class Reference}
\hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical}{}\label{classgko_1_1matrix_1_1Csr_1_1automatical}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}


Inheritance diagram for gko::\+matrix::\+Csr\texorpdfstring{$<$}{<} Value\+Type, Index\+Type \texorpdfstring{$>$}{>}::\+automatical:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=221pt]{classgko_1_1matrix_1_1Csr_1_1automatical__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for gko::\+matrix::\+Csr\texorpdfstring{$<$}{<} Value\+Type, Index\+Type \texorpdfstring{$>$}{>}::\+automatical:\+
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=221pt]{classgko_1_1matrix_1_1Csr_1_1automatical__coll__graph}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}{automatical}} ()
\begin{DoxyCompactList}\small\item\em Creates an automatical strategy. \end{DoxyCompactList}\item 
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a5e3cff9dc55b22b01ddf3db31731b267}{automatical}} (std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1CudaExecutor}{Cuda\+Executor}} $>$ exec)
\begin{DoxyCompactList}\small\item\em Creates an automatical strategy with CUDA executor. \end{DoxyCompactList}\item 
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a9ec5b221681ed8e5f33fd77c9b781690}{automatical}} (std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1HipExecutor}{Hip\+Executor}} $>$ exec)
\begin{DoxyCompactList}\small\item\em Creates an automatical strategy with HIP executor. \end{DoxyCompactList}\item 
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a97deccea06b6b863118fee067662ae4e}{automatical}} (std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1DpcppExecutor}{Dpcpp\+Executor}} $>$ exec)
\begin{DoxyCompactList}\small\item\em Creates an automatical strategy with Dpcpp executor. \end{DoxyCompactList}\item 
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a270b30353a7069d11d44bad9f05d0a1d}{automatical}} (int64\+\_\+t nwarps, int warp\+\_\+size=32, bool cuda\+\_\+strategy=true, std::\+string strategy\+\_\+name="{}none"{})
\begin{DoxyCompactList}\small\item\em Creates an automatical strategy with specified parameters. \end{DoxyCompactList}\item 
void \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a97d7160b757fe6d427ba048c349cb034}{process}} (const \doxymbox{\hyperlink{classgko_1_1array}{array}}$<$ index\+\_\+type $>$ \&mtx\+\_\+row\+\_\+ptrs, \doxymbox{\hyperlink{classgko_1_1array}{array}}$<$ index\+\_\+type $>$ \texorpdfstring{$\ast$}{*}mtx\+\_\+srow) override
\begin{DoxyCompactList}\small\item\em Computes srow according to row pointers. \end{DoxyCompactList}\item 
int64\+\_\+t \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4c3e6ae322c261f0da10641c58e83398}{clac\+\_\+size}} (const int64\+\_\+t nnz) override
\begin{DoxyCompactList}\small\item\em Computes the srow size according to the number of nonzeros. \end{DoxyCompactList}\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a593dee0b8e70a753670e1d81a05d2307}\label{classgko_1_1matrix_1_1Csr_1_1automatical_a593dee0b8e70a753670e1d81a05d2307} 
index\+\_\+type {\bfseries get\+\_\+max\+\_\+length\+\_\+per\+\_\+row} () const noexcept
\item 
std::\+shared\+\_\+ptr$<$ \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_aae6804f7a0b899f03bc0d5e0f139129c}{strategy\+\_\+type}} $>$ \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a197c022bc128a9c6b55f3d4cf7d293ac}{copy}} () override
\begin{DoxyCompactList}\small\item\em Copy a strategy. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions inherited from \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+strategy\+\_\+type}}}
\begin{DoxyCompactItemize}
\item 
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_aae6804f7a0b899f03bc0d5e0f139129c}{strategy\+\_\+type}} (std::\+string name)
\begin{DoxyCompactList}\small\item\em Creates a \doxylink{classgko_1_1matrix_1_1Csr_1_1strategy__type}{strategy\+\_\+type}. \end{DoxyCompactList}\item 
std::\+string \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_a0c22b251b0c1dfd087a5c097488febe0}{get\+\_\+name}} ()
\begin{DoxyCompactList}\small\item\em Returns the name of strategy. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a909abe5ebd5bb68031b7ab68c2f847d4}\label{classgko_1_1matrix_1_1Csr_1_1automatical_a909abe5ebd5bb68031b7ab68c2f847d4} 
const index\+\_\+type {\bfseries nvidia\+\_\+row\+\_\+len\+\_\+limit} = 1024
\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_ac1f75409470cd36a437d76a2bc4e79fd}\label{classgko_1_1matrix_1_1Csr_1_1automatical_ac1f75409470cd36a437d76a2bc4e79fd} 
const index\+\_\+type {\bfseries nvidia\+\_\+nnz\+\_\+limit} \{static\+\_\+cast$<$index\+\_\+type$>$(1e6)\}
\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a21ff9463860ca7269f16f5cee771d999}\label{classgko_1_1matrix_1_1Csr_1_1automatical_a21ff9463860ca7269f16f5cee771d999} 
const index\+\_\+type {\bfseries amd\+\_\+row\+\_\+len\+\_\+limit} = 768
\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a2cdf9df0edbbaff89c3bb7e5979953c7}\label{classgko_1_1matrix_1_1Csr_1_1automatical_a2cdf9df0edbbaff89c3bb7e5979953c7} 
const index\+\_\+type {\bfseries amd\+\_\+nnz\+\_\+limit} \{static\+\_\+cast$<$index\+\_\+type$>$(1e8)\}
\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a77a27e777233d93cad900f1239e28c2c}\label{classgko_1_1matrix_1_1Csr_1_1automatical_a77a27e777233d93cad900f1239e28c2c} 
const index\+\_\+type {\bfseries intel\+\_\+row\+\_\+len\+\_\+limit} = 25600
\item 
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_ab4a1a6703ba18233753988c993147d67}\label{classgko_1_1matrix_1_1Csr_1_1automatical_ab4a1a6703ba18233753988c993147d67} 
const index\+\_\+type {\bfseries intel\+\_\+nnz\+\_\+limit} \{static\+\_\+cast$<$index\+\_\+type$>$(3e8)\}
\end{DoxyCompactItemize}


\label{doc-constructors}
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_doc-constructors}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!automatical@{automatical}}
\index{automatical@{automatical}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{automatical()}{automatical()}\hspace{0.1cm}{\footnotesize\ttfamily [1/5]}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+automatical (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Creates an automatical strategy. 

\begin{DoxyWarning}{Warning}
this is deprecated! Please rely on the new automatic strategy instantiation or use one of the other constructors. 
\end{DoxyWarning}


References \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}{automatical()}}, and \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_a5261906eecda7da087638981d011a9b2}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+create()}}.



Referenced by \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}{automatical()}}, \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a5e3cff9dc55b22b01ddf3db31731b267}{automatical()}}, \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a97deccea06b6b863118fee067662ae4e}{automatical()}}, and \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a9ec5b221681ed8e5f33fd77c9b781690}{automatical()}}.

\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a5e3cff9dc55b22b01ddf3db31731b267}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!automatical@{automatical}}
\index{automatical@{automatical}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{automatical()}{automatical()}\hspace{0.1cm}{\footnotesize\ttfamily [2/5]}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a5e3cff9dc55b22b01ddf3db31731b267} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+automatical (\begin{DoxyParamCaption}\item[{std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1CudaExecutor}{Cuda\+Executor}} $>$}]{exec}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Creates an automatical strategy with CUDA executor. 


\begin{DoxyParams}{Parameters}
{\em exec} & the CUDA executor \\
\hline
\end{DoxyParams}


References \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}{automatical()}}.

\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a9ec5b221681ed8e5f33fd77c9b781690}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!automatical@{automatical}}
\index{automatical@{automatical}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{automatical()}{automatical()}\hspace{0.1cm}{\footnotesize\ttfamily [3/5]}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a9ec5b221681ed8e5f33fd77c9b781690} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+automatical (\begin{DoxyParamCaption}\item[{std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1HipExecutor}{Hip\+Executor}} $>$}]{exec}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Creates an automatical strategy with HIP executor. 


\begin{DoxyParams}{Parameters}
{\em exec} & the HIP executor \\
\hline
\end{DoxyParams}


References \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}{automatical()}}.

\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a97deccea06b6b863118fee067662ae4e}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!automatical@{automatical}}
\index{automatical@{automatical}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{automatical()}{automatical()}\hspace{0.1cm}{\footnotesize\ttfamily [4/5]}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a97deccea06b6b863118fee067662ae4e} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+automatical (\begin{DoxyParamCaption}\item[{std::\+shared\+\_\+ptr$<$ const \doxymbox{\hyperlink{classgko_1_1DpcppExecutor}{Dpcpp\+Executor}} $>$}]{exec}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Creates an automatical strategy with Dpcpp executor. 


\begin{DoxyParams}{Parameters}
{\em exec} & the Dpcpp executor\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
TODO:\+ porting -\/ we hardcode the subgroup size is 32 
\end{DoxyNote}


References \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1automatical_a4ba9ec73abf4ac52d00811065d50b6d9}{automatical()}}.

\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a270b30353a7069d11d44bad9f05d0a1d}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!automatical@{automatical}}
\index{automatical@{automatical}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{automatical()}{automatical()}\hspace{0.1cm}{\footnotesize\ttfamily [5/5]}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a270b30353a7069d11d44bad9f05d0a1d} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
\doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+automatical (\begin{DoxyParamCaption}\item[{int64\+\_\+t}]{nwarps}{, }\item[{int}]{warp\+\_\+size}{ = {\ttfamily 32}, }\item[{bool}]{cuda\+\_\+strategy}{ = {\ttfamily true}, }\item[{std::\+string}]{strategy\+\_\+name}{ = {\ttfamily "{}none"{}}}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Creates an automatical strategy with specified parameters. 


\begin{DoxyParams}{Parameters}
{\em nwarps} & the number of warps in the executor \\
\hline
{\em warp\+\_\+size} & the warp size of the executor \\
\hline
{\em cuda\+\_\+strategy} & whether the {\ttfamily cuda\+\_\+strategy} needs to be used.\\
\hline
\end{DoxyParams}
\begin{DoxyNote}{Note}
The warp\+\_\+size must be the size of full warp. When using this constructor, set\+\_\+strategy needs to be called with correct parameters which is replaced during the conversion. 
\end{DoxyNote}


References \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_aae6804f7a0b899f03bc0d5e0f139129c}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+strategy\+\_\+type::\+strategy\+\_\+type()}}.



\label{doc-func-members}
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_doc-func-members}
\doxysubsection{Member Function Documentation}
\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a4c3e6ae322c261f0da10641c58e83398}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!clac\_size@{clac\_size}}
\index{clac\_size@{clac\_size}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{clac\_size()}{clac\_size()}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a4c3e6ae322c261f0da10641c58e83398} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
int64\+\_\+t \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+clac\+\_\+size (\begin{DoxyParamCaption}\item[{const int64\+\_\+t}]{nnz}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Computes the srow size according to the number of nonzeros. 


\begin{DoxyParams}{Parameters}
{\em nnz} & the number of nonzeros\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
the size of srow 
\end{DoxyReturn}


Implements \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_a07a6dda9dd04ed8abd914f3a69f330f2}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+strategy\+\_\+type}}.

\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a197c022bc128a9c6b55f3d4cf7d293ac}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!copy@{copy}}
\index{copy@{copy}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{copy()}{copy()}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a197c022bc128a9c6b55f3d4cf7d293ac} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
std::\+shared\+\_\+ptr$<$ \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_aae6804f7a0b899f03bc0d5e0f139129c}{strategy\+\_\+type}} $>$ \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+copy (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Copy a strategy. 

This is a workaround until strategies are revamped, since strategies like {\ttfamily \doxylink{classgko_1_1matrix_1_1Csr_1_1automatical}{automatical}} do not work when actually shared. 

Implements \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_a7d1561856f7ae17ca5e39076cb6c4207}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+strategy\+\_\+type}}.

\Hypertarget{classgko_1_1matrix_1_1Csr_1_1automatical_a97d7160b757fe6d427ba048c349cb034}\index{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}!process@{process}}
\index{process@{process}!gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical@{gko::matrix::Csr$<$ ValueType, IndexType $>$::automatical}}
\doxysubsubsection{\texorpdfstring{process()}{process()}}
{\footnotesize\ttfamily \label{classgko_1_1matrix_1_1Csr_1_1automatical_a97d7160b757fe6d427ba048c349cb034} 
template$<$typename Value\+Type = default\+\_\+precision, typename Index\+Type = int32$>$ \\
void \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr}{gko::\+matrix::\+\+Csr}}$<$ Value\+Type, Index\+Type $>$::\+automatical::\+process (\begin{DoxyParamCaption}\item[{const \doxymbox{\hyperlink{classgko_1_1array}{array}}$<$ index\+\_\+type $>$ \&}]{mtx\+\_\+row\+\_\+ptrs}{, }\item[{\doxymbox{\hyperlink{classgko_1_1array}{array}}$<$ index\+\_\+type $>$ \texorpdfstring{$\ast$}{*}}]{mtx\+\_\+srow}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Computes srow according to row pointers. 


\begin{DoxyParams}{Parameters}
{\em mtx\+\_\+row\+\_\+ptrs} & the row pointers of the matrix \\
\hline
{\em mtx\+\_\+srow} & the srow of the matrix \\
\hline
\end{DoxyParams}


Implements \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_a99ea39b16f0c281fdaf8c559f670c10b}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+strategy\+\_\+type}}.



References \doxymbox{\hyperlink{classgko_1_1array_a699ce7bef6d2838c8acd10d04f775e2a}{gko::\+array$<$ Value\+Type $>$::\+get\+\_\+const\+\_\+data()}}, \doxymbox{\hyperlink{classgko_1_1array_a169a0f4e9fc1aa81b8e7fef15de57af7}{gko::\+array$<$ Value\+Type $>$::\+get\+\_\+executor()}}, \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1strategy__type_a0c22b251b0c1dfd087a5c097488febe0}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+strategy\+\_\+type::\+get\+\_\+name()}}, \doxymbox{\hyperlink{classgko_1_1array_ad38e4c252d698a4581ffa0833ab98c3f}{gko::\+array$<$ Value\+Type $>$::\+get\+\_\+size()}}, \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1classical_a2740db9fa954cb7f8f4145a1f87f82a6}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+classical::\+process()}}, and \doxymbox{\hyperlink{classgko_1_1matrix_1_1Csr_1_1load__balance_a0849e0d936dda023474673d7316e73d8}{gko::\+matrix::\+\+Csr$<$ Value\+Type, Index\+Type $>$::\+load\+\_\+balance::\+process()}}.



The documentation for this class was generated from the following file:\+\begin{DoxyCompactItemize}
\item 
ginkgo/\+core/\+matrix/\+csr.\+hpp\end{DoxyCompactItemize}
