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

IPP or MKL for Lease-Squares Proceesing?

simbalee
Beginner
362 Views
I am going to write a program that deals matrixes by using Least-Squares method.
Size of matrix is around 100x12 to 1000x12. And the matrixes may be iterativly operated some 10,000 times for one task.
The problem is that I do not know if I should use small-matrix operation routines of IPP or MKL.
According to what I found in this forum, small matrix object of IPP is really small. The size is under 10x10.
On the other hand, I suppose that MKL deals with huge size matrix such as a matrix with millions elements.
Can anyone make a short comment on the choice bwteen IPP or MKL? Thanks.
0 Kudos
4 Replies
elhefe38
Beginner
362 Views
Quoting - simbalee
I am going to write a program that deals matrixes by using Least-Squares method.
Size of matrix is around 100x12 to 1000x12. And the matrixes may be iterativly operated some 10,000 times for one task.
The problem is that I do not know if I should use small-matrix operation routines of IPP or MKL.
According to what I found in this forum, small matrix object of IPP is really small. The size is under 10x10.
On the other hand, I suppose that MKL deals with huge size matrix such as a matrix with millions elements.
Can anyone make a short comment on the choice bwteen IPP or MKL? Thanks.

I have successfully used IPP for least-squares solving for matrices bigger than 10x10 (more like 200x10 or so). The computations do not take too long, I must however admit this operation is not a critical part of our application.
I guess if you really need performance, you may find MKL better than IPP...

regards
0 Kudos
harold_bien
Beginner
362 Views
Quoting - elhefe38

I have successfully used IPP for least-squares solving for matrices bigger than 10x10 (more like 200x10 or so). The computations do not take too long, I must however admit this operation is not a critical part of our application.
I guess if you really need performance, you may find MKL better than IPP...

regards

I'm using IPP for solving least-squares problems (optimization), and have looked at both MKL and IPP. In truth, I found that the MKL routines for least squares solvers were all FORTRAN code, and while you could call them from C/C++ using mixed-language model, it was a bit more arcane than I would have liked.

IPP, on the other hand, being native C, was much easier to implement.

Unfortunately, since I only used IPP, I cannot speak to the performance difference between the two.
0 Kudos
simbalee
Beginner
362 Views
Thankyou elhefe & harold.
Seems to me that IPP deals with really small matrix, hence I am going to try MKL. I will report result here after the work has been done.
0 Kudos
Ying_H_Intel
Employee
362 Views
Quoting - simbalee
Thankyou elhefe & harold.
Seems to me that IPP deals with really small matrix, hence I am going to try MKL. I will report result here after the work has been done.

Hi Simbalee,

Both IPP and MKLprovide least squares processing.For your case, both IPP and MKL should be able to deal with. But IPP is more for small matrix (less than 10) and MKL tend to providemore specficroutinesfor mathematicalapplication. Soif your application is math-type problem, MKL should be more suitable.

There are other overlap between IPP and MKL, likeFFT. The princple for selectIPP and MKL mainlydepends on
1. functionality, 2 problem size.For example, the similar discussion is <http://software.intel.com/en-us/articles/mkl-ipp-choosing-an-fft/>

Regards,
Ying
0 Kudos
Reply