<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic how to convert coo format to csr ? in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874659#M8795</link>
    <description>Hi all:&lt;BR /&gt;&lt;BR /&gt;It's driving me crazy even after reading the examples and docs&lt;BR /&gt;&lt;BR /&gt;here's the code:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;#include &lt;STDIO.H&gt;&lt;BR /&gt;&lt;BR /&gt;#include "mkl_spblas.h"&lt;BR /&gt;&lt;BR /&gt;#include "mkl_types.h"&lt;BR /&gt;&lt;BR /&gt;int main()&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;//*******************************************************************************&lt;BR /&gt;&lt;BR /&gt;// Definition arrays for sparse matrix formats&lt;BR /&gt;&lt;BR /&gt;//*******************************************************************************&lt;BR /&gt;&lt;BR /&gt;#define M 4&lt;BR /&gt;&lt;BR /&gt;#define N 4&lt;BR /&gt;&lt;BR /&gt;#define LDA 4&lt;BR /&gt;&lt;BR /&gt;#define NZMAX 8&lt;BR /&gt;&lt;BR /&gt;#define NNZ 8&lt;BR /&gt;&lt;BR /&gt;#define MBLK 2&lt;BR /&gt;&lt;BR /&gt;#define NN 2&lt;BR /&gt;&lt;BR /&gt;#define INFO 0&lt;BR /&gt;&lt;BR /&gt;#define MN 16&lt;BR /&gt;&lt;BR /&gt;#define IBASE1 1&lt;BR /&gt;&lt;BR /&gt;#define IBASE2 1&lt;BR /&gt;&lt;BR /&gt;#define LOCAT 2&lt;BR /&gt;&lt;BR /&gt;#define IDIAG 3&lt;BR /&gt;&lt;BR /&gt;#define NDIAG 4&lt;BR /&gt;&lt;BR /&gt;#define INDIA 12&lt;BR /&gt;&lt;BR /&gt;MKL_INT n=N, nzmax=NZMAX, nnz = NNZ, info=INFO;&lt;BR /&gt;&lt;BR /&gt;MKL_INT ibase1 = IBASE1,ibase2 = IBASE2, locat = LOCAT;&lt;BR /&gt;&lt;BR /&gt;double Acsr[NZMAX];&lt;BR /&gt;&lt;BR /&gt; double		Acoo[NZMAX]=  {5.0, 8.0, 9.0, 2.0, 3.0, 6.0, 1.0, 4.0};&lt;BR /&gt;&lt;BR /&gt; MKL_INT		AI[M+1];&lt;BR /&gt;&lt;BR /&gt; MKL_INT		AJ[NZMAX] = {1, 2, 1, 2, 3, 4, 3, 4};&lt;BR /&gt;&lt;BR /&gt;MKL_INT ir[NZMAX];&lt;BR /&gt;&lt;BR /&gt;MKL_INT jc[NZMAX];&lt;BR /&gt;&lt;BR /&gt;MKL_INT job[8];&lt;BR /&gt;&lt;BR /&gt;locat=2;&lt;BR /&gt;&lt;BR /&gt;ibase1=1;&lt;BR /&gt;&lt;BR /&gt;ibase2=1;&lt;BR /&gt;&lt;BR /&gt;job[1]=ibase1;&lt;BR /&gt;&lt;BR /&gt;job[2]=ibase2;&lt;BR /&gt;&lt;BR /&gt;job[3]=locat;&lt;BR /&gt;&lt;BR /&gt;job[4]=nzmax;&lt;BR /&gt;&lt;BR /&gt;job[0]=1;&lt;BR /&gt;&lt;BR /&gt;job[5]=1;&lt;BR /&gt;&lt;BR /&gt;mkl_dcsrcoo (job,&amp;amp;n, Acsr, AJ,AI,&amp;amp;nnz,Acoo, ir,jc,&amp;amp;info);&lt;BR /&gt;&lt;BR /&gt;for(int i = 0; i&amp;lt; M+1;i++ )&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;printf("AI %d = %d\n",i,AI&lt;I&gt;);&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;for(int i = 0; i&amp;lt; 8;i++ )&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;printf("Job %d = %d\n",i,job&lt;I&gt;);&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;/I&gt;&lt;/I&gt;&lt;/STDIO.H&gt;</description>
    <pubDate>Tue, 23 Jun 2009 12:11:17 GMT</pubDate>
    <dc:creator>liunsteingmail_com</dc:creator>
    <dc:date>2009-06-23T12:11:17Z</dc:date>
    <item>
      <title>how to convert coo format to csr ?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874659#M8795</link>
      <description>Hi all:&lt;BR /&gt;&lt;BR /&gt;It's driving me crazy even after reading the examples and docs&lt;BR /&gt;&lt;BR /&gt;here's the code:&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;#include &lt;STDIO.H&gt;&lt;BR /&gt;&lt;BR /&gt;#include "mkl_spblas.h"&lt;BR /&gt;&lt;BR /&gt;#include "mkl_types.h"&lt;BR /&gt;&lt;BR /&gt;int main()&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;//*******************************************************************************&lt;BR /&gt;&lt;BR /&gt;// Definition arrays for sparse matrix formats&lt;BR /&gt;&lt;BR /&gt;//*******************************************************************************&lt;BR /&gt;&lt;BR /&gt;#define M 4&lt;BR /&gt;&lt;BR /&gt;#define N 4&lt;BR /&gt;&lt;BR /&gt;#define LDA 4&lt;BR /&gt;&lt;BR /&gt;#define NZMAX 8&lt;BR /&gt;&lt;BR /&gt;#define NNZ 8&lt;BR /&gt;&lt;BR /&gt;#define MBLK 2&lt;BR /&gt;&lt;BR /&gt;#define NN 2&lt;BR /&gt;&lt;BR /&gt;#define INFO 0&lt;BR /&gt;&lt;BR /&gt;#define MN 16&lt;BR /&gt;&lt;BR /&gt;#define IBASE1 1&lt;BR /&gt;&lt;BR /&gt;#define IBASE2 1&lt;BR /&gt;&lt;BR /&gt;#define LOCAT 2&lt;BR /&gt;&lt;BR /&gt;#define IDIAG 3&lt;BR /&gt;&lt;BR /&gt;#define NDIAG 4&lt;BR /&gt;&lt;BR /&gt;#define INDIA 12&lt;BR /&gt;&lt;BR /&gt;MKL_INT n=N, nzmax=NZMAX, nnz = NNZ, info=INFO;&lt;BR /&gt;&lt;BR /&gt;MKL_INT ibase1 = IBASE1,ibase2 = IBASE2, locat = LOCAT;&lt;BR /&gt;&lt;BR /&gt;double Acsr[NZMAX];&lt;BR /&gt;&lt;BR /&gt; double		Acoo[NZMAX]=  {5.0, 8.0, 9.0, 2.0, 3.0, 6.0, 1.0, 4.0};&lt;BR /&gt;&lt;BR /&gt; MKL_INT		AI[M+1];&lt;BR /&gt;&lt;BR /&gt; MKL_INT		AJ[NZMAX] = {1, 2, 1, 2, 3, 4, 3, 4};&lt;BR /&gt;&lt;BR /&gt;MKL_INT ir[NZMAX];&lt;BR /&gt;&lt;BR /&gt;MKL_INT jc[NZMAX];&lt;BR /&gt;&lt;BR /&gt;MKL_INT job[8];&lt;BR /&gt;&lt;BR /&gt;locat=2;&lt;BR /&gt;&lt;BR /&gt;ibase1=1;&lt;BR /&gt;&lt;BR /&gt;ibase2=1;&lt;BR /&gt;&lt;BR /&gt;job[1]=ibase1;&lt;BR /&gt;&lt;BR /&gt;job[2]=ibase2;&lt;BR /&gt;&lt;BR /&gt;job[3]=locat;&lt;BR /&gt;&lt;BR /&gt;job[4]=nzmax;&lt;BR /&gt;&lt;BR /&gt;job[0]=1;&lt;BR /&gt;&lt;BR /&gt;job[5]=1;&lt;BR /&gt;&lt;BR /&gt;mkl_dcsrcoo (job,&amp;amp;n, Acsr, AJ,AI,&amp;amp;nnz,Acoo, ir,jc,&amp;amp;info);&lt;BR /&gt;&lt;BR /&gt;for(int i = 0; i&amp;lt; M+1;i++ )&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;printf("AI %d = %d\n",i,AI&lt;I&gt;);&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;for(int i = 0; i&amp;lt; 8;i++ )&lt;BR /&gt;&lt;BR /&gt;{&lt;BR /&gt;&lt;BR /&gt;printf("Job %d = %d\n",i,job&lt;I&gt;);&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;/I&gt;&lt;/I&gt;&lt;/STDIO.H&gt;</description>
      <pubDate>Tue, 23 Jun 2009 12:11:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874659#M8795</guid>
      <dc:creator>liunsteingmail_com</dc:creator>
      <dc:date>2009-06-23T12:11:17Z</dc:date>
    </item>
    <item>
      <title>Re: how to convert coo format to csr ?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874660#M8796</link>
      <description>&lt;DIV style="margin:0px;"&gt;it's not clear - what is the problem?&lt;/DIV&gt;
