<?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 Re: VSL_CC_ERROR_DECIMATION in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859561#M7352</link>
    <description>Dear Vladimir,&lt;BR /&gt;&lt;BR /&gt;Thank you for your help, I solved my problem. The error arised from a bad setting of the dimension of the result array. I only would like that the error name would be a bit more meaningfull.&lt;BR /&gt;Just for you to know, if I set the the start as you suggested I get again the same error, than I think that in that case the size should be carefully altered.&lt;BR /&gt;Thank you again. Regards,&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Corrado&lt;BR /&gt;</description>
    <pubDate>Wed, 30 Sep 2009 09:08:51 GMT</pubDate>
    <dc:creator>Corrado</dc:creator>
    <dc:date>2009-09-30T09:08:51Z</dc:date>
    <item>
      <title>VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859557#M7348</link>
      <description>Hi,&lt;BR /&gt;&lt;BR /&gt;I'm having some troubles using VSL to compute a simple 2D convolution.&lt;BR /&gt;&lt;BR /&gt;
&lt;PRE&gt;[cpp]int err;&lt;BR /&gt;float *img, *krn, *ris;&lt;BR /&gt;VSLConvTaskPtr task;&lt;BR /&gt;&lt;BR /&gt;int img_size[2], krn_size[2], ris_size[2];&lt;BR /&gt;int img_strd[2], krn_strd[2], ris_strd[2];&lt;BR /&gt;&lt;BR /&gt;//Initializing dimensions and strides&lt;BR /&gt;//...&lt;BR /&gt;&lt;BR /&gt;img = (float*) malloc(img_size[0]*img_size[1]*sizeof(float));&lt;BR /&gt;krn = (float*) malloc(krn_size[0]*krn_size[1]*sizeof(float));&lt;BR /&gt;&lt;BR /&gt;ris_size[0] = img_size[0] + krn_size[0] - 1;&lt;BR /&gt;ris_size[1] = img_size[1] + krn_size[1] - 1;&lt;BR /&gt;ris = (float*) malloc(ris_size[0]*ris_size[1]*sizeof(float));&lt;BR /&gt;&lt;BR /&gt;//Initializing images&lt;BR /&gt;//...&lt;BR /&gt;&lt;BR /&gt;err = vslsConvNewTask(&amp;amp;task, VSL_CONV_MODE_AUTO, 2, img_size, krn_size, ris_size);&lt;BR /&gt;printf("CREATE ERROR = %dn", err);&lt;BR /&gt;err = vslsConvExec(task, img, img_strd, krn, krn_strd, ris, ris_strd);&lt;BR /&gt;printf("EXECUTION ERROR = %dn", err);&lt;BR /&gt;[/cpp]&lt;/PRE&gt;
&lt;BR /&gt;&lt;BR /&gt;This snippet of code prints:&lt;BR /&gt;
&lt;PRE&gt;[plain]CREATE ERROR = 0&lt;BR /&gt;EXECUTION ERROR = -2303[/plain]&lt;/PRE&gt;
The last is the code of the VSL_CC_ERROR_DECIMATION but i didn't use any decimation! Even if I force decimation to be {1,1} I get the same error. What can I do?&lt;BR /&gt;&lt;BR /&gt;Thanks in andvance for your attention,&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Corrado</description>
      <pubDate>Tue, 29 Sep 2009 10:42:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859557#M7348</guid>
      <dc:creator>Corrado</dc:creator>
      <dc:date>2009-09-29T10:42:38Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859558#M7349</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Hello Corrado,&lt;BR /&gt;&lt;BR /&gt;It looks like you are not calling the vslConvSetStart routine to indicate which part of the result you are interested in.&lt;BR /&gt;I believe adding:&lt;BR /&gt;&lt;EM&gt;&lt;EM&gt;
&lt;/EM&gt;&lt;/EM&gt;&lt;PRE&gt;&lt;EM&gt;&lt;EM&gt;[cpp]int ris_start[2];&lt;BR /&gt;&lt;BR /&gt;//...&lt;BR /&gt;&lt;BR /&gt;ris_start[0] = krn_size[0] - 1;&lt;BR /&gt;ris_start[1] = krn_size[1] - 1;&lt;BR /&gt;&lt;BR /&gt;//...&lt;BR /&gt;err = vslConvSetStart( task, ris_start );&lt;BR /&gt;&lt;BR /&gt;[/cpp]&lt;/EM&gt;&lt;/EM&gt;&lt;/PRE&gt;
will solve your issue.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir&lt;BR /&gt;</description>
      <pubDate>Tue, 29 Sep 2009 11:35:11 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859558#M7349</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2009-09-29T11:35:11Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859559#M7350</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/93654"&gt;Vladimir Petrov (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; Hello Corrado,&lt;BR /&gt;&lt;BR /&gt;It looks like you are not calling the vslConvSetStart routine to indicate which part of the result you are interested in.&lt;BR /&gt;I believe adding:&lt;BR /&gt;&lt;EM&gt;&lt;EM&gt;
