Mailing Lists: Apple Mailing Lists
Image of Mac OS face in stamp
Re: mkl versus ipp
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: mkl versus ipp




thanks for answers


I have another question, the ipp have normally no fortran interface, why ?

are they still callable from fortran using
appropriate calls, like it is normally possible between C and fortran

do people more often buy mkl or ipp or both ?


Regards Pascal



On Dec 21, 2006, at 6:36 PM, Green, Ronald W wrote:

Pascal,

Ipp vs. MKL: Depends on the vector or matrix sizes. MKL is designed
for large vectors/matrices. It ramps up to near peak for dgemm around
128-256 elements ( N=M=K ). So for smaller matrices you will probably
see as good/better/similar performance from IPP. The performance curves
vary by BLAS routine. Generally, though, MKL should have 128 element
vectors/matrices to amortize the startup costs.


Icc vs. ifort: depends on the program. If a C programmer avoids
pointer-based arrays and avoid aliasing, then the performance should be
similar. That is to say, if you program C like a Fortran programmer
then it should be close to as fast as ifort. Generally, though, Fortran
is faster. This can be a rather religious argument: you can program
well in either language, and you can write bad, slow programs in either
language. Fortran compilers generally are able to extract more
performance since aliasing is very limited whereas in C pointers cause
fits for optimizers.


For Core 2 Duo, try these options with both compilers: -O3 -xT - ipo as
a starting point.


Fortran matmul vs MKL. MKL will outperform matmul when matrices have
128 elements for more. Below that, hard to say. I'd be curious to find
out.


For MKL, set env var OMP_NUM_THREADS equal to the number of cores in
your system.  It is internally threaded and will parallelize the
operations.

However, if your code is parallelized you will want to run MKL
single-threaded by setting OMP_NUM_THREADS=1.  you do not want to
oversubscribe your cores.

ron



-----Original Message-----
From: fortran-dev-bounces+ronald.w.green=email@hidden
[mailto:fortran-dev-bounces +ronald.w.green=email@hidden] On
Behalf Of p666
Sent: Wednesday, December 20, 2006 4:58 PM
To: email@hidden
Subject: mkl versus ipp


hello,


does anyone know if the mkl is the same performance as ipp on common functions, for instance matrix related operations ?


also does anyone know if a icc program is the same performance as a ifort program provided they link on the same mkl routines ?

and finally is the matmul fortran routine of ifort slower that the
mkl matrix multiply function ?

in short is intel fortran faster than intel c (on core 2 duo) with
the common mkl/ipp library ?

thanks in advance

pascal
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Fortran-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40inte
l.com


This email sent to email@hidden


_______________________________________________ Do not post admin requests to the list. They will be ignored. Fortran-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
References: 
 >RE: mkl versus ipp (From: "Green, Ronald W" <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2011 Apple Inc. All rights reserved.