&lt;BR /&gt;</description>
      <pubDate>Tue, 23 Jun 2009 12:43:19 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874660#M8796</guid>
      <dc:creator>Gennady_F_Intel</dc:creator>
      <dc:date>2009-06-23T12:43:19Z</dc:date>
    </item>
    <item>
      <title>Re: how to convert coo format to csr ?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874661#M8797</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/334681"&gt;Gennady Fedorov (Intel)&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;
&lt;DIV style="margin:0px;"&gt;it's not clear - what is the problem?&lt;/DIV&gt;
&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
sorry about that&lt;BR /&gt;let me repeat&lt;BR /&gt;&lt;BR /&gt;I have a matrix A in coo one-base format. and i would like to convert it to csr one-based "3 array-variation" by using mkl_dcsrcoo&lt;BR /&gt;&lt;BR /&gt;here is the code, could you please point out where the problem is ? since i dont get any result&lt;BR /&gt;&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; int nb_values_A = 13;&lt;BR /&gt; int nb_lines_A = 5;&lt;BR /&gt; int nb_columns_A = 5;&lt;BR /&gt;&lt;BR /&gt; double *values_coo_A;&lt;BR /&gt; values_coo_A = new double[nb_values_A];&lt;BR /&gt;&lt;BR /&gt; MKL_INT	 *columns_coo_A;&lt;BR /&gt; columns_coo_A = new MKL_INT[nb_values_A];&lt;BR /&gt; &lt;BR /&gt; MKL_INT	 *rows_coo_A;&lt;BR /&gt; rows_coo_A = new MKL_INT[nb_values_A];&lt;BR /&gt;&lt;BR /&gt; values_coo_A[0] = 1.0;&lt;BR /&gt; values_coo_A[1] = -1.0;&lt;BR /&gt; values_coo_A[2] = -3.0;&lt;BR /&gt; values_coo_A[3] = -2.0;&lt;BR /&gt; values_coo_A[4] = 5.0;&lt;BR /&gt; values_coo_A[5] = 4.0;&lt;BR /&gt; values_coo_A[6] = 6.0;&lt;BR /&gt; values_coo_A[7] = 4.0;&lt;BR /&gt; values_coo_A[8] = -4.0;&lt;BR /&gt; values_coo_A[9] = 2.0;&lt;BR /&gt; values_coo_A[10] = 7.0;&lt;BR /&gt; values_coo_A[11] = 8.0;&lt;BR /&gt; values_coo_A[12] = -5.0;&lt;BR /&gt;&lt;BR /&gt; columns_coo_A[0] = 1;&lt;BR /&gt; columns_coo_A[1] = 2;&lt;BR /&gt; columns_coo_A[2] = 4;&lt;BR /&gt; columns_coo_A[3] = 1;&lt;BR /&gt; columns_coo_A[4] = 2;&lt;BR /&gt; columns_coo_A[5] = 3;&lt;BR /&gt; columns_coo_A[6] = 4;&lt;BR /&gt; columns_coo_A[7] = 5;&lt;BR /&gt; columns_coo_A[8] = 1;&lt;BR /&gt; columns_coo_A[9] = 3;&lt;BR /&gt; columns_coo_A[10] = 4;&lt;BR /&gt; columns_coo_A[11] = 2;&lt;BR /&gt; columns_coo_A[12] = 5;&lt;BR /&gt;&lt;BR /&gt; rows_coo_A[0] = 1;&lt;BR /&gt; rows_coo_A[1] = 1;&lt;BR /&gt; rows_coo_A[2] = 1;&lt;BR /&gt; rows_coo_A[3] = 2;&lt;BR /&gt; rows_coo_A[4] = 2;&lt;BR /&gt; rows_coo_A[5] = 3;&lt;BR /&gt; rows_coo_A[6] = 3;&lt;BR /&gt; rows_coo_A[7] = 3;&lt;BR /&gt; rows_coo_A[8] = 4;&lt;BR /&gt; rows_coo_A[9] = 4;&lt;BR /&gt; rows_coo_A[10] = 4;&lt;BR /&gt; rows_coo_A[11] = 5;&lt;BR /&gt; rows_coo_A[12] = 5;&lt;BR /&gt; &lt;BR /&gt; MKL_INT job[8];&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt; job[0] = 1; // the matrix in the coordinate format is converted to the CSR format.&lt;BR /&gt; job[1] = 1; // one-based indexing for the matrix in CSR format is used.&lt;BR /&gt; job[2] = 1; // one-based indexing for the matrix in coordinate format is used.&lt;BR /&gt; job[5] = 1; // only array ia is filled in for the output storage.&lt;BR /&gt; &lt;BR /&gt;&lt;BR /&gt; double *values_csr_A;&lt;BR /&gt; MKL_INT	 *columns_csr_A;&lt;BR /&gt;&lt;BR /&gt; MKL_INT	 *rowIndex_csr_A;&lt;BR /&gt; rowIndex_csr_A  = new MKL_INT[nb_lines_A+1];&lt;BR /&gt;&lt;BR /&gt; MKL_INT	nnz_coo;&lt;BR /&gt; MKL_INT info_coo;&lt;BR /&gt; &lt;BR /&gt; &lt;BR /&gt; // Convert COO format to CSR format&lt;BR /&gt; mkl_dcsrcoo (job,&amp;amp;nb_columns_A, values_csr_A,columns_csr_A,rowIndex_csr_A,&amp;amp;nnz_coo,values_coo_A,rows_coo_A,columns_coo_A,&amp;amp;info_coo);&lt;BR /&gt; &lt;BR /&gt; int nb_values_csr_A = rowIndex_csr_A[nb_lines_A] -1;&lt;BR /&gt; &lt;BR /&gt; values_csr_A = new double[nb_values_csr_A];&lt;BR /&gt; columns_csr_A = new MKL_INT[nb_values_csr_A];&lt;BR /&gt;&lt;BR /&gt; job[5]=2;// only array ia is filled in for the output storage.&lt;BR /&gt; &lt;BR /&gt; mkl_dcsrcoo (job,&amp;amp;nb_columns_A, values_csr_A,columns_csr_A,rowIndex_csr_A,&amp;amp;nnz_coo,values_coo_A,rows_coo_A,columns_coo_A,&amp;amp;info_coo);&lt;BR /&gt; &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 23 Jun 2009 13:21:01 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874661#M8797</guid>
      <dc:creator>liunsteingmail_com</dc:creator>
      <dc:date>2009-06-23T13:21:01Z</dc:date>
    </item>
    <item>
      <title>Re: how to convert coo format to csr ?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874662#M8798</link>
      <description>especially where in the documents can we find about the size of job? in the example i find it is of size 8&lt;BR /&gt;and where in the documents ca we find about job(4), job(7), job(8)?&lt;BR /&gt;and also dimention of the matrix A "m" . what is it ?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Tue, 23 Jun 2009 13:29:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874662#M8798</guid>
      <dc:creator>liunsteingmail_com</dc:creator>
      <dc:date>2009-06-23T13:29:15Z</dc:date>
    </item>
    <item>
      <title>Re: how to convert coo format to csr ?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874663#M8799</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="width: 100%; margin-top: 5px;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/430573"&gt;liunsteingmail.com&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt; especially where in the documents can we find about the size of job? in the example i find it is of size 8&lt;BR /&gt;and where in the documents ca we find about job(4), job(7), job(8)?&lt;BR /&gt;and also dimention of the matrix A "m" . what is it ?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