&lt;/EM&gt;&lt;/EM&gt;&lt;/EM&gt;&lt;PRE&gt;&lt;EM&gt;&lt;EM&gt;&lt;EM&gt;[cpp]int ris_start[2];&lt;BR /&gt;&lt;BR /&gt;//...&lt;BR /&gt;&lt;BR /&gt;ris_start[0] = krn_size[0] - 1;&lt;BR /&gt;ris_start[1] = krn_size[1] - 1;&lt;BR /&gt;&lt;BR /&gt;//...&lt;BR /&gt;err = vslConvSetStart( task, ris_start );&lt;BR /&gt;&lt;BR /&gt;[/cpp]&lt;/EM&gt;&lt;/EM&gt;&lt;/EM&gt;&lt;/PRE&gt;
will solve your issue.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir&lt;BR /&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Thank you for your reply, but even if vslConvSetStart doesn't return any error I actually get the same decimation related error when I execute the vslConvExec. Any other idea?&lt;BR /&gt;</description>
      <pubDate>Tue, 29 Sep 2009 14:33:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859559#M7350</guid>
      <dc:creator>Corrado</dc:creator>
      <dc:date>2009-09-29T14:33:03Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859560#M7351</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/445223"&gt;iosonocorrado&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;&lt;/DIV&gt;
&lt;BR /&gt;Thank you for your reply, but even if vslConvSetStart doesn't return any error I actually get the same decimation related error when I execute the vslConvExec. Any other idea?&lt;BR /&gt;&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
Another idea is to check if the strides are either NULL pointers or are correctly set.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir&lt;BR /&gt;</description>
      <pubDate>Wed, 30 Sep 2009 04:46:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859560#M7351</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2009-09-30T04:46:29Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859561#M7352</link>
      <description>Dear Vladimir,&lt;BR /&gt;&lt;BR /&gt;Thank you for your help, I solved my problem. The error arised from a bad setting of the dimension of the result array. I only would like that the error name would be a bit more meaningfull.&lt;BR /&gt;Just for you to know, if I set the the start as you suggested I get again the same error, than I think that in that case the size should be carefully altered.&lt;BR /&gt;Thank you again. Regards,&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Corrado&lt;BR /&gt;</description>
      <pubDate>Wed, 30 Sep 2009 09:08:51 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859561#M7352</guid>
      <dc:creator>Corrado</dc:creator>
      <dc:date>2009-09-30T09:08:51Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859562#M7353</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Corrado,&lt;BR /&gt;&lt;BR /&gt;It's great that you solved the problem. Jyst a few comments/questions to clarify the situation:&lt;BR /&gt;0. Your original code failed on my machine with -2323 if *_strd were not set&lt;BR /&gt; 1. Your original code works fine on my machine if I replace *_strd with 0's (defaulting to unit strides). No problem with dimension of the result&lt;BR /&gt;2. My recomendation to set start was not correct since your original code computed all points of the convolution (img_size[0]+krn_size[0]-1)*(img_size[1]+krn_size[1]-1)&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir</description>
      <pubDate>Thu, 01 Oct 2009 04:54:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859562#M7353</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2009-10-01T04:54:20Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859563#M7354</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/93654"&gt;Vladimir Petrov (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; Corrado,&lt;BR /&gt;&lt;BR /&gt;It's great that you solved the problem. Jyst a few comments/questions to clarify the situation:&lt;BR /&gt;0. Your original code failed on my machine with -2323 if *_strd were not set&lt;BR /&gt; 1. Your original code works fine on my machine if I replace *_strd with 0's (defaulting to unit strides). No problem with dimension of the result&lt;BR /&gt;2. My recomendation to set start was not correct since your original code computed all points of the convolution (img_size[0]+krn_size[0]-1)*(img_size[1]+krn_size[1]-1)&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir&lt;/EM&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;0. Does not setting *_strd mean passing to VSL uninitialized arrays of strides?&lt;BR /&gt;1. Does passing 0 as stride default to unitary stride in number of elements or in number of columns/rows?&lt;BR /&gt;2. Now that you I think about it I actually don't need to compute the whole convolution, so I could set the start and resize the output. Thank you ;-).&lt;BR /&gt;&lt;BR /&gt;Thank you for all your attention.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Corrado&lt;BR /&gt;</description>
      <pubDate>Thu, 01 Oct 2009 14:15:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859563#M7354</guid>
      <dc:creator>Corrado</dc:creator>
      <dc:date>2009-10-01T14:15:36Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859564#M7355</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Dear Corrado,&lt;BR /&gt;&lt;BR /&gt;&lt;EM&gt;0. Does not setting *_strd mean passing to VSL uninitialized arrays of strides?&lt;BR /&gt;&lt;/EM&gt;Exactly&lt;BR /&gt;&lt;EM&gt;&lt;BR /&gt;1. Does passing 0 as stride default to unitary stride in number of elements or in number of columns/rows?&lt;BR /&gt;&lt;/EM&gt;I'm not sure I understand the question. Passing NULL pointer should have the same effect as passing an array of 1's.&lt;BR /&gt;&lt;EM&gt;&lt;/EM&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir&lt;BR /&gt;</description>
      <pubDate>Thu, 01 Oct 2009 17:22:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859564#M7355</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2009-10-01T17:22:47Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859565#M7356</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
