Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

Vector function

Isaac_D_
Beginner
706 Views

I'm working with the Composer XE 2013 software in an algorithm that operates with vectors. After making a convolution between two vectors, I need to get a part of the resulting vector, but with an offset. I mean, like having [3 2 6 1 5] and then get [2 6 1]. As the result of the convolution is 72000 elements long I don't want to use a "for" because it'll decreased the algorithm performance. So, I was looking for a specific function in your documentation but I couldn't. I attach what my problem is. I hope you can help me. Thanks.

0 Kudos
3 Replies
Igor_A_Intel
Employee
706 Views

Hi Isaak,

I don't see any problem here - the easiest way is just to shift your pointer:

Ipp64f pDst[72020];

Ipp64f *pDst1;

...........

pDst1 = pDst + 10;

...........

regards, Igor

0 Kudos
Sergey_K_Intel
Employee
706 Views

Hi Isaac,

What do you mean under "to get a part of resulting vector"? Move it to somewhere else? Start working with it as with a separate object?

Why don't you create a new "double*" pointer variable with correct initial address asignment and use it as new vector reference?

Regards,
Sergey

P.S. Oops, sorry. Igor came first :)

0 Kudos
Isaac_D_
Beginner
706 Views

Hehe don't worry. I did what you two mention and I could continue developing my software. I really appreciate both of you for your help :D

Regards,
Isaac

0 Kudos
Reply