mxnet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Markham <aaron.s.mark...@gmail.com>
Subject Re: Remove MKLML as dependency
Date Thu, 20 Sep 2018 15:25:36 GMT
I find it unintuitive that mxnet-mkl doesn't actually ship with MKL. Why
isn't it called mxnet-mkldnn instead?

Side note, if mkldnn fulfills BLAS requirements, then why can't we strip
out OpenBLAS for the "mxnet-mkl" package? Is there no way to make the
submodules conform to using mkldnn? All in the spirit of simplifying
things...limiting the deps...

On Sep 20, 2018 07:41, "Lv, Tao A" <tao.a.lv@intel.com> wrote:

Hah, seems it's a little confusing here. I think the "Intel MKL" in the
first statement includes both the full MKL and MKLML library. And the
"dynamic library" there obviously means the MKLML which is delivered in
MKL-DNN repo.

MKLML is a subset of full MKL and includes all BLAS functions for both
single precision and double precision. From this point of view, I think it
can be used as a BLAS library, but cannot be used as full MKL.


-tao

-----Original Message-----
From: Chris Olivier [mailto:cjolivier01@gmail.com]
Sent: Thursday, September 20, 2018 9:36 PM
To: dev@mxnet.incubator.apache.org
Subject: Re: Remove MKLML as dependency

thanks for the info. I am still a little confused — your statement said
“MKL” and not “MKLML”, so my question is still the same.  Are GEMMS in
MKLML or just MKL? I know MKLML doesn’t have a blas library like the main
MKL.

On Wed, Sep 19, 2018 at 11:49 PM Lv, Tao A <tao.a.lv@intel.com> wrote:

> Hi Chris, please kindly check the statements here:
> https://github.com/intel/mkl-dnn#installation
>
> " Intel MKL-DNN can take advantage of optimized matrix-matrix
> multiplication (GEMM) function from Intel MKL. The dynamic library
> with this functionality is included in the repository. "
>
> " You can choose to build Intel MKL-DNN without binary dependency. The
> resulting version will be fully functional, however performance of
> certain convolution shapes and sizes and inner product relying on
> SGEMM function may be suboptimal."
>
> -tao
>
> -----Original Message-----
> From: Chris Olivier [mailto:cjolivier01@gmail.com]
> Sent: Thursday, September 20, 2018 11:20 AM
> To: dev@mxnet.incubator.apache.org
> Subject: Re: Remove MKLML as dependency
>
> maybe I missed it, but what does MKLML have that mkldnn doesn’t have
> that makes it necessary?
>
> what’s the motivation for removing it?
>
> On Tue, Sep 18, 2018 at 11:31 PM Lv, Tao A <tao.a.lv@intel.com> wrote:
>
> > If you just want to test the performance, I think you need link MKL
> > for BLAS and MKL-DNN for NN. Also MKL-DNN should link MKL for better
> > performance.
> >
> > Here are some ways for you to install full MKL library if you don't
> > have
> > one:
> > 1. Register and download from intel website:
> > https://software.intel.com/en-us/mkl
> > 2. Apt-get/yum: currently it need configure Intel’s repositories.
> >         a.
> >
> https://software.intel.com/en-us/articles/installing-intel-free-libs-a
> nd-python-yum-repo
> >         b. https://software.intel.com/en-us/articles/
> > thatinstalling-intel-free-libs-and-python-apt-repo
> > <https://software.intel.com/en-us/articles/installing-intel-free-lib
> > s-
> > and-python-apt-repo> 3. pip install mkl / mkl-devel: ‘mkl’ package
> > and-python-apt-repo> has

> > the runtime and ‘mkl-devel’ includes everything with the headers
> >         a.
> > https://software.intel.com/en-us/articles/installing-the-intel-distr
> > ib ution-for-python-and-intel-performance-libraries-with-pip-and

> > 4. conda install: also has mkl and mkl-devel
> >         a. https://anaconda.org/intel/mkl
> >         b. https://anaconda.org/intel/mkl-devel
> >
> > If you want to redistribute MKL with MXNet, you may need take care
> > of the license issue. Currently, MKL is using ISSL (
> > https://software.intel.com/en-us/license/intel-simplified-software-l
> > ic
> > ense
> > ).
> >
> > -----Original Message-----
> > From: Zai, Alexander [mailto:alexzai@amazon.com.INVALID]
> > Sent: Wednesday, September 19, 2018 12:49 PM
> > To: dev@mxnet.incubator.apache.org
> > Subject: Re: Remove MKLML as dependency
> >
> > Will test it out tomorrow.
> >
> > On the side, what is the best way to test MKL build for MXnet. MKL
> > is licensed?
> >
> > Best,
> > Alex
> >
> > On 9/18/18, 7:50 PM, "Lv, Tao A" <tao.a.lv@intel.com> wrote:
> >
> >     Hi Alex,
> >
> >     Thanks for bringing this up.
> >
> >     The original intention of MKLML is to provide a light and
> > easy-to-access library for ML/DL community. It's released with
> > MKL-DNN under Apache-2.0 license.
> >
> >     AFAIK, MKL-DNN still relies on it for better performance. So I'm
> > afraid there will be a performance regression in MKL pip packages if
> > MKLML is simply removed.
> >
> >     Have you ever tried the build without MKLML and how does the
> > performance look like?
> >
> >     -tao
> >
> >     -----Original Message-----
> >     From: Alex Zai [mailto:azai91@gmail.com]
> >     Sent: Wednesday, September 19, 2018 4:49 AM
> >     To: dev@mxnet.incubator.apache.org
> >     Subject: Remove MKLML as dependency
> >
> >     On our build from source page we have a list of blas libraries
> > that are recommended:
> >
> > https://mxnet.incubator.apache.org/install/build_from_source.html
> >
> >     MKL-DNN
> >     MKL
> >     MKLML
> >     Apple Accelerate
> >     OpenBlas
> >
> >     MKLML is a subset of MKL (
> https://github.com/intel/mkl-dnn/issues/102)
> >     and therefore MKLML users can just use MKL instead. Does anyone
> > see an issue with me removing this? It would simplify out doc page
> > and
> build file.
> >
> >     Alex
> >
> >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message