&lt;BR /&gt;Dear Vladimir,&lt;BR /&gt;&lt;BR /&gt;I think it's simpler if I'll explain my doubt with an example. If I had an image NxM stored by rows I'd set the corrisponding stride to {1, N}. If the default (which at this point I no more know if is selected by a NULL pointer or an array of ones) is setting it to {1,1} I can only see bad things coming from it, am I wrong?&lt;BR /&gt;Moreover I read in the documentation that is an error passing 0 as stride, so I must think that the default is obtained by passing a NULL pointer, but I can't find documentation about it.&lt;BR /&gt;&lt;BR /&gt;Thanks for attention. Regards&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Corrado&lt;BR /&gt;</description>
      <pubDate>Fri, 02 Oct 2009 07:53:14 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859565#M7356</guid>
      <dc:creator>Corrado</dc:creator>
      <dc:date>2009-10-02T07:53:14Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859566#M7357</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Dear Corrado,&lt;BR /&gt;&lt;BR /&gt;I think I understand your concern now. Please note that strides in MKL's convolution do not correspond to the dimensions of the array. The strides set to {1,1} simply mean  that all elements of the array are to be used in computation. Setting to {1,2} means that each second element along the second dimension is used in computation. Setting strides to {1,N} (as you suggest) would result in a 1D convolution along the first dimension. Please note that the size of the result has to be in synch with the strides.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;-Vladimir&lt;BR /&gt;</description>
      <pubDate>Fri, 02 Oct 2009 11:24:53 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859566#M7357</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2009-10-02T11:24:53Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859567#M7358</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Dear Vladimir,&lt;BR /&gt;&lt;BR /&gt;The Data Allocation subsection of the VSL section of the MKL Reference Manual I read speaks about strides. I confess that the examples at the end were quite hard to understand for me, but the theorical section seemed to me (perhaps wrongly) straightforward: What I understood is that if A is the linear index of x[i_1, i_2, ..., i_{k-1}, &lt;SPAN style="background-color: #ffff00;"&gt;i_k&lt;/SPAN&gt;, i_{k+1}, ..., i_n] and B is the same for x[i_1, i_2, ..., &lt;SPAN style="background-color: #ffff00;"&gt;i_{k-1}&lt;/SPAN&gt;, i_k + 1, i_{k+1}, ..., i_n] than A-B=stride&lt;K&gt;. Am I wrong? Of course doubling the stride decimates the matrix by a factor 2 in the selected dimension, that is what I think you assert is obtained by setting the stride to 2. So my original question were: what is the "measure unit" of the stride? Linear indices, as I thought, or multiple of the corresponding dimension length, as it seems to me that you are affirming?&lt;BR /&gt;&lt;BR /&gt;Thank you for your patience. Regards,&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Corrado&lt;BR /&gt;&lt;/K&gt;</description>
      <pubDate>Fri, 02 Oct 2009 13:04:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859567#M7358</guid>
      <dc:creator>Corrado</dc:creator>
      <dc:date>2009-10-02T13:04:32Z</dc:date>
    </item>
    <item>
      <title>Re: VSL_CC_ERROR_DECIMATION</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859568#M7359</link>
      <description>&lt;DIV style="margin:0px;"&gt;&lt;/DIV&gt;
Dear Corrado,&lt;BR /&gt;&lt;BR /&gt;The stride in dimension k is measured in number of elements along this dimension k, which corresponds to linear affsets as follows:&lt;BR /&gt;linear_offsets[0] = 1*strides[0]&lt;BR /&gt;linear_offsets[1]= dims[0]*strides[1]&lt;BR /&gt;linear_offsets[2]= dims[0]*dims[1]*strides[2]&lt;BR /&gt;etc.&lt;BR /&gt; &lt;BR /&gt;I hope that helps,&lt;BR /&gt;-Vladimir&lt;BR /&gt;</description>
      <pubDate>Tue, 13 Oct 2009 07:31:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/VSL-CC-ERROR-DECIMATION/m-p/859568#M7359</guid>
      <dc:creator>Vladimir_Petrov__Int</dc:creator>
      <dc:date>2009-10-13T07:31:23Z</dc:date>
    </item>
  </channel>
</rss>

