Click here to Skip to main content
15,879,326 members
Articles / High Performance Computing / Vectorization
Article

Installing the Intel® Distribution for Python and Intel® Performance Libraries with pip and PyPI

22 Oct 2018CPOL 6.6K   6  
Installing the Intel® Distribution for Python and Intel® Performance Libraries with pip and PyPI

This article is in the Product Showcase section for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers.

The Intel® Distribution for Python* provides accelerated performance to some of the most popular packages in the Python ecosystem, and now select packages have the added the option of installing from the Python Package Index (PyPI) using pip. The packages require the use of pip version 9.0.1, and are available utilizing the following instructions:

Performance Packages

The two most popular packages in numerical and scientific work (numpy and scipy) are available with the following commands below. For more information on the nature of their accelerations and performance benchmarks, please visit the link here.

Also, Intel-optimized-scikit-learn, pydaal(Intel® DAAL in Python) and tbb4py(Intel® TBB for Python) are also available on PyPI now.

Package Name pip command Platform Availability
numpy pip install intel-numpy Linux, Win, macOS(10.12)
scipy pip install intel-scipy
scikit-learn pip install intel-scikit-learn
pydaal pip install pydaal
tbb4py pip install tbb4py

Optimized Python packages such as intel-scikit-learn, intel-scipy and pydaal utilize intel-numpy.

Based on PyPI's dependency resolution on Intel variants, If one installs intel-numpy, one would also get mkl_fft and mkl_random (with NumPy). Similarly, if one installs intel-scipy, one would also get intel-numpy along with SciPy. And, if one installs intel-scikit-learn, one would also get intel-numpy,intel-scipy along with Scikit-Learn.

Note: If standard NumPy, SciPy and Scikit-Learn packages are already installed, the packages must be uninstalled before installing the Intel® variants of these packages(intel-numpy etc) to avoid any conflicts. As mentioned earlier, pydaal uses intel-numpy, hence it is important to first remove the standard Numpy library(if installed) and then install pydaal.

To uninstall existing packages, run the command:

pip uninstall numpy scipy scikit-learn -y

Specialized NumPy packages

Several specialized Intel packages act as a complement to numpy and scipy, which provide accelerated Fast Fourier Transforms and improved Random functionality through the MKL when paired with numpy and scipy.

Package Name pip command Platform Availability
mkl_fft pip install mkl_fft Linux, Win, macOS(10.12)
mkl_random pip install mkl_random

Note: In order to utilize these packages, the standard NumPy installation must be removed first using the command: pip uninstall numpy -y

Intel® Runtime Packages

The runtime packages are built runtime distributable libraries that allow for dispatch of vectorization on Intel hardware. For Python packages that depend on these runtimes, they can be individually downloaded as well. For more information, please visit the link here.

Package Name pip command Platform Availability
mkl pip install mkl Linux, Win, macOS(10.12)
ipp pip install ipp
daal pip install daal
intel-openmp pip install intel-openmp
tbb pip install tbb
impi pip install impi Linux, Win

Development only packages

For those building their own Python packages with Intel® Parallel Studio XE or building and linking with the Intel® Performance Libraries, the devel packages assist in providing the development runtimes pre-built for testing, and are available with the following commands:

Package Name pip command Platform Availability
mkl-devel pip install mkl-devel Linux, Win, macOS(10.12)
ipp-devel pip install ipp-devel
daal-devel pip install daal-devel

Troubleshooting

While `pip install`-ing any package, if installation fails with the following error message :

zlib.error: Error -5 while decompressing data: incomplete or truncated stream

retry after running the following command: rm -rf ~/.cache/pip

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
United States United States
You may know us for our processors. But we do so much more. Intel invents at the boundaries of technology to make amazing experiences possible for business and society, and for every person on Earth.

Harnessing the capability of the cloud, the ubiquity of the Internet of Things, the latest advances in memory and programmable solutions, and the promise of always-on 5G connectivity, Intel is disrupting industries and solving global challenges. Leading on policy, diversity, inclusion, education and sustainability, we create value for our stockholders, customers and society.
This is a Organisation

42 members

Comments and Discussions

 
-- There are no messages in this forum --