i managed to make it work now&lt;BR /&gt;sorry about the fuss i made&lt;BR /&gt;&lt;BR /&gt;#include &lt;STDIO.H&gt;&lt;BR /&gt;#include "mkl_spblas.h"&lt;BR /&gt;#include "mkl_types.h"&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;#define NZMAX  8&lt;BR /&gt;#define INFO   0&lt;BR /&gt;#define NNZ    8&lt;BR /&gt;#define N      4&lt;BR /&gt;#define M      4&lt;BR /&gt;double	Acoo[NZMAX] =  {5.0, 8.0, 9.0, 2.0, 3.0, 6.0, 1.0, 4.0};&lt;BR /&gt;MKL_INT	AJ[NZMAX] ;&lt;BR /&gt;MKL_INT		AI[M+1];&lt;BR /&gt;MKL_INT		ir[NZMAX] =  {1, 1, 2, 2, 3, 3, 4, 4};;&lt;BR /&gt;MKL_INT		jc[NZMAX] =  {1, 2, 1, 2, 3, 4, 3, 4};&lt;BR /&gt;//double		Acsr[NZMAX] = {5.0, 8.0, 9.0, 2.0, 3.0, 6.0, 1.0, 4.0};&lt;BR /&gt;double		Acsr[NZMAX] ;&lt;BR /&gt;MKL_INT		n=N, info=INFO, nnz = NNZ;&lt;BR /&gt;&lt;BR /&gt;int main()&lt;BR /&gt;{&lt;BR /&gt; MKL_INT job[8];&lt;BR /&gt;&lt;BR /&gt; job[1] = 1;&lt;BR /&gt; job[2] = 1;&lt;BR /&gt; //job[3] = 1; // why ?&lt;BR /&gt; job[4] = NZMAX;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt; job[0]=1;&lt;BR /&gt; job[5]=1;&lt;BR /&gt; mkl_dcsrcoo (job,&amp;amp;n, Acsr, AJ,AI,&amp;amp;nnz,Acoo, ir,jc,&amp;amp;info);&lt;BR /&gt; for(int i=0; i&amp;lt; 8; i++)&lt;BR /&gt; {&lt;BR /&gt; printf("AI%d = %dn",i,AI&lt;I&gt;);&lt;BR /&gt; }&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;/I&gt;&lt;/STDIO.H&gt;</description>
      <pubDate>Tue, 23 Jun 2009 13:57:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/how-to-convert-coo-format-to-csr/m-p/874663#M8799</guid>
      <dc:creator>liunsteingmail_com</dc:creator>
      <dc:date>2009-06-23T13:57:58Z</dc:date>
    </item>
  </channel>
</rss>

