Intel’s support of Accelerated Python continues to be the logical choice for any performance-sensitive Python users. The team has added many new features recently including Python 3.6 support, performance enhancements for scikit-learn, FFTs, multiple cores and Single Instructions Multiple Data (SIMD) support for ufuncs, neural network enhancements for pyDAAL, and a high-level Python API for the Intel Data Analytics Acceleration Library.
Accelerated Python? Rave on!
If you haven’t heard me rave about accelerated Python, allow me to recap my thinking. The concept of an “accelerated Python” is relatively new, and it has given Python a serious presence in Big Data and High-Performance Computing (HPC) applications.
Thanks to some Python aficionados at Intel who have utilized the well-known Intel Math Kernel Library (MKL) under the covers, we can all use an accelerated Python that yields big returns for performance without requiring us to change our Python code. This is possible because Python is an abstract programming environment with lots of support code that can be accelerated by simply swapping out slow support for fast support.
You might want to read my previous piece about accelerating Python in “How Does a 20X Speed-Up in Python Grab You?” What has changed since then? Well, the latest release adds scikit-learn optimizations for SVM classification algorithm, a new XGBoost package with a Python interface to the library (Linux only), and support for Python 3.6 and 2.7 (aren’t there enough Pythons?). Best of all, Intel no longer requires a separate download for users of its Parallel Studio tools. (Of course, it’s still available by itself for free if you don’t want all the fancy tools that can help.)
Does faster matter?
The short answer is yes! I’m amazed as I watch so many things convert to Python. One example that I can share is the Intel OpenVINO toolkit . The team inherited a “Model Optimizer” from prior products and reimplemented it in Python. This made it easier for them to provide a consistent design across the supported frameworks, but they also knew that accelerated Python would keep the solution competitive as needed.
Try it out
I’ve included two links for getting the accelerated Python. The first is “only” accelerated Python, which is very cool. But there is also a beta program (free, and very useful) for Intel Parallel Studio. I’d recommend going with the latter and getting all the tools that Intel offers. If you follow this advice and are unhappy in October with your choice, I want to hear from you! But I don’t think you’ll regret my advice to go with the beta. The choice, of course, is yours.
Useful links for more information